{"_id":"@canvest/canvest-ts","_rev":"12-b48a92284ec4cd2027f9586c74409711","name":"@canvest/canvest-ts","dist-tags":{"latest":"1.3.1"},"versions":{"0.0.2":{"name":"@canvest/canvest-ts","version":"0.0.2","keywords":["canvas","unit-test","canvest"],"author":{"name":"TyrealGray"},"license":"AFL-3.0","_id":"@canvest/canvest-ts@0.0.2","maintainers":[{"name":"tyrealgray","email":"tyrealgray@ymail.com"}],"homepage":"https://github.com/TyrealGray/Canvest#readme","bugs":{"url":"https://github.com/TyrealGray/Canvest/issues"},"dist":{"shasum":"d7906046b040b438a4bf6d94c68bc5511872ef76","tarball":"https://registry.npmjs.org/@canvest/canvest-ts/-/canvest-ts-0.0.2.tgz","fileCount":3,"integrity":"sha512-3meQfJWA2i9Snj9uwWNpL2ntGGz2l1h/X6nISPghI6gAlKG2kwYxZCLHKc8F1wpdOasWcjANUbyNdv/hSZw23A==","signatures":[{"sig":"MEUCIQD0se9jynuvtSLp34TEBlcP5BgSD2kXCKT/d8KK+kKPRAIgA8A5Yu8951JBPx4GHpKY4WV/E1heQalR0XVsLJxKbDE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1698,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJewGXuCRA9TVsSAnZWagAATGsP/1uQrlnpCdArA7vZNX5h\n//kFhXwPuMfPIvpQLpqJenzMOMae3nXoiMVUV31iXV4UQ2kKZ6wYNf84Gein\nzCzI+fnXLD7aG9Td7/TEzvDfJeiVpNyAag1AA1h+kQ8il6rNRIeSiuKf8Mz/\nspA6hfOCbyPYeMcQ3mj5KvH6CoELju9nUm3vUxNwoikWDEMvT1cSKGsOKPFo\nyYSGwAvzWY3GDVBT0ajoQuAMFMVqsbzOsDYZRD8p/d0UwUFLB7nfzk6z8xuk\njBYXrOpiC3DyYMpSBzfJcalCM4Y/qPOfHIfHX1c7ZiOzJaLjVCLjsbm0SBWB\nsdhqsrnJ1Etf0oVD1mgKtiPSlLi0kLkfRanWgk8/u+7l1ETOvZrnmYVhu4si\n7tWV0IizBBoSMJdQhMq/ZH8/DAl1MHsyHs6Bh4vmf1XZa8/1K44JfWfoipva\nH/gHI1PO4Kb+rmStR3yRme76KBjZZq53fJLU4wAotXyLCdbRJG8Mo4zgBin6\nRwJkx5mH4/5u/9zTeFCZ7SHLfi2NjCJ7nksni1cITzdbFVVduZOR2r72d/Fl\nV0aLksWOJTXh0aD+zh3Ick7lOMVtCPVEe2j5iTdpMfHJcuQMlMWQbdeJulVw\nmK5BGnJuvO84TROp8oA5sLDJ80h2Jqu+octJSqmGTlKSf4qmdZzK8R5ncVRh\nCWCK\r\n=aqI8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"exit 0","prepublishOnly":"npm run build"},"_npmUser":{"name":"tyrealgray","email":"tyrealgray@ymail.com"},"repository":{"url":"git+https://github.com/TyrealGray/Canvest.git","type":"git"},"_npmVersion":"6.14.4","description":"A unit testing framework for HTML5 canvas","directories":{},"_nodeVersion":"12.16.2","dependencies":{"ts-loader":"^7.0.4","tsconfig-paths-webpack-plugin":"^3.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.9.2"},"peerDependencies":{"typescript":"^3.9.2 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/canvest-ts_0.0.2_1589667309670_0.7899120926593295","host":"s3://npm-registry-packages"},"deprecated":"This package is no longer works"},"1.0.0-alpha.0":{"name":"@canvest/canvest-ts","version":"1.0.0-alpha.0","keywords":["canvas","unit-test","canvest"],"author":{"name":"TyrealGray"},"license":"AFL-3.0","_id":"@canvest/canvest-ts@1.0.0-alpha.0","maintainers":[{"name":"tyrealgray","email":"tyrealgray@ymail.com"}],"homepage":"https://github.com/TyrealGray/Canvest#readme","bugs":{"url":"https://github.com/TyrealGray/Canvest/issues"},"dist":{"shasum":"7b264e5622410beb9960a095f732b3ec1baa473c","tarball":"https://registry.npmjs.org/@canvest/canvest-ts/-/canvest-ts-1.0.0-alpha.0.tgz","fileCount":3,"integrity":"sha512-EPLOK72PEL1jmz0OxziuyIGkf+UoMrBuDtK8j4aIQnoVI+VupWgA6V28YqyBHM8ADxeVhk4v+XCF4ku6jKtUqQ==","signatures":[{"sig":"MEYCIQCVqdVcw/R6rds3YHZUUN/iKwoDmvF0qgSybadZhrJVpQIhAJyiNWeVcANL1s2GqRO6qO3vBjOfxRB92OEd2bOOQ937","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1673,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJewbipCRA9TVsSAnZWagAA2UoP/1kbkiJ2S8/waViGz96Q\n2XDcxFZxOpatTnB9FDR2ioyltynppMkY9vncdpBvnw4VEPU6rwMlj5UhYy7B\nKzKuDX0yZuYPuhQrpkOHz/fx8lAxw5h6sQ0rHUTZsyhAr1JNLwTA5MXo1kMK\nzSlWEjmLOwPqlcn26wLg4dEnxVJ0qq+PX+3RuiuS5khAVqJQpB4X7sBtZYee\nApkCg0HgMr+OaJYNRLWquHkjPO3ZoOgkCt+sNj/791c7f8TLwvwD8R41qWL9\nantT8P95WBHaQoJvAnCqAX0XR8IiiA0jiJyitBgNrpuyvw1BmQ7qEOiQuzkY\nx8sin4ZkJHi+c1qZjglomRv0DqV3/4Jv4H6mDei5XhweWM7j8CgGw1by/BqV\n7koozpKb2iC3IxATLU5+JT4QxOmR/mf6cGpz3uf7WWvndPFXPkp4U7mR8wo7\n9lSVxn82TUoupLKHjoUu/61AXpsXg318QbSKI84GpqmMT9yxq6u1HDBcMw6x\nimEm8vDfcJBGtEsslk35mGC+iheWk7gMyy+ZAkIccFQ7B++sxgEGyU1EcAW8\n+cvwXFN3Z6LGJsh9fZYbxoreItoFjD/Rsx7JJ+9dLsyV4CiZC3iiBV3OnCzO\ny9zsFuZAR4XgnCBoIgK7eJSZyzaqSteCCZ306mj1UOgK4UXUMi2I8H3M74mC\nIV6t\r\n=4VAU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"exit 0","prepublishOnly":"npm run build"},"_npmUser":{"name":"tyrealgray","email":"tyrealgray@ymail.com"},"repository":{"url":"git+https://github.com/TyrealGray/Canvest.git","type":"git"},"_npmVersion":"6.14.4","description":"A unit testing framework for HTML5 canvas","directories":{},"_nodeVersion":"12.16.2","dependencies":{"ts-loader":"^7.0.4","tsconfig-paths-webpack-plugin":"^3.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.9.2"},"peerDependencies":{"typescript":"^3.9.2 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/canvest-ts_1.0.0-alpha.0_1589754025496_0.18030521382746012","host":"s3://npm-registry-packages"},"deprecated":"This package is no longer works"},"1.2.0-alpha.0":{"name":"@canvest/canvest-ts","version":"1.2.0-alpha.0","keywords":["canvas","unit-test","canvest"],"author":{"name":"TyrealGray"},"license":"AFL-3.0","_id":"@canvest/canvest-ts@1.2.0-alpha.0","maintainers":[{"name":"tyrealgray","email":"tyrealgray@ymail.com"}],"homepage":"https://github.com/TyrealGray/Canvest#readme","bugs":{"url":"https://github.com/TyrealGray/Canvest/issues"},"dist":{"shasum":"9ec62503bd49730eadc9308903bd5704478bd0ed","tarball":"https://registry.npmjs.org/@canvest/canvest-ts/-/canvest-ts-1.2.0-alpha.0.tgz","fileCount":4,"integrity":"sha512-F5h6pZBlCXlpJoeECufVUQzULZ8CtFaa7zFePMtob57YBWofE63JGghoBHXEmZrUzNpxUT/ZoJnoppi8YErIwQ==","signatures":[{"sig":"MEQCIDNwLSFCM5Em6xzcicugmBIbvR3ZvgDyN+OU/Biq2d9yAiA/5Vxa733rlyxINtgIJfOhbQOmOw4o4RssN+IdGeXsCw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":18603,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfR/x3CRA9TVsSAnZWagAAgNkQAI22XmoQo753uBw/VMUT\npRwCh2mygJgAvIrjEf2Sa3EViw8EGq7w7LPu1tQtwlWtLMX2mEM4wS70wYyU\nKgn+xwqldmeqOrPiKT9omDpKTex0F120lJn6EsJbe1s/8z7DDwnhQYCtiw+m\n6YUo3m+k8gpfaBG4DKQ5D4219VZRFM7/hfPd1BK1V1gl6zeNm/OpY5xblJ9P\n5wR6xIWaToCT5OEli0IZTmwNVrjeJ1CAlcatjmf84Leolf7YS0BCWwFxbpye\n1P+U6VwYk5jRnO1XoJjAkgUdj0Vr+SDmnbysIigRPHr5fclWDJu2JbK+mYsn\n8phE2NEUBzmjhUnkWr1iACsCjPHRHQxGlAGSM1W6Fa07U/87Mr05lgqd6ZEy\n8oaUZATE9vEosZkkRZTv5U2bUmMdp8Slifi2UFGT4A0WlPCqHfrwXles2u2a\nJEGmDbdcx+SXhUeEdWkMHBxmYnNKsnmy2xHIzDzzWNw8O9s9nJsHh23XZZam\nERMX4z67VdZt1C3QRgq/foUa6/wZJ9utOt1xjNrqHgg3L6jBNyQ5q5SA/1+R\n/GruQIM4O3+lGs25hiRaK+YecVKujeVatSN82rr3U3YzQn+RiYJhtsblRkZK\nyG1LRQMxQsrKV0b0dUHaO2sZnQKJ/UYETqFrvbvTGKYTSNy70JD8bfYfuPvu\nrmAz\r\n=3yCE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"exit 0","prepublishOnly":"npm run build"},"_npmUser":{"name":"tyrealgray","email":"tyrealgray@ymail.com"},"repository":{"url":"git+https://github.com/TyrealGray/Canvest.git","type":"git"},"_npmVersion":"6.13.2","description":"A unit testing framework for HTML5 canvas","directories":{},"_nodeVersion":"12.14.0","dependencies":{"ts-loader":"^7.0.4","tsconfig-paths-webpack-plugin":"^3.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.9.2"},"peerDependencies":{"typescript":"^3.9.2 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/canvest-ts_1.2.0-alpha.0_1598553207348_0.12997533824888197","host":"s3://npm-registry-packages"},"deprecated":"This package is no longer works"},"1.2.0":{"name":"@canvest/canvest-ts","version":"1.2.0","keywords":["canvas","unit-test","canvest"],"author":{"name":"TyrealGray"},"license":"AFL-3.0","_id":"@canvest/canvest-ts@1.2.0","maintainers":[{"name":"tyrealgray","email":"tyrealgray@ymail.com"}],"homepage":"https://github.com/TyrealGray/Canvest#readme","bugs":{"url":"https://github.com/TyrealGray/Canvest/issues"},"dist":{"shasum":"cda413c9e42b7f0ed0006049aafd83bc646f7641","tarball":"https://registry.npmjs.org/@canvest/canvest-ts/-/canvest-ts-1.2.0.tgz","fileCount":4,"integrity":"sha512-VTkJRRV5AU9Pjxxdre4fYFrmHssfYFg3e+dGcY4st54+0BAMzhK5Z17U765Wq1o+5sgUfC2tq7WkiDzsnc39xw==","signatures":[{"sig":"MEUCIQDmpnWuunqLUpzPTkQwZ5ux/jNnhlyyDMQF8sGoBEQv4AIgBN3iCc6uAr2aPlR/0V/FYrbINSZ4WE4pTUWsIe3vBL0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":18760,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfSAn7CRA9TVsSAnZWagAAGj8QAJe7AlksX0X2puJqiHFE\n+1whVX/OZqk3c/kPQypt5LvnafNMiiBsjXvSX2T/QWT3bc1sdQkHBBrL9kMQ\nXuz1Ewb4XgOXlukPC2PttXHd27QU5B7H2x1ZY1lxa8rigYmwSwtO7OdAzpHC\ny8j50dYnweKss4rbF0Ez7agAgmzizUfN2pACgcQpszMO1Dzrsf7L+AkHps0z\ncQnBU1Pasuvmivnm2dHyXylqxNOygcwOxJLz3hRcCrWS77kwS+ApbbQZreYf\nZ9A5/1juC1+fXu/VcQQZtxPXT1wYUH+hj5ifsErqpGknJEDwmOCBuC9xm0sr\nLxfxCme51/6gBeQXTBpO26hUavBkjWw2KfZLZeHF4/z60V3b4ddrKu4tKcZz\nZ46ykRPvG7GaZQ02NHXjcp9hfzfwalk+ZVFDOX8mRNmpmF0XTut3nTEdjNsr\nmwYtfW7BbK+qw0I82rbksmLsDFPPjpTBumwWp0/T5q1JU5Ra2k95cwTU/xHd\nHUSzSxf7NlYR8FgkiPOpSdY0C/WjLQu9bHXF6XNAF3szcOF9gpTWhEHXkcXz\n5s9YgrvlMgOzrMQ5KYIPOA8eZo3j9/5w0Xwz7CkkdXQ3KBzNi+N//e9mW6Vd\nzPPozC7YujbG2hmnjDzA3KmwgQf85TnsDvGwj3R9r03xBwSiOCdu+wS77lRj\nRY3m\r\n=l3aL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"exit 0","prepublishOnly":"npm run build"},"_npmUser":{"name":"tyrealgray","email":"tyrealgray@ymail.com"},"repository":{"url":"git+https://github.com/TyrealGray/Canvest.git","type":"git"},"_npmVersion":"6.13.2","description":"A unit testing framework for HTML5 canvas","directories":{},"_nodeVersion":"12.14.0","dependencies":{"ts-loader":"^7.0.4","tsconfig-paths-webpack-plugin":"^3.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.9.2"},"peerDependencies":{"typescript":"^3.9.2 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/canvest-ts_1.2.0_1598556667114_0.7906383862013786","host":"s3://npm-registry-packages"},"deprecated":"This package is no longer works"},"1.2.1":{"name":"@canvest/canvest-ts","version":"1.2.1","keywords":["canvas","unit-test","canvest"],"author":{"name":"TyrealGray"},"license":"AFL-3.0","_id":"@canvest/canvest-ts@1.2.1","maintainers":[{"name":"tyrealgray","email":"tyrealgray@ymail.com"}],"homepage":"https://github.com/TyrealGray/Canvest#readme","bugs":{"url":"https://github.com/TyrealGray/Canvest/issues"},"dist":{"shasum":"16608a2da76361554c347a4b09b30eaceba13724","tarball":"https://registry.npmjs.org/@canvest/canvest-ts/-/canvest-ts-1.2.1.tgz","fileCount":4,"integrity":"sha512-C2lM36lyjQ/LoauCTJ5iw44W5Om/CBvfKhIwgj/5FlYEVeptgg3DtccoDLuyodwDFjTla9oUEsSOPZMlfO1kfg==","signatures":[{"sig":"MEYCIQDHYDVZ2uOO132zeW32VhUgafdeIGFQIBM+gMzErgaCcAIhANV9/TIURNLHStWs6MoEd/9sdjBZ2GitMP6sSXnDRuya","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":18760,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfSPDVCRA9TVsSAnZWagAAMNYP+gI1jRIzIDqd3b0SpTfX\nrKjKDGx/3WXKm3b93YC/pOf9VJjBR774yxwedEB/SMcZt6NyppuUV/55cHcK\n4m4hTqc+8aMCfY+lwbCkbCf2M6QDt3HWjxDxaZoCUbvqTefhYxyJq4l9b8D3\nUWjPf32ea/jJoYfZVzle3inPuFiBaABq31nxy/deU3lm8n5EstUNzM+Cq/Pk\n2pikprHGfB9r0uxcKw6DEzeIKwlaLZeQU3eIDxEcuushRjgIjCIZdEZwLLvS\nHNl0Mlfatdt8Z48gwvCXMcjzO9p3Hc/cL+gxu+F+67mj7uqGg68jy+DNkCrr\nPq4pkyYsL/ddpR/o9X1wOo7X6rxQf736zoHhHD54cIwRS7rafMchV1qa2Ret\nrgKPd3BxE2LWNt+HgfyhS9v4V7IaO4cJGU2qOvJZyOBvFAUjlmY6k4FLGu+R\n93YJG25ZIdjnC9b2MuDXiqZz8Qq1TOJcVFcqr3vY7P14Gb6p1ZkL/8sO8TxL\nwkgNtfiFYqsgYPqKF9redHft25im9JcEJlKyKes8zCSaNhNiYLBnwkU9/JKf\nn4QgyX7+lZxTF9uDb3jo5AXgaMHFn1mEYL2Bxh0a8JuMVF3O9tWqwKm69o6+\n5S6+f9BOGQopLUZ9cLRm33EimxDW8LHlTA5CrQYCGeegstF62ZlPV8QHdz7t\nr9By\r\n=iFhK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"exit 0","prepublishOnly":"npm run build"},"_npmUser":{"name":"tyrealgray","email":"tyrealgray@ymail.com"},"repository":{"url":"git+https://github.com/TyrealGray/Canvest.git","type":"git"},"_npmVersion":"6.13.2","description":"A unit testing framework for HTML5 canvas","directories":{},"_nodeVersion":"12.14.0","dependencies":{"ts-loader":"^7.0.4","tsconfig-paths-webpack-plugin":"^3.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.9.2"},"peerDependencies":{"typescript":"^3.9.2 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/canvest-ts_1.2.1_1598615764490_0.605893183774624","host":"s3://npm-registry-packages"},"deprecated":"This package is no longer works"},"1.2.2":{"name":"@canvest/canvest-ts","version":"1.2.2","keywords":["canvas","unit-test","canvest"],"author":{"name":"TyrealGray"},"license":"AFL-3.0","_id":"@canvest/canvest-ts@1.2.2","maintainers":[{"name":"tyrealgray","email":"tyrealgray@ymail.com"}],"homepage":"https://github.com/TyrealGray/Canvest#readme","bugs":{"url":"https://github.com/TyrealGray/Canvest/issues"},"dist":{"shasum":"d6cf0d6153ff99a6ecc96ddd1574056a4c569667","tarball":"https://registry.npmjs.org/@canvest/canvest-ts/-/canvest-ts-1.2.2.tgz","fileCount":4,"integrity":"sha512-tXpMLLRd+pr2woFCa9hz3SyaoG7ZKMkDCOmhIZCgV0zRd9K1QqcGpy1fBAeZFQGBZAMKNUCJue4wEb6PUHOuSw==","signatures":[{"sig":"MEUCIQCGiemLRGRna9Eb4+w2jd3QD++2QP+lb2UZI3HH4/KuzwIgG5EmnPuQYVDjVGnLYqih2m85vXcQK1S9hZhDh/LL23s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":18773,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgQVCKCRA9TVsSAnZWagAATwEP/i0w3f2CPjnxvdgmUH4B\ndkm1cgNPEvLySx/kHkGpsFYR2NP8VkMn5K6gjg7caPQKfBkuLG5888AGDTuD\nyy1vW0vNO+bj3WbGNURkWb2pHkXKrnVohQ0lB2NHudbblyk47JKdMhgVntvS\ns5U9Ud+/PGgiKRhcmkYqP5ZFLaPnGBylNLUhqhq2LjdVpwAdnEFEME6quLAB\nrK1KtakHMgs6eqFxV8CKq87A5rrmFvs+YYS1hc7squrD2X/+Hu+0nxINYXPf\nYZ8eqK6zFfFVyNK3Fl+OJL1rUIdvabVl7weWmfX/biPfBv+iXvRimIWsGbJi\nTh9+vH1uYUkZIpwv0J8t/27CTOHNX/4fYmWnoqGl+MRtByyhoKzSygkn/RXL\nC9j65AxJz/VWxouP+vJcMCD3WmsrIvpvCZex+FCEg9Ma6LEs222EJOB2COet\njEUuriYU0rZ/8IwoknCCWMYmJI4RTPD4m/wMy4hcbEP4f3ERhWLZQ691M927\n3vlAnXbKYMlL50x2CwiXzAJPuVTloIgMIVcUhFP+JpPezWldRhF5C3N1pvGz\nvrn7OUqgNcxQ4XHQZGptGJKpeKRAj8owLP5dhqsSXotcsnCnTd3mTQhqedpS\nQr16KhPGPgV6+0wBF4g+MpehZ9RhV+2P4YSzY4o+/tgNK+iIDK/8xfVXsgf6\n5IG3\r\n=tHTz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"exit 0","prepublishOnly":"npm run build"},"_npmUser":{"name":"tyrealgray","email":"tyrealgray@ymail.com"},"repository":{"url":"git+https://github.com/TyrealGray/Canvest.git","type":"git"},"_npmVersion":"6.13.2","description":"A unit testing framework for HTML5 canvas","directories":{},"_nodeVersion":"12.14.0","dependencies":{"ts-loader":"^7.0.4","tsconfig-paths-webpack-plugin":"^3.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.9.2"},"peerDependencies":{"typescript":"^3.9.2 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/canvest-ts_1.2.2_1614893194510_0.0655683588598932","host":"s3://npm-registry-packages"},"deprecated":"This package is no longer works"},"1.2.3":{"name":"@canvest/canvest-ts","version":"1.2.3","keywords":["canvas","unit-test","canvest"],"author":{"name":"TyrealGray"},"license":"AFL-3.0","_id":"@canvest/canvest-ts@1.2.3","maintainers":[{"name":"tyrealgray","email":"tyrealgray@ymail.com"}],"homepage":"https://github.com/TyrealGray/Canvest#readme","bugs":{"url":"https://github.com/TyrealGray/Canvest/issues"},"dist":{"shasum":"daf2078caeb02ef3e82f24ee48d7f0438b8a379e","tarball":"https://registry.npmjs.org/@canvest/canvest-ts/-/canvest-ts-1.2.3.tgz","fileCount":4,"integrity":"sha512-u0fK2HL/KNfL98bhaCI0lNaeNPQsfLDrlh8Ah1dSMNR8U7LAWtQGbIR3/DaWzb1g6lHVLldtUk54MVK4G7APvg==","signatures":[{"sig":"MEUCIQCFIi47sd9oasLdvYlmQo4rc2jwQqugSwvLMUNFgh/XkgIgS8NkIngu61Js+N/7fAmSO5N//pAFomAGtJ8faRR6Nkk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":18773,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgQVUXCRA9TVsSAnZWagAAtVAP/0bV9ORsRzBTTK9iEDNU\nmMRbX7APjHUEhijFffCVLuQLl7HByJhfE/zfbLA59xxJ65tx675dvbGgtwTt\nx+qj2UNIcudA2Td8HKJIvg4Z6eqi6v448IXmCjNGO0yARZ6hhkS9TL5eutg7\nwqnoZfaeQQ11j7PSZTmq7gohziEUh2XQEZqpUxo4L1qgS7MSzIWGQtSp4QOh\nsCpuVbwNu/WqFtIZGRznp9Bb9crbG0gCUetyr0jtelGC8lHUBgv4lvGOcnw2\n75+8iQt6GVhgpQkx0Bcv9SXPSHI1rKwOJvEcilorq/EQmPELswNf8j3qcRW6\nCQlmfrJjs/3PaCb4eY5pJUBNicWDH49W1tBy8twQ35Yoheoct6/GBbpc+JC9\nYvPe2gIZSNAIzkJXUiQHk6dMXHyYBKOz+Nu+l9Xln3ZCBC+j+DT0AhOZo2jG\n2+aXrWrNdVvF8Qcwkf9MfVVsWcRZ0RYcxaywrqpP0cxKATkE6PklYN3sJHF1\ni7lOpyFSgkG3D3riOSWk8Tz6xNB7DtdueEnqvY3I8apxVuuuPSrFU0OMjuFd\nU6QWfe+RIWmjfXQs08oHojIhCOAdCaw5r7MpBxZh/zVDF6xXodm6JLG+JQdp\nWqxL8CEm2E3+ShVd0UI3qXtzrtT+DHepp/jUUB9bVNzWmoRE2w/sYFMzlvbk\nor9d\r\n=X4ft\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"exit 0","prepublishOnly":"npm run build"},"_npmUser":{"name":"tyrealgray","email":"tyrealgray@ymail.com"},"repository":{"url":"git+https://github.com/TyrealGray/Canvest.git","type":"git"},"_npmVersion":"6.13.2","description":"A unit testing framework for HTML5 canvas","directories":{},"_nodeVersion":"12.14.0","dependencies":{"ts-loader":"^7.0.4","tsconfig-paths-webpack-plugin":"^3.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.9.2"},"peerDependencies":{"typescript":"^3.9.2 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/canvest-ts_1.2.3_1614894358935_0.3938474737837063","host":"s3://npm-registry-packages"},"deprecated":"This package is no longer works"},"1.2.4":{"name":"@canvest/canvest-ts","version":"1.2.4","keywords":["canvas","unit-test","canvest"],"author":{"name":"TyrealGray"},"license":"AFL-3.0","_id":"@canvest/canvest-ts@1.2.4","maintainers":[{"name":"tyrealgray","email":"tyrealgray@ymail.com"}],"homepage":"https://github.com/TyrealGray/Canvest#readme","bugs":{"url":"https://github.com/TyrealGray/Canvest/issues"},"dist":{"shasum":"a4164455b6de9149b7a9e30308bd164d60cce9e1","tarball":"https://registry.npmjs.org/@canvest/canvest-ts/-/canvest-ts-1.2.4.tgz","fileCount":4,"integrity":"sha512-paGmKYGK1e9iYHsDVBQqCqK7qXG+ILYkSApBsb4Y1AaF/TZQSi826fQdI5hwYCSqsopC+uDKpyaVp+Mva5y8Dw==","signatures":[{"sig":"MEUCIH8/VgUnDnnfVw5ikDYaBCbLQTguB2MaBoYO3vi/cnQhAiEA9OwWMflVPg8RhWfcz7Di/Kbyw2ua/32lK/5KOYCF7fk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":18773,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgQWByCRA9TVsSAnZWagAAG3sP/0iXp1bdDa80wYe1/MeM\n04Kh3QMaKFBKGrOWeiSMSJnQHkbEcqQ/vUYkMuZ1PG3xWNKCmMvXliEPK3+t\n3QMCgTniOCPv63p8Uf4GD+YGH3pOkEf0AxB4E0x2wn1wW4BsO9MSD+3KYWoZ\nc9whl1HRVAmC9vldZRQ6yJ1cRrbD1N7SGjD+gm+Emf6Qs5EDAtLNSfgU4oFX\nBxIy8sUta1fM1JBJBhSrxm8jlgRjTzSodYZwFPptIrOLR4ce9W6qIfRkqMD9\nFtmIemeXuu84hWFltQDnSeBnxmJ8ZGJRWHI7r/oppjoReNrtVGaavu+E1Csm\nE7Tl4T0tak9NVih3ZNgPJMhTL1ALZYdJQ2Rbxw69mPricIXHiEeaiilnaI2L\ndbaP4e5OGGGALOUE2RDu7gSEYEYeWIbaxP/6K521aFLbQKB4Z00A25KwTDqe\nzMVrhUMTgcmPohkQpLBGedXzBNMEtvC2HXp/7LbY5jd+kEN2dA1cYxu0Z+6D\ngWWG16oA9I8U64HIs7txHQ4U2z+NeU6pimNHlOvZ1pa3I7FFCp+zlHL1B1Jy\nV1OwHncY3lPbW8ecCwVxKeJudyW1iaevuELh2b/g4cCZzKU4uBMCZG3Mxp3f\nUzcO8zGdHV2FH93OoL4clW6EAAJlw/hQ1/3vUkv/D5EQUsWmCFpH+5xxj3gR\nwRYm\r\n=TByo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"exit 0","prepublishOnly":"npm run build"},"_npmUser":{"name":"tyrealgray","email":"tyrealgray@ymail.com"},"repository":{"url":"git+https://github.com/TyrealGray/Canvest.git","type":"git"},"_npmVersion":"6.13.2","description":"A unit testing framework for HTML5 canvas","directories":{},"_nodeVersion":"12.14.0","dependencies":{"ts-loader":"^7.0.4","tsconfig-paths-webpack-plugin":"^3.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.9.2"},"peerDependencies":{"typescript":"^3.9.2 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/canvest-ts_1.2.4_1614897266322_0.9629713722281064","host":"s3://npm-registry-packages"},"deprecated":"This package is no longer works"},"1.3.0":{"name":"@canvest/canvest-ts","version":"1.3.0","keywords":["canvas","unit-test","canvest"],"author":{"name":"TyrealGray"},"license":"AFL-3.0","_id":"@canvest/canvest-ts@1.3.0","maintainers":[{"name":"tyrealgray","email":"ityrealgray@gmail.com"}],"homepage":"https://github.com/TyrealGray/Canvest#readme","bugs":{"url":"https://github.com/TyrealGray/Canvest/issues"},"dist":{"shasum":"18663ab7b0941bc39e5087ebc8904ca9c6febd75","tarball":"https://registry.npmjs.org/@canvest/canvest-ts/-/canvest-ts-1.3.0.tgz","fileCount":4,"integrity":"sha512-3BjMRQVNTQoG/NHFiQhQO6utO4zyUTjPelk8rWgQu+0Bgygfg08hIfkzWgh+rFjQMzf3H3ITvY3u33UfdnxJAQ==","signatures":[{"sig":"MEUCIQCNXnso4SL+dyzsgcCp543G5IN4+dBxBYF6qO14yspp9gIgMb8P/G/LBOzDjts/qcAhJdiG0SJwDZEimk5YlPV6vcw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18824},"main":"index.js","gitHead":"0198aeb4125b371a81ed746b9d8a25aaa233da48","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"exit 0","prepublishOnly":"npm run build"},"_npmUser":{"name":"tyrealgray","email":"ityrealgray@gmail.com"},"repository":{"url":"git+https://github.com/TyrealGray/Canvest.git","type":"git"},"_npmVersion":"9.8.1","description":"A unit testing framework for HTML5 canvas","directories":{},"_nodeVersion":"18.18.0","dependencies":{"ts-loader":"^7.0.4","tsconfig-paths-webpack-plugin":"^3.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.9.2"},"peerDependencies":{"typescript":"^3.9.2 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/canvest-ts_1.3.0_1764355693167_0.9790064385328292","host":"s3://npm-registry-packages-npm-production"},"deprecated":"This package is no longer works"},"1.3.1":{"name":"@canvest/canvest-ts","version":"1.3.1","keywords":["canvas","unit-test","canvest"],"author":{"name":"TyrealGray"},"license":"AFL-3.0","_id":"@canvest/canvest-ts@1.3.1","maintainers":[{"name":"tyrealgray","email":"ityrealgray@gmail.com"}],"homepage":"https://github.com/TyrealGray/Canvest#readme","bugs":{"url":"https://github.com/TyrealGray/Canvest/issues"},"dist":{"shasum":"8b94e4ba82da9142040de81cf99342b5572c1cd3","tarball":"https://registry.npmjs.org/@canvest/canvest-ts/-/canvest-ts-1.3.1.tgz","fileCount":4,"integrity":"sha512-b+1jPJorBN+l5nxsloYX5CN8BkT6re4HD/e7tziV2l0yCl2X+LYRDrCOHrJrbo4mCe5zZgpHq3lS9AFDkzpQ0A==","signatures":[{"sig":"MEYCIQCGoZhfFz4LJH6QXf2IyfSS4XQLHWshGK+Hu/HLZ892qgIhAKSH0mKdyEJcvWk0OsXMOkuNDaLUuYEXEbt2sHibqFZn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18824},"main":"index.js","gitHead":"a327bf298563c1ddc4184e87c1d9a8f88a7d036f","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"exit 0","prepublishOnly":"npm run build"},"_npmUser":{"name":"tyrealgray","email":"ityrealgray@gmail.com"},"repository":{"url":"git+https://github.com/TyrealGray/Canvest.git","type":"git"},"_npmVersion":"9.8.1","description":"A unit testing framework for HTML5 canvas","directories":{},"_nodeVersion":"18.18.0","dependencies":{"ts-loader":"^7.0.4","tsconfig-paths-webpack-plugin":"^3.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.9.2"},"peerDependencies":{"typescript":"^3.9.2 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/canvest-ts_1.3.1_1764361252171_0.4597994022054521","host":"s3://npm-registry-packages-npm-production"},"deprecated":"This package is no longer works"}},"time":{"created":"2020-05-16T22:15:09.405Z","modified":"2025-11-29T00:01:11.200Z","0.0.2":"2020-05-16T22:15:09.768Z","1.0.0-alpha.0":"2020-05-17T22:20:25.617Z","1.2.0-alpha.0":"2020-08-27T18:33:27.493Z","1.2.0":"2020-08-27T19:31:07.237Z","1.2.1":"2020-08-28T11:56:04.605Z","1.2.2":"2021-03-04T21:26:34.701Z","1.2.3":"2021-03-04T21:45:59.097Z","1.2.4":"2021-03-04T22:34:26.477Z","1.3.0":"2025-11-28T18:48:13.356Z","1.3.1":"2025-11-28T20:20:52.382Z"},"bugs":{"url":"https://github.com/TyrealGray/Canvest/issues"},"author":{"name":"TyrealGray"},"license":"AFL-3.0","homepage":"https://github.com/TyrealGray/Canvest#readme","keywords":["canvas","unit-test","canvest"],"repository":{"url":"git+https://github.com/TyrealGray/Canvest.git","type":"git"},"description":"A unit testing framework for HTML5 canvas","maintainers":[{"name":"tyrealgray","email":"ityrealgray@gmail.com"}],"readme":"<p align=\"center\"><img height=\"100px\" width=\"100px\" src=\"https://raw.githubusercontent.com/TyrealGray/Canvest/master/canvest.png\"></p>\r\n\r\n# Canvest\r\n\r\nWriting a unit test for your HTML5 Canvas component without mocking any DOM element\r\n\r\nUsing browser to render and execute your component's unit test logic directly, outputting image snapshot to compare in pixel-level\r\n\r\nSupport TypeScript and zero config needed in most cases for JavaScript project, using API like `it` and `describe` with a few unique API for canvas snapshot\r\n\r\n## Install\r\nRun npm cmd to install on your project\r\n```\r\n$ npm i @canvest/canvest-cli --save-dev\r\n```\r\nCreate a script in your package.json\r\n```javascript\r\n \"scripts\": {\r\n    ...\r\n    \"test\": \"canvest\",\r\n    ...\r\n  },\r\n```\r\n\r\n## Usage example\r\nIf you just want to test a canvas, create `helloworld.canvest.js` under `./canvest` folder\r\n```javascript\r\ndescribe('Test my canvas', () => {\r\n\r\n\tit('should render hello world text in canvas', async () => {\r\n\t\tlet canvas = document.createElement('canvas');\r\n\t\tcanvas.width = 800;\r\n\t\tcanvas.height = 600;\r\n\t\tconst a = await snapshot(canvas);\r\n\t\tconst context = canvas.getContext('2d');\r\n\t\tcontext.fillStyle = '#ff0';\r\n\t\tcontext.fillRect(0, 0, 800, 600);\r\n\r\n\t\tconst text = 'Hello, World!';\r\n\r\n\t\tcontext.font = 'bold 70pt Menlo';\r\n\t\tcontext.textAlign = 'center';\r\n\t\tcontext.fillStyle = '#fff';\r\n\t\tcontext.fillText(text, 200, 200);\r\n\r\n\t\tconst b = await snapshot(canvas);\r\n\t\t\r\n\t\ta.notEqual(b);// this should pass\r\n\t\t\r\n\t\tawait autoShot('test', canvas); // this create a snapshot in local that will check canvas image to test if it is still the same\r\n\t});\r\n\t\r\n});\r\n```\r\nOr test the class you create, for example for `pixi.js`\r\n```javascript\r\nexport class MyClass\r\n{\r\n \t...\r\n \tupdateRotation(rotation){\r\n \t\tthis._sprite.rotation = rotation;\r\n \t}\r\n \t...\r\n}\r\n```\r\nCreate `MyClass.canvest.js` under `./canvest` folder\r\n```javascript\r\nimport * as PIXI from 'pixi.js';\r\nimport { MyClass } from './MyClass';\r\n\r\ndescribe('Test my class', () => {\r\n\r\n\tit('should update rotation as expect', async () => {\r\n\r\n\t\tconst app = new PIXI.Application({\r\n\t\t\twidth: XXX, height: YYY,\r\n\t\t\tpreserveDrawingBuffer: true //<--- important for Canvest to take snapshot, false might lead to a blank image\r\n\t\t});\r\n\t\t\r\n\t\tconst myClass = new MyClass();\r\n\t\tapp.stage.addChild(myClass._sprite);\r\n\t\t\r\n\t\tmyClass.updateRotation(1.5);\r\n\t\t\r\n\t\t/** \r\n\t\t * the second time this autoShot function run,\r\n\t\t * it will check the current Canvas's image with the local cached 'rotation_that_expected.png' file,\r\n\t\t * if this one is not the same with the cached image,\r\n\t\t * the test will fail\r\n\t\t **/\r\n\t\tawait autoShot('rotation_that_expected', app.view);\r\n\t\t\r\n\t\tconst rotation15Snapshot = await snapshot(app.view); // 1.5 rotation snapshot\r\n\t\t\r\n\t\tmyClass.updateRotation(1.6); // rotate sprite to 1.6 rotation\r\n\t\t\r\n\t\tconst rotation16Snapshot = await snapshot(app.view);\r\n\t\t\r\n\t\trotation16Snapshot.notEqual(rotation15Snapshot); // should pass\r\n\t\t\r\n\t\t/**\r\n\t\t * if the number of different pixels between rotation16Snapshot and rotation15Snapshot is below 20%,\r\n\t\t * isMatch function will make the test as passed\r\n\t\t **/\r\n\t\trotation16Snapshot.isMatch(rotation15Snapshot, 0.2);\r\n\t\t\r\n\t});\r\n});\r\n```\r\nThen using npm cmd\r\n```\r\n$ npm test\r\n```\r\nOnce you ran `npm test`, Canvest-cli will start running unit test that under `canvest` folder if files name is after `*.canvest.(js|ts)` pattern.\r\nCanvest-cli will start two node servers, to config the port you could change npm script by\r\n```javascript\r\n \"scripts\": {\r\n    ...\r\n    \"test\": \"canvest --cachePort XXX --pagePort XXX\",\r\n    ...\r\n  },\r\n```\r\n- `cachePort`: this is the port that canvest-cli using to start the node server to cache your snapshot, default is `45670`.\r\n- `pagePort`: this is the port that canvest-cli using to start the web page to run your unit test with `Mocha`, running `webapck-dev-server` under the hood.\r\n\r\n## Result\r\nIf some test case failed, you will see diff comparison under bottom showing in highlight red color.\r\n\r\n**One thing should notice is the diff for cached snapshot won't show up if cached snapshot has different size with current one.**\r\n\r\n<img src=\"https://raw.githubusercontent.com/TyrealGray/Canvest/master/showcase.png\">\r\n\r\n## API\r\nCanvest framework is using [`Mocha`](https://mochajs.org/) with [`Chai`](https://www.chaijs.com/) under the hood, every API Mocha had in browser, Canvest should have as well by accessing `mocha` variable but this is not recommended.\r\n\r\nYou could create file `canvest.init.js`(or `canvest.init.ts` when using `--ts`) under `./canvest` folder and doing all the setup in there.\r\n\r\n### **autoShot(name, canvas): Promise\\<void>**\r\ntake a snapshot of current canvas and cached in local, if local snapshot already exists, compare current snapshot with local one automatically\r\n\r\n- `name`: a unique name for snapshot to save under `./canvest/autoShot/(the-name-you-given).png`\r\n- `canvas`: HTML5 canvas dom element\r\n\r\n- **as long as your local snapshot doesn't get removed, `autoShot` will do the comparison instead of caching it and pass test**\r\n\r\n### **snapshot(canvas): Promise\\<snapshot Object>**\r\ntake a snapshot of current canvas\r\n\r\n- `canvas`: HTML5 canvas dom element\r\n- `snapshot Object`: return a Canvest snapshot that has 4 APIs in below\r\n    - `isEqual( otherSnapshot )`: snapshot should completely equal to `otherSnapshot`\r\n    - `notEqual( otherSnapshot )`: snapshot should not equal to `otherSnapshot`\r\n    - `isMatch( otherSnapshot, tolerance )`: snapshot could equal to `otherSnapshot` if test ignores number of tolerance percentage of pixels\r\n    - `notMatch( otherSnapshot, tolerance )`: snapshot could not equal to `otherSnapshot` even after test ignores number of tolerance percentage of pixels\r\n\r\n### **setThreshold(number): void**\r\nset global threshold for snapshot comparision, if you just want one snapshot comparision to be more tolerant, use `isMatch` or `notMatch` function with `tolerance` parameter\r\n\r\n- `number` threshold, a number that can be set to maximum `1.0`. Default is `0.05`, higher number will ignore more differences between snapshot comparision\r\n\r\n## Test Coverage\r\nCanvest will create test coverage after all test is done, you could find the `coverage.json` and/or open `index.html` under `./coverage` folder\r\n\r\n## TypeScript\r\n~~To support TypeScript, you will need run `npm i @canvest/canvest-ts --save-dev` to install `canvest-ts` plugin~~ (might no longer needed to do these steps)\r\n\r\nThen using `canvest --ts `~~./path-to-your-tsconfig.json~~ to start testing\r\n\r\n## Integrate with CI\r\nIf you want to run with headless browser in CI, you could use `--ci` option. This will make Canvest exit when all tests are done, and add a div inside web page `<body>` with className `test_end` or `test_end_with_failed`.\r\n\r\nFor example, `canvest --ci ./canvest` will create a `canvest-test-result` folder under `./canvest` folder, any failed test will create a diff image in result folder.\r\n\r\nIf diff is a cached snapshot and it is not valid because new snapshot size is different, it will still create an empty file `failed-Name.diff.failed`.\r\n\r\n## Link\r\nCanvest example for pixi.js with TypeScript https://github.com/TyrealGray/canvest-pixi.js-example\r\n\r\nCanvest example for three.js https://github.com/TyrealGray/canvest-three.js-example\r\n\r\n## License\r\nAFL-3.0\r\n","readmeFilename":"README.md"}