{"_id":"@codecademy/enzyme-helpers","_rev":"204-66167dabfee0ee43dfacf2200f7716bb","name":"@codecademy/enzyme-helpers","dist-tags":{"prerelease":"1.1.10-alpha.9eb421.61","alpha":"1.1.10-alpha.63","alpha.823f0b":"2.0.0-alpha.823f0b.0","alpha.dac9da":"1.1.10-alpha.dac9da.0","alpha.9a8628":"1.1.10-alpha.9a8628.0","alpha.7e132d":"1.1.10-alpha.7e132d.0","alpha.8a1e1b":"1.1.11-alpha.8a1e1b.0","alpha.40d10f":"1.1.12-alpha.40d10f.0","latest":"2.0.0","alpha.dd419b":"2.0.1-alpha.dd419b.0","alpha.5c81b7":"2.0.1-alpha.5c81b7.0","alpha.6179cf":"2.0.1-alpha.6179cf.0","alpha.4bb80a":"2.0.1-alpha.4bb80a.0","alpha.4a7966":"2.0.1-alpha.4a7966.0","alpha.134d6b":"2.0.1-alpha.134d6b.0","alpha.ac77fe":"2.0.2-alpha.ac77fe.0","alpha.8cf23f":"2.0.2-alpha.8cf23f.0","alpha.dc226a":"2.0.2-alpha.dc226a.0","alpha.f04d1b":"2.0.2-alpha.f04d1b.0","alpha.b75761":"2.0.2-alpha.b75761.0","alpha.cdf27a":"2.0.2-alpha.cdf27a.0","alpha.05fe39":"2.0.2-alpha.05fe39.0","alpha.f39688":"2.0.2-alpha.f39688.0","alpha.aeba04":"2.0.2-alpha.aeba04.0","alpha.b1dffa":"2.0.2-alpha.b1dffa.0","alpha.bb538c":"2.0.2-alpha.bb538c.0","alpha.074117":"2.0.2-alpha.74117.0","alpha.9897c4":"2.0.2-alpha.9897c4.0","alpha.72452e":"2.0.2-alpha.72452e.0","alpha.a5ae4c":"2.0.2-alpha.a5ae4c.0","alpha.c8fe5d":"2.0.2-alpha.c8fe5d.0","alpha.6a6c9e":"2.0.2-alpha.6a6c9e.0","alpha.71e549":"2.0.2-alpha.71e549.0","alpha.c8b49a":"2.0.2-alpha.c8b49a.0","alpha.59c588":"2.0.2-alpha.59c588.0","alpha.8a8933":"2.0.2-alpha.8a8933.0","alpha.57949c":"2.0.2-alpha.57949c.0","alpha.aa0849":"2.0.2-alpha.aa0849.0","alpha.14bd6b":"2.0.2-alpha.14bd6b.0","alpha.b8149e":"2.0.2-alpha.b8149e.0","alpha.339f72":"2.0.2-alpha.339f72.0","alpha.e22d85":"2.0.2-alpha.e22d85.0","alpha.271f19":"2.0.2-alpha.271f19.0","alpha.9f6022":"2.0.2-alpha.9f6022.0","alpha.17727e":"2.0.2-alpha.17727e.0","alpha.30fc29":"2.0.2-alpha.30fc29.0","alpha.46c426":"2.0.2-alpha.46c426.0","alpha.bdbec1":"2.0.2-alpha.bdbec1.0","alpha.70f229":"2.0.2-alpha.70f229.0","alpha.0fb592":"2.0.2-alpha.0fb592.0","alpha.5570d6":"2.0.2-alpha.5570d6.0","alpha.5a8136":"2.0.2-alpha.5a8136.0","alpha.f85409":"2.0.2-alpha.f85409.0","alpha.716d3c":"2.0.2-alpha.716d3c.0","alpha.002fcf":"2.0.2-alpha.002fcf.0","alpha.bf1932":"2.0.2-alpha.bf1932.0","alpha.a7a862":"2.0.2-alpha.a7a862.0","alpha.4ff238":"2.0.2-alpha.4ff238.0","alpha.4339c0":"2.0.2-alpha.4339c0.0","alpha.7b1a8c":"2.0.2-alpha.7b1a8c.0","alpha.941c2c":"2.0.2-alpha.941c2c.0","alpha.0885ff":"2.0.2-alpha.0885ff.0","alpha.56d55e":"2.0.2-alpha.56d55e.0","alpha.aefcd4":"2.0.2-alpha.aefcd4.0","alpha.b54a0a":"2.0.2-alpha.b54a0a.0","alpha.73ae6b":"2.0.2-alpha.73ae6b.0","alpha.994e8d":"2.0.2-alpha.994e8d.0","alpha.07067c":"2.0.2-alpha.07067c.0","alpha.f5bb63":"2.0.2-alpha.f5bb63.0","alpha.e5d785":"2.0.2-alpha.e5d785.0","alpha.d0185e":"2.0.2-alpha.d0185e.0","alpha.46ee78":"2.0.2-alpha.46ee78.0","alpha.9a33c4":"2.0.2-alpha.9a33c4.0","alpha.a28522":"2.0.2-alpha.a28522.0","alpha.33c570":"2.0.2-alpha.33c570.0","alpha.4cbb6b":"2.0.2-alpha.4cbb6b.0","alpha.eeed95":"2.0.2-alpha.eeed95.0","alpha.d04cbc":"2.0.2-alpha.d04cbc.0","alpha.3df899":"2.0.2-alpha.3df899.0","alpha.6bc470":"2.0.2-alpha.6bc470.0","alpha.b038bc":"2.0.2-alpha.b038bc.0","alpha.03df2d":"2.0.2-alpha.03df2d.0","alpha.52ee79":"2.0.2-alpha.52ee79.0","alpha.a825f4":"2.0.2-alpha.a825f4.0","alpha.0b9e7b":"2.0.2-alpha.0b9e7b.0","alpha.800cdc":"2.0.2-alpha.800cdc.0","alpha.720595":"2.0.2-alpha.720595.0","alpha.9c6775":"2.0.2-alpha.9c6775.0","alpha.2d370b":"2.0.2-alpha.2d370b.0","alpha.438f18":"2.0.2-alpha.438f18.0","alpha.9db3a7":"2.0.2-alpha.9db3a7.0","alpha.859128":"2.0.2-alpha.859128.0","alpha.04e46f":"2.0.2-alpha.04e46f.0","alpha.966535":"2.0.2-alpha.966535.0","alpha.7e88db":"2.0.2-alpha.7e88db.0","alpha.8013f4":"2.0.2-alpha.8013f4.0","alpha.b48958":"2.0.2-alpha.b48958.0","alpha.e27b68":"2.0.2-alpha.e27b68.0","alpha.14c1bf":"2.0.2-alpha.14c1bf.0","alpha.fc980a":"2.0.2-alpha.fc980a.0","alpha.a872f0":"2.0.2-alpha.a872f0.0","alpha.71f6a9":"2.0.2-alpha.71f6a9.0","alpha.0d512b":"2.0.2-alpha.0d512b.0","alpha.de976d":"2.0.2-alpha.de976d.0","alpha.213b36":"2.0.2-alpha.213b36.0","alpha.78d0dd":"2.0.2-alpha.78d0dd.0","alpha.ecc725":"2.0.2-alpha.ecc725.0","alpha.40d7f9":"2.0.2-alpha.40d7f9.0","alpha.bdee6f":"2.0.2-alpha.bdee6f.0","alpha.f5a26c":"2.0.2-alpha.f5a26c.0","alpha.318f8b":"2.0.2-alpha.318f8b.0","alpha.079a74":"2.0.2-alpha.079a74.0","alpha.c8e7c3":"2.0.2-alpha.c8e7c3.0","alpha.7f7677":"2.0.2-alpha.7f7677.0","alpha.53ea0a":"2.0.2-alpha.53ea0a.0","alpha.4d8a13":"2.0.2-alpha.4d8a13.0"},"versions":{"1.0.1-alpha.e903ff.0":{"name":"@codecademy/enzyme-helpers","version":"1.0.1-alpha.e903ff.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.0.1-alpha.e903ff.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"9b22cea32e5796920f71ab130ee1dc92d568cfc9","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.0.1-alpha.e903ff.0.tgz","fileCount":9,"integrity":"sha512-J8LdXLoBMiQ6fx3wutHwt9rYeOVmuAMPauNYwpfVzVVfuNK9OfhtzCTr6TCS4pTZ7jz8cMZKRjMuKnkPO5BWNA==","signatures":[{"sig":"MEUCIQCcoSVmkgVSorLYipIr6gWH+2acJDqHuYAu4UER+NfqBwIgaeM6lS8zawo9XRcGpsecfoTLngrtRsm1jqbF972W+us=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":13403,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcp3lLCRA9TVsSAnZWagAA6l4P/3yKIBYLHtb/3PYJMW7I\nCqJ5BYTGXiygv2ZmX7Eh+Ef6GfRdfaLKuKVmL7sqoUqzVbcydjHnN0eqvJ1f\nMRdoRunjbsSK+y+ZN/sJn98cIoFPbaOfUS4vgNxmWZ1GBTP10VuwNfS4zEkm\ndwMD2VGhTnUbxflg6Y7NbZJ3uivC6d2jQqPfDnbvtKJd0WRtAVXH5bLOX98Z\nrN9nKefXB8IyyiHOsE4SzdP4DY1KpOtXB9o8qgWJRcIIujh0DldIeKunGdWZ\nKinSmTOMm31vPIDxjBSxQtjxLAbvbst7JKoQdOa/XoTARnyhuDnsuxyJSiiV\n5o0EvlTcqF+N9ElOf9Hn4O8gyM51B9KWc6TMFvwar2/Z56SvLJbFWFc7FChs\nD9LVuShjvZebXgFF+b2eDMnaVW8HZlhSnvwpjC2byatiKyqOvGt8NuZfgF+7\n4dSxtplC1AmMe6jTS+SWOS6rsJ4q27umXOUrRXtO6ho9fjIzRKKpVKj2Lxws\n5We21fuRMZXCRdGYtyyaQ0PQBGxXOZcDLmXkxD8BfQ66DQ1hrerRf87GLtRw\nYbtQFdjtailx4gptqOdnxqVyXjSgEkHSVs+pUZYXjx1SfoyYBeEN7O0Wcc51\n9kGsJmFPktDYi3naQ+gGGiEk9gJRQrfedOBOyhaGbjgV4Dhr5jIH3zA0mFmQ\nMO5v\r\n=viZ5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","gitHead":"66c68828878b9ba80a84ca67b48beec2eb21b71d","private":false,"scripts":{"build":"rollup -c","develop":"rollup -c -w"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.1/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"devDependencies":{"rollup":"^1.9.0","@babel/core":"^7.4.3","@babel/preset-env":"^7.4.3","@babel/preset-react":"^7.0.0","rollup-plugin-babel":"^4.3.2","rollup-plugin-node-resolve":"^4.0.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.0.1-alpha.e903ff.0_1554479435089_0.10638706701758371","host":"s3://npm-registry-packages"}},"1.0.1-alpha.6367df.0":{"name":"@codecademy/enzyme-helpers","version":"1.0.1-alpha.6367df.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.0.1-alpha.6367df.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"1f50cecdb27b31c84d72babfa9e66712e6942c1a","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.0.1-alpha.6367df.0.tgz","fileCount":13,"integrity":"sha512-11hlKbTLLcR8vWOe75GgmjxgacXkeVxeZvQWkn+TTx2KPbu6pTBBVTK524+HeTEH3wxk9jGLt1l8J47NQZ5Tyg==","signatures":[{"sig":"MEYCIQCTC8Ksao8FoumR+XDxHBz8xExCzQyMjdEzHgO0hnghkQIhAKrFJRydEVhnv1ZyL5IoPpECbWgHtMehe7+lUhMjIyUH","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21351,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcq22CCRA9TVsSAnZWagAABmwP/iaCOh06VYH5znZcwqrp\ny/Zepo2BUhwMb6sd6xU0cNn2iKufsorcGfGMFIL3qfcClAOhe9COIykg/GiG\nXAo7wM4nG4TXlP+2FEdmch1Ru6e1+pxOjkqLDnF0vKPdrwZG9BpoFDMX3PXZ\nJCDO9p9SDk/jlKPp6v8+PfT3gZ7gpzziOjtfErJZ74JXAbK0fj+CkIBdufOA\nOtBhZmNO2QwtzkGLTkDmvbWVoeJ0PuU/wailwuI2gG6Nd+WzscdnE/yRhKQw\nEYxX3eVmKV7Khw099lyJdR4YsnwjIUb9VGG7tx0JZyaGmbI7+73cwcTN79XB\nWiWsuDMOEFxNF4CPUKgYcybF3XroVK8RmerQMt6gVd7EN7/oxfpjkQFww9WM\nKCnwjrzintSWHyg5ZfE1/L8WdiFxzB9oIEzVc5EBj63Ey/81rUXL/Cz+hoqj\nvMFAvzpGrXg+PvxzQsxFDlT87Uei00k+vhOz4se8bnLd6BHZ2Zl2aY2h4UMj\nHnUlb+FlqgWI+APfTuGwpoR627H4Op81QtVZgy5zFGq9MS7L7N4rRs3c0unT\nGZNLL4xKtKol32BOOPyuhPbwbbeyo5Oawhjrxnu57IXqV2MJcLAdREErQ8iM\nDkS+MVS2RdCTT98+3eqX7WgVQWfSTupAl7Rub6+1EqFFZDWR8WomR1cDMPFY\nKjm2\r\n=a+qz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"6b514d75b9bf122d9a501f9fb9ffbbecf42b08ab","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.1/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"^1.9.0","jest-enzyme":"^7.0.2","rollup-plugin-babel":"^4.3.2","rollup-plugin-node-resolve":"^4.0.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.0.1-alpha.6367df.0_1554738561436_0.9612806023739193","host":"s3://npm-registry-packages"}},"1.0.1-alpha.09002f.0":{"name":"@codecademy/enzyme-helpers","version":"1.0.1-alpha.09002f.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.0.1-alpha.09002f.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"898ef2fc7d844a3ca30f78ae055aaf9375ac83ed","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.0.1-alpha.09002f.0.tgz","fileCount":13,"integrity":"sha512-hK+MVY0Q1gP+r9wXMDLombrqYzbK2i22x0UUy3lKo+ThQjybC/N0wGlSr2tSGEmwM5lNFatG0Js0qHpdPiz5rA==","signatures":[{"sig":"MEQCIBtLn63NpZcrCJdqC5r3NtMbzRAJBkGjZKC3x3hBoUpoAiBynFIrWvyo8hETMVdTKBumGVWZyIKQQ1T7gYH/XgHmAA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21351,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcq5NvCRA9TVsSAnZWagAA3VsP/3hdPpn+1HtDToi/R1P3\nFoVOZU+zHMtCDuRefVJ+Y+5FajblZrXS6R+WD+O1YMjMnvtrcBkt9Ed1crUL\nZBqd0Furw1y1otSzPnWL7i/KmwFeAziC7+Uoxq72BSAMw4zK4zXkaqRp3u4K\nAByzY2vXNqMKY5WlviAU78/s1g5fqGVXBkCTJxrxoPedC92Ow5JrQuxEWRK5\nfhETdi44L9LacApcpXWLM0e5CWXKbcELPh6jlgj74huPU9eizdSVW1J1Ipdd\nRkwddPBXhsdaE10UGxaC9hdJG56mo4vmc+RSCQW4ztyfhZ5nwP2h/rQqRjkh\nUzWQWded5uc3Wh/RDUVLySQhUvssO0o24O5hA3yed61S/Xaec3DHYchehF4A\nAeq4YDvLUJPBAxbR+krBmubgZbMTeqYZjlGs59mQ8FE/7u2fqpK9N5FxwVk2\n3m/7g/L+jh2bbW+CYxYtopiO07Ufv5LH4gTJA0iDXL313iU2p39VjLaIeKuE\n7lEI4lDdvMqY4X8Y5vKsZ2y9p7O5uICTLkGJ8OLU99hMiFuj9A+enqalA4YZ\nGvjZ0mUwC4IWsxvT/UTte/jI6gGJO9Y56+Mn6gjWi8jCKzH7FnJAI+waklVv\niJx64EKVbDTaI7QEJO8vPNH6ACm4U3QNycqmgzFGPaam2B/jO5pgbzbtwrXF\nrkMi\r\n=Rl1r\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"27bb428a415ea8319b7a58a7ed7614b3d5c5f120","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.1/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"^1.9.0","jest-enzyme":"^7.0.2","rollup-plugin-babel":"^4.3.2","rollup-plugin-node-resolve":"^4.0.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.0.1-alpha.09002f.0_1554748270196_0.0850929479302458","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"5942a8a6a6e60f34f7259f716beadb7069bff95d","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.0.tgz","fileCount":13,"integrity":"sha512-+0QYr8fYn7cL9jCZPOMpHQrKfTAjn96yMdBUjMvVbpF2fKHrRdj1jswcObt+pRBO/jCtnA0ZIo2On637B8eEgw==","signatures":[{"sig":"MEQCIGYHXMiaUBvi9FXTUHuRmPHbg+r/VGzIQXMBqyQs8zV7AiBhybqMyPfgwNhMziSp3BQ+ys+c1rBYK7iUM0aLuIuwJg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21371,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcq5TzCRA9TVsSAnZWagAAY7IP/0KUZqIU6ODvpVhnigsb\nkZ4hp+uxSEyNkGbHwsdHNPIZ0sydg1uNpsoJBYN2bTlUdWBJIDU/HNygIeVC\n9JGOLr/RZmksygRZWaHSeriMABUy3yfvgTTfRz+mIwLDqfwBTWj6amnpxMtW\nS6hTHmiundbozJx45BIr95euzgkbHuyEg/NiLyEUGPZt8MDiFkfzvsDeBE0v\nOoEPJil4iHv9EmSpalI+CvL/v3th630jM/xGyJ13wBVYm0aJR0K+dd9HH3Fd\n+gHfVVpTFCpuMNCFVB7x0CzlClIgPRpR35LpbIWqlrm7n+25e2XmjS5dKgiJ\nmZO0DPAvgtmo3zgaaOJtV+YsnkPNeMVHhNE9sGAIo5SGzXJU6nTmEDLo75w1\nMktiunxnHgUIKqM/Ot6y4atZWmXM2Q/PVtYUIEjXbFqstEYIM1PbqGQv+TLC\nh3Et68fATPIqJe8U/7DnkLgzGScnxYui7fF/byLzCNSrF4lp0DrokG8lDYFi\ncTQZPY1K3PAeDh3ONWv853Zv69rYfwMV08JuYKheYTpMHLwqcknyVtAE25RP\nlSwfPBWbdu6PgPKzDzIMAu2EYYFAe8hdz6ajdBLP/HpyKRwZiss21qJcphcI\n4Kl55JE1zoX05FGO5tyyL8KX/WTb79a3qgIQaZxKf041Hdwok5CYj9XC7LAv\nNXhg\r\n=JSbH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","gitHead":"78287d3107d2062abbfa2f1616719235b95ce004","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.1/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"devDependencies":{"rollup":"^1.9.0","jest-enzyme":"^7.0.2","rollup-plugin-babel":"^4.3.2","rollup-plugin-node-resolve":"^4.0.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.0_1554748658870_0.2576603723736175","host":"s3://npm-registry-packages"}},"1.1.1-alpha.a81af4.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.1-alpha.a81af4.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.1-alpha.a81af4.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"134ece332c43bb947b8be3fbba70a2f3d21cc4a4","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.1-alpha.a81af4.0.tgz","fileCount":13,"integrity":"sha512-DNBjL5LpBjelIE7dOwfU3F8u3pm0/jJ3nZO2D5Ww06hx0NjpzPmIQt0eW3cAUtd+3G78zeLenbdvy0SnGY/1cw==","signatures":[{"sig":"MEUCICCbXjF9804/reJa4NvHA2+UGBWsD01+9IHhPS2ZIzOzAiEAupv+nb50z/yRKMFTyDNb2YW6hB4YZEE86xRABAo2nnA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcq5ZJCRA9TVsSAnZWagAAKWcP/Rzrt7NdeAi2Lcyc2na7\nJp0+BUMooQzBJ6h2OaabzS5YRhRlv8igLDHXUug50ZfkIQMaxkeKLBZLn+zt\nFv/Mj9ZRZb5yHe9/52jNHIJcYJ72zU0tjY1N7ZTSwwJwA905K3f4wU1O7n5T\nwKbc5Ne6k34XVIzT4MFy4hZSrqXDGcXpBWvyFn+QNPm4Al+rN5h/shUemFJ0\nOGzv9+arJmKbKsU4pNZJABjRb4EVFU5iJtpx+4HLK0GcM0dIMj8cVcnrsJAi\nsE2h0TYPxKYEbbjkPUZvwpbkOmfkXc2Xu7TiimrnbBTDjRpRaRl3hGWAl0Wq\ne5VztsH99Tw+DgZ4pO7+VueCS+dqcVOcJr6nuGR6QC+RG9P+L4DzzLi3G60+\nYuGbvu8ZOPE5ODcBUcKC3ztINpgOPlEcwwwglhIb5fiNz0USUROEeM/9807Y\nu7wXH1vsUjLL6t4+6be2iUtJiRAYVfxKhsTlfgcg/4k3c1egiSuQEE551KtC\nOmzQ9N+ETIRwLyZQlRTO0Q5y29DMLueg+qtP1dyes0/KNrqDqKIdNvBoOZ/3\n4OgrV+AjsO0jsmcTKky3DrfY24Gd+knSdYwN+zr3nf7FGZ78gtHuR/nVQU8C\nDMInBpyhwy9r3GxcvznSdEgF2RAON34wQbn+r6FXOPNuEvmymv9eQmVhfLP9\nszo+\r\n=YPmt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"e43ee6a157a16e9d444f26a92efa4a4b54614a46","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.1/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.9.0","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.1-alpha.a81af4.0_1554749000661_0.26601667861514633","host":"s3://npm-registry-packages"}},"1.1.1":{"name":"@codecademy/enzyme-helpers","version":"1.1.1","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.1","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"d09b3529e166772abdbee0f40c9eb0d783b642d2","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.1.tgz","fileCount":13,"integrity":"sha512-lZpRUaUeZXPKLsYgBxS18IOTiv1rvLqIMs2bnzGMGdWvjH2qFvcddN2DmuwHUEaaZNjyDN93oOkbCyD8qCv1mQ==","signatures":[{"sig":"MEUCIHTWFl8Za/+adbDfONK9y3dh8YE6f2NwRkP9Ak+ePe5nAiEA8nA9DVv62dGQR3sLgXIGj/ccpETAbwWR2Q/Kbvi8gp0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcq5yrCRA9TVsSAnZWagAAA1sQAKNVwtYNWUHAx9yTxZm0\nLlW0/nzF+PCcGYDoCdOHJzLC1wDdyCo57dKK+wevnrn9cLDT/0INgGIxaRai\ncKNesXlOGc1cXmm5LXfwVJYbXYq3jljCX2rgbXj798mvqLTf9For8fO4maFw\nCSVm5tItkAH8bx18Tbf5CV4rzD9UvrcGKkQCee1Y3bVu9gEydD4Vabpyn0n8\nZ8+9OPCfqhD45LnU1IpOE5nbh4AGcaxfYsa226xIQ7xIdwS4Jvat5trFOpG8\nhABqdMOLB0DV8yGQVDzZjAiK9NoMzuo+2QZd/I+ynuYQysrAb4kyH4M3JNLG\nyFmtXnZdp9fVllNQ+uN9wL0tZAcNsz9NS1YfzEF4RxgcEEBWbPTteTNlZJ26\nloV81d3uw82P+9FomIV0kpxfGPY0/uZhU8ORc9Pndnd6+g2rhLvNo9l2srR7\nwOrin+UfSH4PPyTesQl3LB68vwIOqMx0t+iSOQtH+Y9o0yZ6V06Az82Rpsyl\nHvtSkMYU22P3EUQKtApm1mmlnQYvI5WHGp1rhRgfggUqIbE+X07XUZnNk2ub\nGfJIukpqhllrWExop8TmzraRA50i15EEOXFrUkVUsHsrMa2/1KmlHU2pREMx\n6LZuJC3yuUScqe8oCCDUrd04uwvwkBdGslnBB7hUNw5WE0F1okf/cxYY6mbB\nThVN\r\n=5Eya\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","gitHead":"02d01d05a8b8f9a1541ca79005786972ab6e77b9","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.1/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"devDependencies":{"rollup":"1.9.0","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.1_1554750634226_0.6223627549177271","host":"s3://npm-registry-packages"}},"1.1.1-alpha.75129f.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.1-alpha.75129f.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.1-alpha.75129f.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"d10db6cdd269962cbbe08cf8702a8a8f7542ae25","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.1-alpha.75129f.0.tgz","fileCount":13,"integrity":"sha512-xy9DaXlAAgoFT18t8B1DXIz5HeTt2ftb4hrtsH+qkQ0wfCEkyego2evSpBbQgd9ikSNohQsXgDw3Kqwp0MCMBw==","signatures":[{"sig":"MEUCIHar+MKvDrOTj7IDGnRq/eHGANPF2wLay/1lS28M9+WoAiEA3rVmTN5EDo8Y+xO12DaZssipN3k4GoNp97F+ljqYsdk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21742,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcq50WCRA9TVsSAnZWagAAJcMP+wX5OrFM8Vh0KEk5UeuA\nQJurL90GjwaNYYuvLZaj6XNR5kwgTbDeKnxBXAsgtxr58U4W//pPJlrhqzQn\namWXNot0sw21Via/fUokAPfKMfvSdN+OSC1faawopkqxVitBkJ4hTcGq4ofk\nECumSdxvuYgcZ4jYx+vWljrLa3PsrzIuD3i4yxCBTmDYTvPWlQClvEZz7Oys\nvKWjjBaRhCLfzrq2taS5CbllbGC07e0GNfnQPz5BnVbXBRTsVaOC41sUZTbl\nzPveH2ZBnWdHw2Y/AcLA9ckhmIu99PEBnXGY9WEYZ3ueI8h4agVz/R5esOTL\nLIY0+4/+KxnNt5NmDUtfCZAAk64KP5Mk9Dw0fNgGKyGyOfW57pzxIfktxpSi\n9bgs3ZLmahDQ2Sj5+gxvlFs36pQtcHy6uHk+ayTb3KSp3YnB628myEMl9pO9\nQNeZg1Lrl4FiJX7UB0CgWKfwKOnDGFN9rUKRgSoc4iGFGQ1tZQttwdJY8bEj\nCMjTQM/KcXjocTjz+vrXUvrPwZ2fdxm8hOigZqa91ylebv+ygF9ZoaGQ6gMM\nGMkZ8q9Gmw1lNcbBX5ulE2zAUeWKJLl+j2/LZbCDf9dVmzBYk535bYUJ1VbU\nxjaF1hq2I5uokKXTDKPJfRyZVVGkOJuTfTf2cQ8XZ9uJXTuL1k6MK4n5ToeG\nj0ST\r\n=94c0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"8bc59799d04d6cc75984827e1be18d68a3158317","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.1/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.9.0","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.1-alpha.75129f.0_1554750741861_0.30908742579860604","host":"s3://npm-registry-packages"}},"1.1.2-alpha.42a308.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.2-alpha.42a308.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.2-alpha.42a308.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"926f71ed701b954764b203cab9dcdcd15d786b1e","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.2-alpha.42a308.0.tgz","fileCount":13,"integrity":"sha512-KcJPOuZNI2jmbafEU1dv6qU3ZKgSPE7UYOY1oIgY6T7qrYbRerE2hv/pGKZWJ3+MwxMhw0jLmKfYn8uSuTzh7A==","signatures":[{"sig":"MEUCIGx3GJ9nlw69PxVo5DRB6zQAUDK1Hi6ByTJwT9jb8j0cAiEA72LG+OFWZ1QjKDPg9D82h+6LfvnRLABW4oGRzE6Xpe0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21959,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcsNgECRA9TVsSAnZWagAAx1kP/0B5KCDvk0Alo0s5pBtN\nB7CM2Cwrc60SSHG8fl3NtQly9KX0loJZKHLdeVwnHDHhtGFDaUbEsqax+ik3\nRdrDM17NXqKjBk5v/5/uoFu/yd6p2qMNRGrSlZYFi7UgdQQjDsyhMoNN4jhy\ngyeWbhap2vELLVhQetHH7cnoEWqNzB62qeFWz4vgUtnKua4VCgS7Fim9ydAg\nIieULzEVfg6GtuQAd/fD1cpMpBBAJKDHveaZz+2Fcpo80is+Kq8SgpDQX6h/\nHypeQ51kGQtLNfMQpK77PwVlYWGmqn9tw290EDQph+fwtK9gHEePe02PEsgZ\nx52K5rLoAptPiL4MCJUpnWgM6gEaUdP0F42sFmIQ7z+8ZqIabVMd3UavWUTf\nupRoSDnuS1xEwTmk3yMYHtMI8xXvlTg7POsYSn0a0CfetoGxG3o7/NvAxyKg\nIEkJMNARcw2s39nPGgU0lbfy5x6YQyawlDvYhrEW38j4Ataoh8TnOev+On1Z\nkXmRw5QXE5iQBQV+cFiHT1AIvCYZdWuDKSDJx/n87Z4W4DnNkt/96+T+1b0n\nrLLW2iwib7gaC1yNVeTVQAROhoApplwwsVLlddQnjQ/5oLbMe1sVnEl3+yzn\nnOu0sx9Ve80zX1pk9U7p0tGmsqKPgl03GVu8iBoCfTFt95bWNINIWRa2r0/n\nP0pe\r\n=CS5W\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"b4ae4fa42c4da3a9987e1514c836760a5bcded83","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.1/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.9.0","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.3"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.2-alpha.42a308.0_1555093507096_0.9971658650992188","host":"s3://npm-registry-packages"}},"1.1.2-alpha.c04479.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.2-alpha.c04479.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.2-alpha.c04479.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"bdd730c99e2d594418bf9bf678f1a56ba2f6faff","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.2-alpha.c04479.0.tgz","fileCount":13,"integrity":"sha512-LoX7QbFoW7EOkJpr+vneQTNTTZD6OURLPSSEVKsvOPJDCtUO8LH0KqBl4xkKpMywYheJx1cDC2VS7x/yrHOF6w==","signatures":[{"sig":"MEQCICEOb3dDCXW5aXJYp0RqYcNOkksX6Dm9H7AD087j1DhfAiBmy56Q8+kda8heIfG8H09TTbKT8OAfQ4sKsocJDCLxqA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcues1CRA9TVsSAnZWagAAZe4P/0PJECZRbR+W4eI6Sjti\nC9X7mc/UDZIadBE2D0fc4WDyURJTuqbsKTZduenlE/8G5AFycLJsOo3slkUG\nEu5BQ64CVNn2kNjYIyT5iRzvDBMDOoSHSkrTzJvethFT4uif+JhWwGq1nn2+\n5B6PHkfcuaGBQJUpB8ejLpwutxSF3D8Wm3BlZa+1W+tFLo8+qTY7b+d0m1AF\nZmgL3DG0jNSb4P6THU18ZuLHecyyIDtiiFwWRcv8igfPsdG+k6Spkd8aCGAH\n45Cj//WKa09i2LS8CI0NxKUIES+EUWoqB0LGpsMl3bFrKCrLfRGxlYwDC0Bn\ndt8cR1oO2yRJ0/Zb9R0UFuhGiBxE6h/9lGAKguGHfm1OK3Y9ENlvQEjxSmPX\nJUVkzq1FKE2ks3WnclO0tCoRmFewHTH4QbyKfq1FVB3SpgYj37Ak3fANo5bJ\nZj3khkoqEwwuuFIfxnAOUsK+NU3yG1A47mNFhfxtXHnxt9zEsJYAtxQkElj1\nFnrXn9jfVHsDNX4emVivNyPv9GXQjHmDQKIoUR1G3+45ovdhQKwKsfcBMtnA\nkjTtZDmc9wmGDY28gs1K+PzV/eMP26Hax7yepvoPfo4Spk4nnW1Mh8IbLw1m\noxjbrMbfj9AnJlyPQofJxUTMWZpuK1dX+LhUqHUFucfMe2oTMFVCWuFmdy3j\nduJ8\r\n=NRZW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"a99837ce11228e9db068dc02e7b18c46c91c7c28","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.1/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.10.1","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.2-alpha.c04479.0_1555688244534_0.253657157175053","host":"s3://npm-registry-packages"}},"1.1.2-alpha.3d375b.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.2-alpha.3d375b.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.2-alpha.3d375b.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"15fdb0d390dfb2e1ee96a6707f3d58ca67e26716","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.2-alpha.3d375b.0.tgz","fileCount":13,"integrity":"sha512-XLUV/ZzilDcXXmHhOYbtBf8Zl36XKQiS1bVeK0H5R/0qKOU0CVuEE8UwBpMxEafp7Flk7sTE9BOPy7Bn08iSGg==","signatures":[{"sig":"MEQCIBiK7Hp6dfn9qhESQ9EF4IxPohsY/9rjECAqYRGf1AdbAiA2n4zSQhDkXlgmTiiLUrD8rf1mnYjN5vpr0xhZtzZjRQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21959,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcumJkCRA9TVsSAnZWagAAOVcP/2LmGkdJmMIesW3hAZEI\n75GSIiDiGpWz7c5dW7r7VK+byjIDlGqOGZmYtkOmhu+ONGc0qVIwQcIgty5q\nWZGe4U1OHwVKlq+z8h2Ld2qa/gXbEB3gJbXAUEfNE+xNscv/SQWm6BypJ/Wr\nvT/7nXD2Ez3ouljf0dJpF09whpcAtfobvqAU+XGLbiSTV089FutPON3Ua6xv\n0XXIRq7upCh/zxzpZ3awH8panA/fuUTlJddLzy2zrK1zxFt3EvihdcqAMo8W\nNMLaR7jaBEbXH4absrbEChD1kjfS3LgualWYGqNIHoNNrFLhjQcm6csIS8EJ\nOXRJZiSVUVdOXWBY+ENvR65ubB3k/gBfyMkK1lkdM8Wd18knjs8t0N3HvbiP\njnHq45yRlUgo1E5YDBm4NDOsHSeQgxoB/aT82TOoaDIJiWFJaNSn/kV7n8T1\n7djm9AWJXFD6gwumULOiPUAwLW3QCYahWzAE60fpSt2cQ8nLq4CHERS1P7zB\nDuYLx/tNTWZuujSNsymx27Hjz6A9PZkoKXXlkF9oCTnA6bTXOsoVP2W25jY9\nr9k8zi6C7brn9fk3QJXfC51lKABC3UhVYyt+C4lnWg1U/dnnSz3NcRkfN8zD\nxOopJDOxJKtVMcfCIBGCxZddMiWLZxB9Ln3uepmrZHjhnfWF1R8dHJ0xbduy\ngu63\r\n=qQJn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"bb21f71cceaf54b36537d806f65fdb0f53ff4ef2","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.1/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.9.0","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.3"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.2-alpha.3d375b.0_1555718755858_0.3861486017386866","host":"s3://npm-registry-packages"}},"1.0.1-alpha.261e9f.0":{"name":"@codecademy/enzyme-helpers","version":"1.0.1-alpha.261e9f.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.0.1-alpha.261e9f.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"58e37d28ad244c95ce0d4c6a11f36a78758da445","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.0.1-alpha.261e9f.0.tgz","fileCount":13,"integrity":"sha512-7UlwtTyZq/rigZEzh7Jg/5KlQAQuG8hIBIpedC1w/BB8r74FenzdcPo5jAUa6yKfxAbtvj5mmInHJI8vjpNKFA==","signatures":[{"sig":"MEUCIQDJzB0Lmvvbz8AjMEXkHs7BkYv/IXs+zvPZsI//qB70vgIgH+GAm8fTXZLon3XCMhNFBx58F4NjC2mPEM6H8jg0Lds=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21402,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcwK9MCRA9TVsSAnZWagAAdoUQAIap6r9wWCc3RVPxIr3D\nW5mJN0JM3Epl20DDKaV2FHB3S0K6gH2th7r4jDvL05Y30+8SDhQX4Apfrgmc\n3w9z46haZparhwviQl15+BiVy0m7gbKBUO4HB/PS0FEhElOzGOKa2lNQjiQB\nXOmddP1O/Nl+R2mZ4MDJ8ji61R2t4KQBzGxAKrGHQG321Ccigovk1/SA01oK\nwvk4DRalwrHYZ9w/Tykr3CU97/FvZzv3hFII0IQVJek0EA5gXFpq2LdWfPcQ\nqJb2rz1QvnigyK2xgND8it2UHRZ+GG/dP8X30bAMQCG7mtord/7ht9Zqj7H8\nNy1zr0f9BBY8JiB9RzWgcIZE4zQX2GpuGnYPzu8/KLasOS0YmupNwu5XSeMD\njAHGN8fYz+H3pGAYGIQZcGPfX2spb4slRcbbUaJn2U8wIQXznoohY+X4rWWO\natBXCJI1ksPfZl05eYLwOTRJHatpZCFOrJTZ5oN374ouubpCgF8guziif0SS\nD3oozpL8AyjQ7AvTRu+LziiLEq1ockh+dHl7OKCOKLQtvY4RPHOjowbL4zkC\ngEULgGup2920qDOQ5ucoJOyR8qGHSKTSWFm7LGsmP0Kh/M5Sm0khOoiavAs/\nl5V38akfP0XVnRkMzrdzGPHdWfms/HDlbapRR0xNvv3uh7x//LM7KbAWw3zO\nIKpD\r\n=Hn96\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"801940f011bee4ddb62a341449d373950c37d5a5","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.1/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"^1.9.0","jest-enzyme":"^7.0.2","rollup-plugin-babel":"^4.3.2","rollup-plugin-node-resolve":"^4.0.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.0.1-alpha.261e9f.0_1556131660124_0.2193488505416996","host":"s3://npm-registry-packages"}},"1.0.1-alpha.834210.0":{"name":"@codecademy/enzyme-helpers","version":"1.0.1-alpha.834210.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.0.1-alpha.834210.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"cb6a8ac782a376fe598fd5ec425fa1339c67e3f7","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.0.1-alpha.834210.0.tgz","fileCount":13,"integrity":"sha512-XIDsturCHCe2wRhO9iwrHYRaW9n+WDs6cyKe8W9mXgSp+7YoKzB61egm4bPCjR5UdtZUcZhZl8SpMONocELy/A==","signatures":[{"sig":"MEUCIHkTNYxtJT3nvFonpvasyXq7zlCeJGTK6fGJs52Jd88rAiEAzsbNHDIF1NMAU/h/vjZjfAtt4NB2hK+58p3IvN2OxpM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21402,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcwMGDCRA9TVsSAnZWagAAm0wP+gJ6wRct6HNadjLavRrK\nCs9+FWUYSEJQ2CkF47zdcqAEEenr4I9uq+vo78HnYdavMc+MutRFihTMP8oe\nnIaQUmnMKzqdSj3W+KmhOBiC3RUagpW9L2MBSmW0Dk+QbXzpRmhYuLodrZSo\nxAuKHbAIaUhA75rB9we8ajwhT9CP8zhspkEHpFnUcr6SW1A4XAz2rgXkfQKu\nd+3kezHg/YV3ai0ohacby6fuy0kVpmRvcay09PEdLqPcEb4LXCDdOgyLrnY3\nCgZqrfmgYxOu/oypCGCPkRyNg0j66uB4bB5D8zzbqGw5IfLpZOuG3v4WYr58\nuc05gqrHVMyDTFwxnPXptWPuNNVqllnEKK3D4VP5jtqXcZ9FJhffJYMjISxl\nZ1LFJmXH8PGq03EZKOKGgzho6RKPA0lfFMmJ8FYWIOkpSYg6cGjItlPZ/fPI\n/Z6BgcGIBDMgfhffiygr1yAgUgBVYzridTma6y5TO9sF1j+3QnJ6ROXvwl9f\nRQhqugaMmKfHt1exMAntqhBu3YYbU9wUcQlNO7J4M1VGC9w+aAshot+eiQsm\njhUPmHdeSmpy9FY1Rr8QWSbNl+E7wBU7xQWg1wHq3EqknZKvRw1tiEm38o9H\nKYDVtY5iAf0tNjQhG3RNo5l7DZMMD0DraipSnzdycMGo8Lp1xSoJr/nxs3Ao\nCJ2t\r\n=xD+r\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"749fff542522fb274e1cf7de87ef25fb2a2bd797","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.1/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"^1.9.0","jest-enzyme":"^7.0.2","rollup-plugin-babel":"^4.3.2","rollup-plugin-node-resolve":"^4.0.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.0.1-alpha.834210.0_1556136322667_0.31963744862386934","host":"s3://npm-registry-packages"}},"1.1.2-alpha.d019da.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.2-alpha.d019da.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.2-alpha.d019da.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"19997de7e1bf6ed6873753b204a07779b86dadf1","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.2-alpha.d019da.0.tgz","fileCount":13,"integrity":"sha512-Iw3znxJjKMvi6Ocs6w0fxXowPDHgK7Ba2lOCyGq0x0klYvSmB56LFrHLhC4M6hoXiRBfTJpF63FZqirjLKf/QQ==","signatures":[{"sig":"MEUCIDlnKgvkyBFeqLLAqbuG73VLQM772pKD3LwzXK9tMHRpAiEA1z7/lyiEjxPLfmCK0rhW6t7M9BmmH+6NOUP+LIdu0yo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJczK8XCRA9TVsSAnZWagAAVZoP/31/IbnQ0c7bjIAOyoNO\nn2dQNjc92/p9ro9jQcVP8AMnaCaNjw8Z+/aKWsQse11jr4kXaAE0aki3CjY9\nFbDl6CQXn8Es+veGjhWpOptcZYOTYBLTdfNutm0mLtVhe5gucHUDge4l9wKk\n3fOKbKov1YpYfVx35Oq52gUmx2KtKkeX0GeK39ll/xo2TygqQhhrrbkwOd9g\n5jXKmZqS4Sw65MI+i80dlcOm/C/xuAhNfnqcZLfOlcPawRi4gFV/h/7IWsUh\nm3gZCgRDvlc4SqvIjcW2Xdr8TpOWwDwjeXUiTom3+udXA2I0uLeOPNhoTGJk\n4Zgv51To2n+hL1pPg72kxefHoGtCpggmsQxSiC0WAX00/sQjLV4UOhALxYxY\nJDUiJLfBWCZojvkmjlWlb6QdKL9KYfP4u8RMnhBOAn9DHYOUIQEpS5KNrSE/\n4yH/M017c3MJHZe7t0B7YmCx0fnJqydAQ9TbQhAhAuvco3bhHcmIa+s4f7oA\nR03psywBIUitY17erJkIx7uP50dVf8UmNOTBfKI75Dh6oGyWOzR4+fhOk2dM\n2RL9CUpIAWR5nOREG6ElBqZoIXl45pRMNktICDJ1Yg9qluG5DDj0QUt5leNL\nW25RBaujfXR9CULoKzxZ53YHGtKEjV0pQKz4zmzT6huHS6dRU9vcVJLDEo2o\nfpnH\r\n=MhAg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"7828a755e92db798f8ed1eadf17510d2e3b7f461","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.3/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.11.0","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.2-alpha.d019da.0_1556918039301_0.5402467553775896","host":"s3://npm-registry-packages"}},"1.1.2-alpha.273521.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.2-alpha.273521.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.2-alpha.273521.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"3e3d62f4cc27736453ebb56ba91e4e8418240e2f","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.2-alpha.273521.0.tgz","fileCount":13,"integrity":"sha512-Ec4ZGUE5WeK1pe4u1RRfyEyUJtknmNSTWSj2hF9g6FCB1ThqJk3aflahaUHv2wNjQdfkIEihDsbcaQaptj1Ayg==","signatures":[{"sig":"MEQCIGDZsFfb2OmVDZul3C0LCQh5ZU+TjF1FwLS2XZQ6INM9AiBvHF5xYiL77QJ2O4l3W4VdO3UqWAUeKxcwBFML0gGi7w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc0FbaCRA9TVsSAnZWagAA8WcQAJR7Pb6Z17qWnpiheKFv\nkw4ZDJ1VjeC3s/mUE3DSaHvwkuhQvLPzDl6m4MqQjTMrp1tdnKMKHEO2oYFD\npJ+MvQ6WU8KjWSQhoSFgeRkl2tm0YkBDlv/itSIe4X0KeJUgSLBUfEEd5R0O\nDztFi7cDTiNm4zjuvnIpNZMEUdOMQowPUgAGnfEPm8fzaYpEEqTeLSo/Sv71\n8Pnp6lRAP5yo3wH7PzVEyVPdNoeiq8LdhS68vPFzLuEixB3f47MJbRg7dE0k\nNr26W8hhE5fTFG0/IbNyXfOEn2rnfIoqEFEiHq/hnaTmdx8LpC6HrhbzmZRv\nFBhbsgZL/lGO5lwI0NBI6panIoqaUlg2nUTo+0ViUTwqssakLP5vPYOTWbO9\n3qwIRqNcUcAbrFhCbVqjWp3B0PLJ0PmA7qm9o9JBGOVl80ZyLjlFm/URV49n\n7dGbx5IXMfJv/gRSRbBhlv5zdiZ+kgSHW1oNNCuIwCqXi52hG4lCDCDODQ6t\n4JdPHpKA8HvbPQZ2tsTobz5zHmqsgO289cV49AREFWc5xEpNkMgYyPF0RrJX\nO+QXR2VvdwycpHIEhXBOk/tdorRyb5wM2Egl9T1jNM65MVR60aR/7Ixc0kjk\nrElrILTg1ZhnozyyqF4KBr7TIkBI4C9tYvH2cQHSKviHbCCq4sUam4HJ7wnr\nBSaN\r\n=xUJo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"7f91a412363b1ce0c12e8eb0569062a351d149da","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.3/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.11.3","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.2-alpha.273521.0_1557157593506_0.46085084186592895","host":"s3://npm-registry-packages"}},"1.1.2-alpha.6f491f.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.2-alpha.6f491f.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.2-alpha.6f491f.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"b24709f7f5b43d721b751d34c9d9cd502027dd17","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.2-alpha.6f491f.0.tgz","fileCount":13,"integrity":"sha512-QIt2eePEK3+r344t1tk75gUtDqjrbJLqS66EuZI1Cq1ybkV2KqKxhL+LC5LwBLhrGuo7gHI+a7g9uNJWTLT2vQ==","signatures":[{"sig":"MEUCIQCj3ZPDRVCMXPncjZBfpCFLpUUtP1/PiikTJp9APhkjygIgXK3cXKCyh/YzSb5PX5EQw2ro6Ia6QiJoHRxMYJr3OQY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21959,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc12POCRA9TVsSAnZWagAAJ/UP/0Irl3u2qHyYlUcpju/v\ndADd7DuqUknwpnM+4FeOcWTB+2IGTaMP4CFwqOFK8Aeh4t3fAq+jS+zzSNnF\nDmKXeD/wcG6DrQXL2dRF5ssdmv3AhioH290ll49mAqqq52k9Ouu+y11bstiS\ni38XtkCup3PF6PhWODszaHbcQHDnrtZqd8SlZFyZNxKc6WSCGLeGWHNNgKyB\nUhyRuaDelbc9aUnA0/5WPpSALG8IW/4uv8SrxCu1AhsDXXR1dUkqrpyBBUSN\nmVNubm7bnRd2PoY63Ai9g2eG/ma/vl9WtvydLmQXa3/X7Vp8dCKdjgqOSG66\n4dt5D9YqsVe17j54xyAgANRwlo4eLQSGzY2JG0lpQzgXJIsEM5NYY+wMnTB1\ns4wcZKM57bRf4eqT57JNmaMfUviWwCHiCaui65M0PAsWye3TKxNGX2ZcZQHP\nA8g6D7g7aQRj5r3rpwoy1eT9aO2azAzcgo7nbSiHZ9UqW3jNYYaRRqkCr0Zx\nqv8/oP9lLlJBkVGHzXtYmMAPFeTBao0NJL16dWK6sRicE9COb66P0ChficJ5\nLKArU/Y8hSa9CznzysahZzt1BrKotuxRsiakoAIVzBuPiBbdyzKHvIH+CsgX\nSW8aR6BJCwVaeGqgV1qBgiaB+F9shh/3yMuL4lor0a0K5Q3EhLunfF4Gu5rp\na+15\r\n=unAs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"8d1726dc23feb42a10aed2c0ef5f62687525e22e","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.3/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.9.0","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.4"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.2-alpha.6f491f.0_1557619661807_0.1487479662285487","host":"s3://npm-registry-packages"}},"1.1.2-alpha.5ae502.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.2-alpha.5ae502.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.2-alpha.5ae502.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"f84779ba998d30e9f72fd67c39d0d39cb92ba3a5","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.2-alpha.5ae502.0.tgz","fileCount":13,"integrity":"sha512-Raet0Lvg+GE9swXioDLry8c8O70053ucsMn+mq3gOAWYl3D/ExGzjWSopmBIrGlSle9DN/2mtZW4UdcA9cMRAw==","signatures":[{"sig":"MEUCIQDhNO7UJjP23jejEU2zWFiQ60Hy2KsRwq5YD465Dw9HUgIgXqgLajysfLaiM6n9KeIya3/bWvuIl0+YyEO3wUZf4lo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc3DcNCRA9TVsSAnZWagAAOREP/22IfUwMyEulf2Xa4Nav\nMxKclyzNW1qLrJjGcQ+uZqXGLEEL74vvDPvQtMGsdMCPv/iZyQ+9h3kcS08O\niyIxr9c5+9kJier9bTNNhl9dpngfTAHPZ7IYlETK1K/Eqo/2HfabMtA5xYUV\nAMQPKhMQKFhPp8EMHffp2noH9hyholol8Mu/CALqJOvV4zK6BoMoPLaSez8s\nrUU39Oxcvt7mPsSmn48jXHNqx8FaFSsk+c+mWALL+X+tcMuYk/wZoT8I6WzG\nvuffex3t5zAiiuSGWgZngF+1/88X/kcDrN+8iDt1Y+mZ7BIOJ23J/9cMBRKa\nweuzo0liwFMDMyJ6by2dD3f01X/UQrJGhU4d0wUb4iB2kIpoPiM8gs+OdDih\nu3Qy8Oq8RDb13/az6ug0j0++iqrHXFm/Teb2F8aMct+or/uOunNQBqCDBkEB\nAVuUSapVWO7q+M54fS6ewvgthXzhu6et2sYBa/4z1lwWMZ7288H/QLVoTdpx\nubk4au3xrEXIR7P0g3Gquunvo8j52raHvCHzMV59T5jRfdTBZh84WySbgWlr\np2n5TW8VlkAQdXXU+NHFQkr1DreCkHAXAtgie5iT3RUbTjhBwMFOsRneEF1P\nWEBxdN5ChLVeX7l8AMG8pFk/qvsieF4nKLP89WwzlCqJiApiysdeeJymMOBU\nV2+Z\r\n=7W8e\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"617bd67298396929cb2f5f1fa4574071f1df0de8","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.3/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.12.0","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.2-alpha.5ae502.0_1557935883788_0.9467473542285734","host":"s3://npm-registry-packages"}},"1.1.2-alpha.ad2c5c.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.2-alpha.ad2c5c.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.2-alpha.ad2c5c.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"8726c2fcce1f5f26c71a3f4675330e3d0dc3c121","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.2-alpha.ad2c5c.0.tgz","fileCount":13,"integrity":"sha512-lGh0Vl3BBT/2ktfDPXuasF4+ws8mJz+b0CcFNipkoZ1Ynp7eXcFi/271vlbzjr/R64ky4r5MnYyp3lqc7j0/ew==","signatures":[{"sig":"MEYCIQDjWrWYF/LzHWTBm2mmlAsQQX/S002ySBTkeLbkDa+FPQIhAKGilT+K1rrlo9oPEw2CG3Rw2vchy9wR+eaQyeHAVW37","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc3fsTCRA9TVsSAnZWagAA24UQAJA3/kGqCVdgb4r3zb+G\nK0OXS+qY96G2ig+BvK9lV9jer0omQV2kzgFFWbaurDKvg+rQjgLaiX5yNhRe\nenTYzh2qBFocurb+nbXVAizlhmiaqlg9fOxIeAl2sYyocspuy1SDv8nJzsGj\nj6PhR8VogqJOQNgah0YeLCxe/OlHMY+p57rt6Vw180nGXtQsmwgJNRw1xnSY\n/tizPFRgcM8PE05DsTKUim23eXuNLWXzGTmeODMJSkTIqKi/go6j8ey/fFe+\ncK5zDl/TWSZmv+KIFsvaftd82pPyRxZMGBYUmCOECQLYyFdtBnte9/WN2eML\n3Q54xnqRGSjp+qEP8hoGQE1xa9BABXfU3QjDTju9kFgi5peuRziy2R0iJ7fY\n0Zsi0LuuTq6K0fvltEFrD+i7PjYbrwPrPAHVTIj2EWvBe1jmqqFqLI3Pn3H8\nuszuMbJXekG70/KDkac9FAIKoS+E5Hc0H6HHqZzWHGLTOsrnXCx1ceSGD6NC\nURfPeQE00Mm6DQA3KJciJEGm0kpPwHt79r7N/+qOoc8LeTzZqvM6nuJZrjRF\n/6glcjN6fgZmjbOcyRgtJGtG1r71+A275ypq5hBJLFvAocZpObvnNw/VAOVo\nM4HQJq0oK27gEHXMK8cfCEAXatVwY1Y3BLTNUa1ywFVtCVG9QjjhimnfGZTH\nIsrq\r\n=cN1j\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"d64c3ef243f7034bd7dba998729a4a1138282388","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.3/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.12.1","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.2-alpha.ad2c5c.0_1558051602696_0.13144006358116678","host":"s3://npm-registry-packages"}},"1.1.2-alpha.43232c.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.2-alpha.43232c.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.2-alpha.43232c.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"1ab216148c3d90307896430c07a90a87425507d4","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.2-alpha.43232c.0.tgz","fileCount":13,"integrity":"sha512-KEqpeAItd9+a1vpYyJaEcyyHqKgGkpz5dp3gNWW70KlF4oI0svL4zx/aGcMEInesfFEes8fHoeq4LNPaR83Daw==","signatures":[{"sig":"MEUCIQCeEJY6m+StT7mBE3nduo7sJdwGz0II6pVUzoCL+XjaZQIgGUHnJAbiUoKLAZd/PcD+dS+LgRCquj6DOdeF5UHVb3g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc30ygCRA9TVsSAnZWagAAGuAP/1CO4amTbV/Vbro2FJz1\nl6d+UszCe8tAtmFcwbOaezwXYvJt9GmQZHE64eNuUkGvTNAHCuwqeoE0J+WZ\nAjFvDoMkYYwr4vLGjYS0Ui5mYvzItmCPeQ6HLrOeINhJIFkAzj2cld+lB+/L\na6SmWKXRFrAdiCAzlx2EUXpyatIcKqkjZdVgkHThaihkekarxWUypr01mfFN\nCG6m8ywz+iYJqKBon3Lo5GcL/dTCV73mu16OZXlZJlJYoazrLJ9XpCadWaWT\nS75NX5jCSZOhI+eaIy36CXwlPPKTEUroY5+CGbso2Zv7wbW2Dr58gxXX6Fx7\nsWmljhzI/HK9qqmNeLj5E9Bpi5Xs9GQyGA0h3lCORkwv9VybnyVaQ7bNCowD\nBYKnc0TAVm4C6t+JvYpuEY+J4I7gXsFPXJ82QA4h+f9G3oJFETvMjIVPU/K8\nnFYjAbcWI9arIyD9nY+isEH5w7Ftz9Rejl2RSNwwh/Wllmytd8ZWkb7o5M56\nCEeIKU72sL0zS0YwSuHeheeT7KZa/7Y1s/Jqo9o5jvkuvF5YVFUD3XPKbQol\nrrcNzdlg6C7QimDFsQd1j4LEeqlMepwueLtge6C9cvEhJsyV11iNNQRRSAmQ\nBVLO6PbRYNtFkiFdozIdgoeXjaZHZduVA4aVsCGbiMZ3tC4M8382QBnJIcVf\nIPjH\r\n=UIn2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"0dcafe738d08049b7d94fa0c66066cb445866665","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.3/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.12.2","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.2-alpha.43232c.0_1558138015196_0.853088995072814","host":"s3://npm-registry-packages"}},"1.1.2-alpha.873cf9.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.2-alpha.873cf9.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.2-alpha.873cf9.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"c7aeb52ff1d1d5a300fc7d98537e748c9f7c79f1","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.2-alpha.873cf9.0.tgz","fileCount":13,"integrity":"sha512-v6bFvuCsvXJPGtCPmzvIoD1f3tlee70ApYotTtxGgFclE/8OgllU7wb608AwetVhq46aYGMV116btZNsRT017g==","signatures":[{"sig":"MEUCIQDUcxVeg0eWaP5s9C3Rk2ZSvux1eT3PJPdE1LKv+MFUzgIgd2JyVEjINjj+uZdWyb/k7zUMSMvbNZIFnIMpu3GtLF0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc4e9VCRA9TVsSAnZWagAAnBcP/3tkK9lFA63/MNW91XL+\nAtdQnj+58pMTW7kYZrITDG8zYQ2wyXjfO69JXcLzUMeHVHPg4jWTPUGLOjBz\nSH0qte2f4fw+NH/OlIuR8ohboX8kpHoJKs6Y5yMAAnUbNwrBs7oRBzbL4zn1\n+yUxY0aYZkrlv1NF33zDCvFwTw4zMKYljjubBi/PBiQUL8UylpziZ/hfM+b+\nS2qUQGCcnni0N9muFYXdYzHGHFf7EQH5SPaUY43AnEibeXOaUsDfnfboRW2w\nMfw9IYHqdLoLTN+M04Nd/+kLl4W0Lem0Z60ZHzVIU+mdzMxJTjvr3QyVqmGt\njmsqoXc/kyQROxPxhgxYjv17BuzLv5vX37LaAmXRyET9edZ7FiBmJmaVnRfi\nLZd4Ut+4Td84neYeBXc7Z9QChpl2/9YbFFaqfmPH56UvmjvX/jHTOLst0gcN\nDP/kpVCDu97e9nTLj2VdlbCHREfdUZnRw1vLj2In5tnFbXx5e8J2Onyxd+6H\ntqH61piaJ9qI2fQIZLbjwrLL+w+J+8/rRQsmzQUOKB4t2pxmyN3EH/ohqBzB\nZknI0sm9iPbLnz1TtjNDvnn/ERmcce3LPyQ8IuiVtriXMCJENQJ2jB6XUCR/\nbPaeSngSPE2oT/CvM3w5t85VLvmIUSY+A7fjOogqeA6VLgYqYpJ9L8bFLnHk\nHJQ6\r\n=h7Kp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"3c16597f0939be5e028a4f39ce299aa946a071be","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.3/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.12.3","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.2-alpha.873cf9.0_1558310740678_0.07432734315674439","host":"s3://npm-registry-packages"}},"1.1.2-alpha.12cdd4.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.2-alpha.12cdd4.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.2-alpha.12cdd4.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"32ed4a56fbc7a5ccee53cc6cdf79f6ca32c5e628","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.2-alpha.12cdd4.0.tgz","fileCount":13,"integrity":"sha512-CvQDpaI35mEbeoi60O3NS+7svOix/6IdRbmORDIxKJJEempVqym7spk6fhCzJABPErHw7m1kWuxIXyVg82AQwA==","signatures":[{"sig":"MEQCIGcQWsEjWULkr8FbDKF0c095h9kSYIS6B6ehFoKSmysMAiAk4pKW/hzog2gZ3iCkntB1EoGWLpaS063w359JUzD/Ug==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc7HvRCRA9TVsSAnZWagAACfMP/jVFuvndMc9BqmZS6sEu\nHjuodkCvITW9dp1FrRqdrK+TkRaU35ExAMRNn4XLsW2Mp9/pl64WLfUmS1kv\n/nBNvX2YyEck4tkLtuPwT7rV/afoDZb954ldnaQ/dAit7ydBN/Qe7A7zp9JU\n5JyUS4GFv/L84xIL3D+kn/aNote/mtQG7pW0uGS6ipmVnOitmTYuzh+YKWoV\nPNzlt+DhXzBpmmznQE01ocq9hkMhBUXnJFDrvDTyrEsn3cfoyYnH1NGE3qPO\ntFnkVRKPZhQp35xS6S2IeWUaGwM2aZgJ/BQJp98klGSeqloVbsXvex4SyzSD\nnilNgYHaYBk5CZMnSRAFnPGqnyN2i5jWhkPyZXoVCTxTdUQQLd0G2ldK/zD8\nyC5C6KAYehK+gAX/YmFZZDO8pZWDW9b6EpwjihsZQxdGiPu2fPfWiWFCVuo/\nE8s+BdkVODcSsmjjA0xThgu+xi7/mNWlUkyofjs+MvpHapwaCkIOKvzDq/nc\n3shAiTdA5T0jgCjaa2HcccKRHWO/yj+OPkevSIgYyYOUeEwcEFvpOh/zm1mq\nGwIT419hJE07FlVKjbHz7YbxWD8PDHRTWMwmqODcJaCFOG0secWGFNlRQsh3\ny/Pck1rrlKV65jzPo074d55M/TWwJiWhw9MCNECtLbzlJw5uMYs+klI3oiDW\nzULD\r\n=wMaj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"cd85a6fc5087f4eef4af9c9c7617c28221a61be9","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.3/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.12.4","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.2-alpha.12cdd4.0_1559002065163_0.7883162470065574","host":"s3://npm-registry-packages"}},"1.1.2-alpha.2eda0b.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.2-alpha.2eda0b.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.2-alpha.2eda0b.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"7957db5b44b1e57c45987105e5963e6c20b9d02b","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.2-alpha.2eda0b.0.tgz","fileCount":13,"integrity":"sha512-sXl8haI/CbNIqQmwcXX0ANfFJEIb42M/AvPtJsUl3hKzEzG1S3jfj269wZjJmRVW8tCdzhoaybKTx/yj8CYO8A==","signatures":[{"sig":"MEYCIQDG/cTwtcfpnFnrOZ0UZETIeu72qCBxsC2Xto2CXSg3hAIhAIsJequ4gvKlzHLBFPqvoocYMbUurpKuE54emKTKoEl5","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc8HBeCRA9TVsSAnZWagAAo6YP/05Lb/lfAPV45FHgisMW\nnpgxhbU+t2MKcZmcmYkFbVwfOHv0quVvQUZ2vdTURU44/LG7E2FLIvlsGbul\n3GoE15BI6RH0Ti7T+DcNToId2Kot/eU4Tv7nkNvVJc7tAF2N7+oZ08OHaX8v\nX/RQbS5yHzKbNSGvt3JvI4uH1mMbvwDJgiEu+DeGPr9Ig+bsOG7K8CU5PGKr\nB2l6PWkX4IpXKuHX7w/WT5OqJlOLlc2ASjPO6QST3Bt51Jqt6n5JMTqTXP/h\nmNeyFO7NWyDRIr+Je7IgAs7Ukr6V9jPcS3FuhWsXNKLquQy5elEH/tLAQ9vK\np+IUUplUJ+gXHhDThokyXQgYgCFk4AoykPnQyaIBJrqbCO9/vrDFhK/xcvfk\n9/6zsCrzljIjLMaDo0+FOd/tfs64DLevWlmmETg/pF0S4QHodaOeFwthM1ak\n9pOVjMyjVnnGX1X7ptB+FuXcEH/YTuS44C5a0kn5KFePj3GKqbpq6JujMJhl\n5lNRn7eA29Nc7P6jaJ6yJJABJrV5fAVs4Tze41jlOoX1EQy1+iL900AlyP4o\nfTfkhgOw9cmWX9+m8Q50SHPXy87dkajr5uJKSW3x4zyVZwr8KIc/d147VOee\nEZCfbuVZ8BkYi8vwhm+nONVbRSO9vgiiy7XXe9BQxQQpl2BeekgfJ63csOPz\n3BGn\r\n=rIqX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"72ede04c1ae2dee39a4bd06023532b9812214731","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.3/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.12.5","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.2-alpha.2eda0b.0_1559261277577_0.9028906390856393","host":"s3://npm-registry-packages"}},"1.1.2-alpha.0fe053.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.2-alpha.0fe053.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.2-alpha.0fe053.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"af49c3dcda79dbdfd5b8f1387f907b7d53cd373b","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.2-alpha.0fe053.0.tgz","fileCount":13,"integrity":"sha512-PY0skf/GfMEu1gjHgr3NwplxD3ujEFakC8hCVAfdSU2d0oxDQgnBSilKvgNH8wzVa+oYuw5Gd2/dfTBId8dfwg==","signatures":[{"sig":"MEUCIQCC0U83ftS94PVo+kD/9apjqy6MHpQYoGm4yu9EGF+bjwIgXMM9slJyPrkrziJSLQmFfbpkitQTkEkCbFu8LjcNBd4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc8cFsCRA9TVsSAnZWagAAnwUP/3L9+PbB8YNjkMcUwrXy\nNVWZeYaiqTnB55qBj0q0ECykRzsMdqVmTtYjWb/EsPnHtuBvfCWQGWHIKn4X\nBfHIXKodVNkZHlcKl7aNS3khApiqT2GdaZSgS39ikSiTGZjGeFyxN9pMjM2W\nQhwObbtvn+3ilGojo4mxukEkM+rSz5ugMG4RP1TUL05S4vUxcv7uPlIBTJRI\nM579A2ljXpXPWbV8t6prlgLkfR+drA06XUFvTUuAtyDmRxLGZT91lnnSckrs\nSmNO/RLZqHrIbaNJlQ57jqgAKgyApMKzY3MoXJyScIvvoQJe5lOp4puqVcPK\na8o2fkxUpbEUYOR7mvzI7ydBRnA7IA0mlLVPlrCVHdqDMApXCcyOHSv/fGKP\nHH2euTBEXr+VhCtCDJAvwYDsm6QDGfaQcEmlz1FnZ23tcjpo7qMtIVb4xph2\nH9w0tyRNX2HxlZ1Tvq9FxkA7y/ntbZi+mpMhO34gWbWG4xDUiqY23nJStbfG\neFbR0loUswvjrChNJiqb9mbCmaQ+sZ4gODl5CFzo+DBJTpKRORzeSGQHzxdO\nUDcQOKIr/EMelqwh4nQdokaYuxZkIz8pQ6GYiJX80//eAHsr/tzJncIviagD\nxVPG74b9lX3FTtw4pjr3oJDErRXEuEtnBKvtyLg4qeKi5SKU3VhepsnvxcUX\n8fbD\r\n=+wqo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"13cd7875041642729e1e311889cef9bd65d4e56d","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.3/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.13.0","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.2-alpha.0fe053.0_1559347563696_0.4370805911933058","host":"s3://npm-registry-packages"}},"1.1.2-alpha.dd6fcc.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.2-alpha.dd6fcc.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.2-alpha.dd6fcc.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"75e53a125ef0c9c7ebdbc48dfff7a5e1100c5630","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.2-alpha.dd6fcc.0.tgz","fileCount":13,"integrity":"sha512-KNxuYLA0i/qQOXni5QvyhWazuK8V3mRpDgPWZQNjbtQBQ4SPmwmlxshEVkc6bYuZpV3IiCuMyCeMi6B6zz8LRg==","signatures":[{"sig":"MEYCIQDBJxIPi6EWKEMLWlOZP+ZfSczlX8SrjMKvyCK4n2CX1AIhAK6htr0MgU5kgvWigNd6YmBLMGqOd35IPU9Q7J/aFv2k","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc8xLbCRA9TVsSAnZWagAA8qAP/0IQYO2irWumcAfLeW2+\npsuMDQ4tzrhaPw3c58ZNhD7b6P3XrBt9EkcrmkDpCcTrkVlgLptRso67dY8p\nm8mh2dphZLRYp9jKrBiQXysBcEkXIyG0VLICQeV6jIWEFcHmnlkQXyuW78Wn\nro2yeqZR19Tsx25ORNTTf2KhzOVtkx/N4lxdscF/mCCZrrlEGVLRUlALwC9F\nSczCgjv0Eb5MWFO2y+kJ3EpwdbxNx2vi1vHHVyCe2+iTMq1dAuKqPZdi6b1K\n2HR6vOHcoBpl3sy297J6SN7VRbk/KpYka29tAsss9qgScXow+stTPuT09lzZ\n8hEfVd/g2JQHCNt7z0ZAZZ74CCp/qYgGt3uU/evOIsNytfQgdDU2vF+1Xhp3\nvoiygtq54cdfGfuyADO4b5GsPX7F6Q1N4KEQOAULlgAKZTY9EpbT+mR9iM1C\nwStoohrAUDHLL1vlTYtyjABXvooMesGGIL7ueT/RNtGlWr5p301CA8D96u/b\nyPjbOL/eQW6Er/fdTKowrEefnzzo+ThUC6FbMJGMIxf+KflYRQ/PCZpo5s4a\nP77PnCLML7wKIP1+CFtl5Ux3HMJ7FmQGpzqbTRW9LRWm2aCIJPSDwDbxVF05\nmcoMDpayM5+GnHZqchAdwisEbQAnPjGrfapeevVCafuGPQjhVtVeyRyl5Vj6\nq1Jj\r\n=6YrC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"147732148ddd93a185697492a3dfc4cd6dce6f87","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.3/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.13.1","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.2-alpha.dd6fcc.0_1559433946406_0.3518247166319941","host":"s3://npm-registry-packages"}},"1.1.2-alpha.2eeef4.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.2-alpha.2eeef4.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.2-alpha.2eeef4.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"66cf7bfad758cdb139c7467a842cea1e628fbe12","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.2-alpha.2eeef4.0.tgz","fileCount":13,"integrity":"sha512-ZrRpJunodRLY2Be5zjOtNn0pggO3v1WsNEXfjG4U4SOSnlqssOKq5UMk0IGAQCp7astJa/XfaQglH/zFkYyj/g==","signatures":[{"sig":"MEQCIH6cUUerhlLOwnl7BxMtXpB6KBnL/J/+5D2mOLMH5+z+AiAxD+GGQYPhRr+XV3a+zR7esim4pAUtirJsLbRyaWcmDA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc98p4CRA9TVsSAnZWagAApvoP/jKpaU039LTN+xJCTnyR\n2X7I/QqWXHtWW/G4UCNA9TkYb6NJuWFZcpqZW9Huv4p8PGwzVL+KSFANMxJf\nxS6LZW+/XL3EWVO044vaNOloue1EfcwF4wOzgTtREZXD7ZQTdV55Hh+D3Dwy\np7TTw5cleg/dadY76LMLBNhLxn/w3zG2WZyM0aXiECPrkSpCX9QYn86Sl4Ql\nituZbnAPn/PvYwX7SG4OsvTgerxz1c98tnZTrn30JSeKIdhh+v7pzsp1Q9nB\nl9kLPgetubgE5bO55AscGGxqoqlG7VhYOGSUXFp86jUBpD3cMYtpJzQdDhPJ\ng2M03oVrgs7mN4EmuIze0iFOx9fxUf/ooFBGZ0h9PQQv7Mf3CYpcdp+WGZCA\nxjWG2YhsWbyL6fLykn3Lu0Wt2oymjc+KLaiULZv6gyNZ6m/9O//ZUWwpkNlu\nZmi97PUb2XPcMXA0FXcDIz0EL0rQ1PA0Be1NXxhvMh6FzAEssW9XU1mZzm4M\nI48DtIj+j7QCnXvPVvIYwr4GIvsZAcf58nmZq/53HQuDGhZK/ESFMgmsX91b\nSoaQRuuXS4zb92/J0LrVu5mwDRoNkPbo6djpxZC/dRoASi/oH08G7gdWqbdY\nXptSZSOZyUzNElBFI+sQf1aX4oyBeRZg5tLOCIGUsmizG23Nd7DDFmXWXsDN\n4wHY\r\n=OJ3P\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"eb27f69adcd4ad94227e36b88d16677b9618f5a1","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.3/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.14.1","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.2-alpha.2eeef4.0_1559743095492_0.6399244024734654","host":"s3://npm-registry-packages"}},"1.1.2-alpha.cd9441.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.2-alpha.cd9441.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.2-alpha.cd9441.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"022380ac2a77c3a6b049384f9a2ea2e5afed60ff","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.2-alpha.cd9441.0.tgz","fileCount":13,"integrity":"sha512-mRPHFJyo1UmWSuFToOGcLItlTie6k26DYKWs3u9UiBGP7Z9pZeFVb9XBnbkxmsH2Rt4JabzfOjUhS+H/PDgXFg==","signatures":[{"sig":"MEUCID9Yc1sv/pNpcA/I4hR4AEnI/SjW9dKMbv+grRy238AhAiEAmDEVwaBF3rXRiMQN0hFc6BIE4t/uIrYf+cJehe8HmoY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc9+IICRA9TVsSAnZWagAAiD8QAJkM6AOtmJk5ef/mCSbV\nvQY8RREDi7jP4cgAyBr7Yl2khWkmTIkaVIE8NAOrJap/ZTjdDdj/rDI1Iety\n84zQ/6xxKaEv8SE3nYP2DRym5LnIjQ8qusmks2JCZDXG9eCXqejv4gI52XoB\nfsnJ5aemrZ4n88Z5PLmLn+FEg/T5YUGRAH633YzbZdiYI4N5pLXW/uqrfv1g\nLR5HU0e4v/n1WlfXhnc9eWl2pSoCtCnxzDwpY4NyJqlS9KfK4HDojjMcfmgJ\nKtR9+k4n83uSCVr8nUETqOoUmj6ozPn/wv8RxSdFIIOb9DfqwzaMifw9S+o1\nGFafoFS2hyGA7YVSG3c8dPsLP4lGcR51q+5weA9vbeiLR2WNWmbo5xdvJR1X\nCc+lwIhpzoyCOhbPLIuXDqgs0y41/wVSIb6QwyFXqHta7mV56QspmmIK5kei\nLzlab4SdY+9Z2OYJEUy01fEYIQ+YmiWlUCoOpvYryOi21rMyKlcCXiPWscSJ\nYPl71UbR0xg/lH9KRYb/M93e2IVvNTk6LNVKkrQrZ00r2mEVG2aE4JdPezqU\nWs/XB4DkBD/qC0sQr80DDytXIll4aXUkKnnrwPof3DFWQ9xPMNnxOP75GpOY\nJaO8H1hXvxMsH9oYCfbOVHfywEZ4fOrjoqZjF87F5ieaf8wIZ80Yu7Z6ctl7\nBpWH\r\n=aJSf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"ca30dfb801acb0c7e222c7b10489bd4eb22c5010","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.3/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.14.2","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.2-alpha.cd9441.0_1559749127383_0.8007805125360434","host":"s3://npm-registry-packages"}},"1.1.2-alpha.fad5b9.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.2-alpha.fad5b9.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.2-alpha.fad5b9.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"ee2ed2e9a3ed6429d62d98360f3d36ad3b338e77","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.2-alpha.fad5b9.0.tgz","fileCount":13,"integrity":"sha512-BYXWTwckSOLxS9+4Rz9yh4P7CniLV5yfZ09C+nc/se863qsQM6bOvV7lbE4KNNPTX+dcbEbt8KMZg2fwPrEbNA==","signatures":[{"sig":"MEYCIQDY8U3bxfmDSlgtrxVWSHaLNsGqHe1Hfpi+4et5MPuRAAIhAOMXFkPfM8ui8eonJnsUztHlf7zP+nYwfApBGkgJxUZJ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc+asPCRA9TVsSAnZWagAAkUsQAJsFpN02815rxlMsY5/p\nU8Y64p4Xbb3qCObmyG22vlljZXkgtOIZlPVXNnSzrN/9EdbnSlK5FuD5WfrY\nUNHDy7UfLegNXbt9CZyco2AMIqbCn2f7L+A2cmn7cBvlEkDxNvw/eCPFY1GQ\nf0LaBSIQpC/skccYPtxr8MynXIJyd8q2EPqS6HlxSGbR8e0JRc0u0DNtyrwc\nBa3xvCIwdQUwIVTLgrfaVw9MdBhSw6SaVoxE89PHMcTALAJDjNgj/BEn6XlJ\nPkV1oC6lPkJGvAcdps+PS7goJtjLHgrqVHQ2hQSSc3dJT7Kg8LAjcAi8CiuQ\n342kbTaavlR3u/RAR/yC/VTATOnd5Fbe6S1tAgyTW7Lebcjt8+g33xi6xn+8\nG3UyUfGZbtoRA+ae5BrDmpLo21drS7u+kRXtT0HjHghKQQ9C9X3C/lI8x12r\nMJmCqAWpfTdVv44+eTOmX9EL9vbul4oO2U+wkX9Th2tYiBGTnXPpTH05a5Qi\nipnhXKDFvTt5BrfBRvixECNtmjlUgZxUQOD9n07DChEsH7aK8dmDJDqauxfK\n/wivyZwaivsAC4CkzM5fHUBTVM5K0y4uJvlbnJ/GQayCCoyJyGVwxW4VSLJJ\nnlEurIRnootVHtBcX64rMOq99+k0Cb90qgHBER/E6PCWhZ26Zd7pEAVqf8Be\n4Ufa\r\n=4yzC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"77297c197d84d89cab6d471bf6021bd3b6417d81","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.3/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.14.3","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.2-alpha.fad5b9.0_1559866127183_0.5735352001010694","host":"s3://npm-registry-packages"}},"1.1.2-alpha.9d68b9.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.2-alpha.9d68b9.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.2-alpha.9d68b9.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"8d460a74de33a80956640ef1c2041154a4e74f2c","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.2-alpha.9d68b9.0.tgz","fileCount":13,"integrity":"sha512-3svljdCATn5ExGj5GhH6u6v1iLol8JCD8sx/hL5EdNORnEwJYYoyfOixnbKgiM8VCrrHV2doIPAOzMJJLaVKcg==","signatures":[{"sig":"MEQCIHRyY2VjGQUYLwNIjdVP1xxJeiokalgRMMvldajFrHFvAiB51eNULQ19G0ih+5CkI3PUIWX5tlrEuNBqFeKCY88HsQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdLJwTCRA9TVsSAnZWagAAb28P/iHZ5dE+sHlshCEwkhVT\nEFev9L/9sLKDqJHOGZY3bY0IsbG4tW5I3GGxeztuPYnfTFkeLtJSDW5CnnTJ\nSNswG5LIopXtBKVZeqEuAvNnOUzkeXl1zq8GYqkvcKxm80dd7RNTRrjbj7yc\njexnn1cnA8OyrKVvsu7AITPecfwBTe2iYOxlWbEjL184DdRhU3UXB9keh8Vc\nmFLipL3N+XeXVLQU9YEk9dOqvviNZdzWCc4o+sOg8mT2wlGxV7DXg55ASyYJ\nx5LN9sYpxbC05R5WV9py5/V1Fh+2CFapUad6MF5ZqSdvqBA0nMuJugFkQoNp\nOfxA3HddBDSgEo3zx/5z893rM/wYWLDEJu/mlcYxuaD7iy3lpq0c5TQwPgq9\nSBdu7nkNikwzC/BCKajqFFYZper+fBoamm5AREiAaoe4wG6txVP9mYk9P7Ln\nfu2h7EYpkaJCTtyo8H7+lAEEqKe8MjONN+QfNWM4WcaX720vE7FgS5nXyMTP\n9i3g+OJYJE99OzMrHyO1BuwyoEtcQp3l/7ow+L0o7zBtIpGVttsoHNYItAtm\nzEIl1NeoSUBfSY67CDiPkVJQpUs0tyKUde+nrg5Kh/nbyI6W65SCwji0HOso\ngqEW1rUyNb/HGOoog7TBQI5IKzj0D1+RW2fj7kH/5JrHWWRzTEFvNTyNeaAg\nTjPp\r\n=h9PM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"ae8912d0d15ad1a0d3a2cf48d270bb344ec6ebaf","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.3/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.17.0","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.2-alpha.9d68b9.0_1563204626657_0.4470249650131144","host":"s3://npm-registry-packages"}},"1.1.2-alpha.7b91fa.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.2-alpha.7b91fa.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.2-alpha.7b91fa.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"a55b14d2b271fa39179ba7fc99e46fccbd07a599","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.2-alpha.7b91fa.0.tgz","fileCount":13,"integrity":"sha512-ZPf0MFianVLa5BbfeGeTI0WG+jZwXk7k1ftcj5u2e1OGnS5GX3mkt6eI5Q4WP9+dwclYl4Co+8GOP6b3Xnrd2A==","signatures":[{"sig":"MEQCICZZq1YfJFv141ewlydc7Ja5CsIR0w+fCCNNpdNfJGZpAiAI5MCupehXRwW35aN033tY/PUvGp0yesOMkDrSYvRi8g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdQuA4CRA9TVsSAnZWagAATnIQAJ01ZKu6yZFuopEnGPxP\njT6+9Jxg+ZliuvnyxLQCrJqQZHQ+kjrsLt3aKekAGKGWxgCj+WxJNRUytSOu\nn7oddTFFlfKsjKqqc0UpcV6vYGJa6wkEGddzt9s5nXW63Vae0pv90vqfZaz4\nkPrzRmCcEfmchxoKJnMd4WbVZ8r1tBEtOKo05M9uKLHOuIQLjM83tyyfMKJr\nMzvNUmG+/i7vifCRsmo679TbnK9953h1B6CAphsrdCoxqaMAweQ5fOE5sbb1\nsNdZCugA9Uf8hJssqI0TTL8JYOScmpQdTAwIlgr4NPXneJFTjsIEsKa3WMIl\nEt7GUvRXUtcaiBa5lUOIqHAQtwPYZyzWayMnmAKduN/Kgnf0k3G939sIjtSM\nDULtpq1o4/D08DQEgVN9NTSJDkd1ZfvDofWA9CbNriunYds094zHPJBdarcY\nTsqNdFFdOJxtQYECU1yt8kq4gRmMdvH1ljPMmB0awoxqY/vvR0LYUEpCefuq\nJ4zdEQJaIgvb1awzWQP3/NTnzxryKgSgcBVt6mWHVBXf1XvsTDaV8JU5WIo3\nDPJJLFPHBK/qu6RE5nLIEwVXdN30YVfAdzcB1zSJbWTGwxVry5V6My5HcXM9\n/5306ksheVnWMUNpyLZ7J2/NK6eJFaAJCgx3VOzmihOxwPaFKo1tO5eQLtn8\nkYNx\r\n=saoF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"42c5302e2d5a7a456558ee911c57c554d1b4ab51","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.3/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.18.0","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.2-alpha.7b91fa.0_1564663863673_0.16251358827600426","host":"s3://npm-registry-packages"}},"1.1.2-alpha.25cbcb.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.2-alpha.25cbcb.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.2-alpha.25cbcb.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"364b5ae817afa1723a7d0dc5ef062fb905d567c9","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.2-alpha.25cbcb.0.tgz","fileCount":13,"integrity":"sha512-bIhOH2UsNSnxfT1pfy/QGH1V+kSXRDRlkPJYqDFBmtR9UPXcZFrLJeNHBP2IxbE+gVdoNdyglE/dO51UOndpuw==","signatures":[{"sig":"MEUCIAop4nIoF0Z1mkH7K3XuUQomULUkG9LFPEdDVnA4q76VAiEA/Hwcup3EOBAkYOqiINo3kVgbootnyvVeyfnKIW77Yes=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdSUl4CRA9TVsSAnZWagAA008P/1RRXzO0my7FgJ2Ebk4B\n4iUICe2GOv+MCY8GR0EatD5CHLGKDitKcFFhOrXxgFMtTcdp9v6/ccwehhK7\nKSRuz4A+DTg/Of2j6cAfZyPQ9KiWqHoijgNwoA7gg/ul9QAy3JG+CIqfuWxQ\n97JrFAUXMyWT5bX36XOk8ht0PRY6XHQYCVcmHTuzEGEOHSIcSQI3bLk/GG0v\nhOKVvWy0geXlMxkXjG8xQK8UKgJgHit2O8xidl6OKMX5QDlkg5zzLPOD+lRh\n71ynenUzIciuEoVOqFK6l+0+CQVMYvwpnXmQaBN7A5B7P8xbWBacgyt7OYx0\n83NYTBtqNOlmbh0wvEuH7Y0V8iuYNYUtZlASPctzKnzu8zYEK2K4HjyTYGhF\nuzVlI7nQFsQBI/T+vEjdoizodPzgd7Vk9HtqaHJB5k2+ury5MBofCyWPNaYh\nFg7DleMfN9DYT6UZhg5EmYJn0aQvyOSlH1xAZbhfLeJU8kK5z8UgoLpXXfwI\n+9S26FAteegJg7bYjQfI357hU8na6aLRglZLBP4lEZZW5cme1f8iWHU1vmeK\nOS4hxCqPbUj2BAP6VlQ8c7+u+rYEZiRvmWjZqtT+8lUXe+5yyiC71vSiy4zn\nRLVfEsa8Q5wvnUesdifeAfcvrrNG3FOyA2Zw14wkmqA/xcroLAU2OtQhUw6S\n3oQH\r\n=/sMr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"e9f3e31898a1dbb80d3eed180d54b9447aeff5a4","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.3/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.3","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.2-alpha.25cbcb.0_1565084023638_0.03459294207211028","host":"s3://npm-registry-packages"}},"1.1.2-alpha.2a8e4b.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.2-alpha.2a8e4b.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.2-alpha.2a8e4b.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"52969feb384bc99210796efac255c66c0a9506a4","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.2-alpha.2a8e4b.0.tgz","fileCount":13,"integrity":"sha512-xcP4EdrkmWOFZftVmSn+z1Dhkfmx5J/zz72HwPNwjOmiMBtIavQA/E5nbrt3P/gnqlSHVnoaHn5vkNxHtdcs0w==","signatures":[{"sig":"MEQCIHUW5ENxkrBJYs/0RM/E8W3RYHqBPsTB1HuBaJzX2NWaAiAD7M+HfuR+Xoe4THtM1yZ/1HXkIXmtDaU7tJbUqAmQMQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdSp+7CRA9TVsSAnZWagAAangP/jMf6THzdyxEEmh8ICeV\n++ZNTmUXbt1pq2NnsvzU3gpOYklD4yG4SRLCQLmkgcz904LiFoZ5GtEVmWZd\nvLlRqOz8xpJOSh/7FQW/QreSmvmOVdR3WoQf8U6vYg5yledcyPQD+wOHMKRP\nxXILMmAs5Efo6U+auflCnQDzwv9vHJf4cA5yXUkRn9e4zyFSZFYey2pgZbuC\nQY8SoJEcdHaligPOTsWA/c+Io10ARfjly1UYyO4gUOj3wlA5oJgzjvXUp7CY\nZXNFlF4aRqxl/MhSHg4P6IjSjiNCuMIjJngO5tDaNzdtj3zDaw6O04d2IS1V\n0K8t9HmndKBhmEmK/ujK1CnMur5C1FwEMXw130fdTUDGEyYr9zhVPVLNQbUV\n/rej93hxa/wjsHO85jWP7zWJQQOtsYvVPNgPYmeb3tViVPFh5auS6Qzt5q2d\nLVizMp+2naTMWF6NC3OPy5boTIhH/T3Yt6loMc1kkllQ/Qhl16KL2pLf3QE4\nliUlgLmd1Sard5PtSjk/RIuK27n313nj5cYzJs919tT6ZrJNPnqfHw1Lf/3+\n74r0BNy393HtfiirUt/e3G57x2E22LhMYB67vlALpYsyQZfdCHnccPPelTJs\nQKkYzcWTu6I3llyqiZP1KdA/f7NLSe1gui6TQ0fN3eNfrsngBXrkJwiyKlQ4\ntH/r\r\n=50/s\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"576505bd720f81cae66127a18337edd76d4a58c7","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.3/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.2-alpha.2a8e4b.0_1565171642273_0.09082179671048562","host":"s3://npm-registry-packages"}},"1.1.2":{"name":"@codecademy/enzyme-helpers","version":"1.1.2","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.2","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"f5f07c79f03e30ffd5bee4b938c353a9f111160b","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.2.tgz","fileCount":13,"integrity":"sha512-wEPGnwsSstBjhTn76DYVilssCUYGI14vC6UV2Ld2/rr77phV5Gd3kQViomzyIbUuEVf61e2vUXHfKWx0dXE8MQ==","signatures":[{"sig":"MEUCIEjStIDzHRNBuWP7xShNMlW6fhpl4t/OnRckDKLL5JeVAiEAlyyr4UT/3F+g76j0C66aRlTUtvWydaDscdMuT0z5bVU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21915,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdSsN5CRA9TVsSAnZWagAAvasP/3rMK2TNcVSgomZFc+IM\nm8AYbSHZalVNfZXJ3tF5YX6LiGRmo9WtBTuR+9CXnvjk/9NbPeGLCQMJ6qiA\n4m1iUQq2qEpRTV8LGZbiFyiR7TSeB7+Pdo9jfIetArx2LMFL3SGXn2oFc0IJ\nHr43CMkoRc0Jz1EfRhqVKq69CxDnU+CgWvQkhaRw6UcnydiR+QNEc2MF7ZsG\nnOjDeglQO8E7L3/u8Fe5iz5nuQdbA3NUaFEeqj+DJjO8Ou8IEt48e7Bdq1Sj\nbVQCwhZHqlUvFv49TaZb6Mpjx+cGHoo8OyAyVt9AGqocDy24PSlG3ZZg9HFh\nybl6yIbtpVmQWRJ+58erjuFZhfEzE9GoTYQGTQ3111BlBBDkEW/5kl5GZhx3\nXJr3vY9IRE86EiczfK5gb6GkZ0SATOx/luaT+6P6TYmevHrYMsHt6Nff6hL9\nFhlhFiHskchSSR8loW7WAQrW4jsJTu6cWDzmehCCTP6iiUUgnlO19qp1MhbA\n+oMwosqr402zGW/meqJd6GJOcZhshvry6frHjiTMJy1TNE4C185y1VmP0/YD\nlu8FtaCFp3jgmins3RvUx+bWl1jQjOl0ojkwBgV4NrI4DmkGyTGCawIsFOPQ\nYPUtYQNHqKhArJXlhYIZm+H4YVexnEKWB4iHZZQZjC1I5NaGXyFu7wfwUvit\nyOxs\r\n=boLS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","gitHead":"207ac41b599aa25de529e192166ccec18528c12b","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.3/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.0.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.2_1565180792666_0.005654486261327696","host":"s3://npm-registry-packages"}},"1.1.3-alpha.6081b1.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.3-alpha.6081b1.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.3-alpha.6081b1.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"edba5b3b5698bc9706d310191714a755174b9893","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.3-alpha.6081b1.0.tgz","fileCount":13,"integrity":"sha512-kqQGnFSkiCEE2YKPgvGgUSQth4tlBGh0BCAWS1T85c//Yi4EQwK6u7Wwbr9iz1L8xlsxb1/XxCZYTSUz4EWVpA==","signatures":[{"sig":"MEUCIDgV7l5N+B/hB+VmdcxbJxaEzWOCRUpRgLJK+plgLxsLAiEAuuIPgXXyX11j8zzhyR8m0SDqisW075BbPf1gvJEUvPk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22177,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdTDZBCRA9TVsSAnZWagAAoKkP/3LmsmJpagsw0JGzN1qs\nShvCdZGr6YIPmOrcYxrHb5OxVvLrPLdQex9kEH+ZnfcrM3+cOFz0c4z6XMCz\nEGH5Miv8Kcrk7oOmOO0cziGzonNx+CTbvKBOGcNoLOjgMrmcz9q0NlcxY5Pa\nIxT2ibKUgWA0ib4ryyd/N7h52WtPxIyfQQ9NXqmARs1Q54TLR+8/smfsYn+G\nFvKJQ5urnxvLjrMOyYJxrRUBMgdNEpULv34iy7oOjmIuj7NBXmfjAGWPZK/8\nMgS0YKyvPN1WjKdrWIzTe0KYUEv3B4OiyH2VadCHgd4efvwENLcUOqAGCtBt\nEmrKkatbArcrr8cb8MiGPXcSLqpz7RFU7p6xIMG/j5TQA89TiRdylayKGKIm\nhFvtn6lxMi7lGodfQgxElMjC85Ncs11adEYPt6vwo6ByUkuIP848U8MJtXlR\n9AByqaU3edfRkZQpUlV4CXiCzDbwdd+I7IrDsmLRRg+WIJ/ZCsMWkdIsMHW6\n7479Gojto5TaUdfVhswiEqVA4EnxK2OZChvewS7q1ADAWFRxfDZ+WngprDs7\nv6bQT/ELKiVbgPKwGa7aDGI2dKEebCkpuFlSmwML07ZZE4GytV2XL1r9rdcU\nHfN7Kcl4aQnVkCxPlWcMsfqNRuZxrytsMQvYqLXC4f2GG+Il3PDhuw8CaQs8\n613e\r\n=4DE5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"a0e349d218266bb4d4bfb2bfe9f663cd818f96a8","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.3/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.3-alpha.6081b1.0_1565275712525_0.9846966087279521","host":"s3://npm-registry-packages"}},"1.1.3-alpha.55c2be.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.3-alpha.55c2be.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.3-alpha.55c2be.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"7b3690d6850f5804a9734760f17ed1aa5b9a30f6","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.3-alpha.55c2be.0.tgz","fileCount":13,"integrity":"sha512-wb/5cPeBrAmzPtlrFxJPulWqHllZH9601aiiPg5GRyAYR8U7UzElwCOHLBPxPZIuR80BKTnakR37EeKuu3P4Yg==","signatures":[{"sig":"MEUCIQDdzySDi93iqUko4QuqR/4U0aa75yi+RyCTqAGW0UL/BQIgPYHQUalFvVVJuEZW/3My9kq4HKtHOg0+YF48MH4EzHk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22177,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdVGHQCRA9TVsSAnZWagAAl3AP/0pzMtxZ3CE3/qpud4JS\ndgFZ/l+DpHy2bkHwJJR3NCgYaNt+GySrauJjLXtL5T3pv3YHxBAX6GDMZGrC\nV+jaBIIfQ4AGfrqovKXYFBwy24Yn/v0VDldY90XsRzG3ncNgOFFhbrdIs2md\nDvi7yLMDbxyEQACtaAJgh7AtLQgUe5lsjnx+smCS64FAc0mJMmzvQy5UwB05\nbV9PGgQOYVES7yJGE3CL/iwPZMy+0rA2yLcFWJN7fSCxVFMEdk4xfAPhly/7\n0YkfinpKR6i0DZb9/UWxpj4CFrx+GHahAO7BT5g8S6L66IiwT3RncPOqrsgO\nr0smuz6EMedw2bFuIegOAfH1zFPbmMTXd2nttMvzdfidC09e6qu5IPzBm3Fe\nvQ/ppE7gjM7tys6P4xDjHvQF+eChh6TEuDXmqCqp5tUkrXEN9mbpayLR7zb9\ne04o/gfM3EgQxbBnAXLC6kKfmdYcPlF9k0m/77p/tvcbx7ErW1yadkczkzC4\np2XaafXsKYv6AlrtpchpPerWn92strmf2plR1x9kNFrKZvdDF6WVlamI6O4K\naxPtSgGNEeN+14hJNLShNgBu6OCZzPU3jwCIxpcSemaVa9zGAzcxrdQToi8n\nWH9rZNIIOc42zGndpmaKyDx+zTPG9ml2gueZynxFzm3KK0BLnKhR2Qe1JxCK\nJgnj\r\n=bqaq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"7c724332bf03fc18b024da4ecb0eb6472d7506d4","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.3/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.3-alpha.55c2be.0_1565811152123_0.37929610732069996","host":"s3://npm-registry-packages"}},"1.1.3-alpha.f2a0ef.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.3-alpha.f2a0ef.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.3-alpha.f2a0ef.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"81c8db19307257f40f0926db88307db71180ca19","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.3-alpha.f2a0ef.0.tgz","fileCount":13,"integrity":"sha512-BIe28bPts3xqpBp+dmNCuGLcwRzbJ/4OHRg+6ZwBMvhWfGP8pZ5DIbsWAfgKBjHCxshD2GeOxfERbOLl7T9+zA==","signatures":[{"sig":"MEUCID/5iWPZrcUehFcjx00o+Xt3bt+PMW2Df8WHFH7SJO2OAiEAvbpX5d9/BO0333kH9DpIpa3bd1Y1QU1LmCiF2DQs9S0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22177,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdVGSgCRA9TVsSAnZWagAApvsP/26t59u3yJFdJmyQWzaQ\nHYT1ZAxRMJVLKz+OK8jg0SyLH6t+zvXOl0SLqFejjgciITk3PXATxRZiB8+B\n4dykM0WYt/Nx4xTVuzEtUvHEFF/eeZypm6DmibBSoDNqCv28HcVHYVG+ING+\nOCt2pp8i1+b0nhqhJxuNSOlo4QigULNVe6hP3HhizWo2JCVB+FYf11PWxnmK\nw8iPslZYmiPcPyMY7oBAuiQ0FAd9m1hUAKVExuq6pitfF9yaeSJVydb44JLG\nzkMN6vE9hUoMlN2Tg9TfvrdLwFMLQvrU5M9Iw4xBGGu6QqGfq7W9kJ+4xxDe\njsnEl87THgbGOeBkXQcMcvgIEDLubhK5Bbz8bz+CB/UqafNg8M3qSnwy4y2y\nsi8wIaE7DuKV61YZzDofgajlMuFBgFPqqx5+32ouYWa0I7osPVg16wZiWB8O\ni8+zB9gqS2cN/aH3/gRnAufK+VAfrjtAypK0TnbHsRYzeFjfc88biZVUUCxc\nZoeyTPyIs3sfZPbdW+UiyT75Pk50bq7WzKnASyxT/cZJA1fC08MjDLYXNzCN\nIQgwtSkVEKTw+RgHmecxFVj18TgobHG/LfGSs5M2ynmyB5+oIecqZZXqLjOJ\nj/M3U0BOJhi9wjAk1OO3ix/rr9J/3u7A2cqjx/EYmtv9y2h4J2Klx8Q+PyRH\nectq\r\n=J46G\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"31fef95c7f228eabbbbd10f44b1cad4ba500384e","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.3/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.3-alpha.f2a0ef.0_1565811872058_0.780490873837687","host":"s3://npm-registry-packages"}},"1.1.3-alpha.98409b.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.3-alpha.98409b.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.3-alpha.98409b.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"f5067e99ed70539fb278cc917a6d3750eae6d160","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.3-alpha.98409b.0.tgz","fileCount":13,"integrity":"sha512-oUwHpbT/0esagzPd3mlxqbpIuMaJ39fGIV9R1fbsEixtvSq0d4mTExedJFSTnTqVPQyxAKqtTM28Xft5rjlV6A==","signatures":[{"sig":"MEUCIQD2OfVzVGQ7U3QL8vObaVZBYMxJ1j+Ipf76V3NhiPYlywIgV6/wgs7RYX6flhEAb8h7FAZSuT/2gIZJCacKg0PKen4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22177,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdVGeFCRA9TVsSAnZWagAAJ3UP/iajT4jXDEKZy2IezIYF\nt/GCAeb9j+zY5TeZjVZsPFtFabVkFeFFR/XK9usPN3RDyAurBGMV8ypTW7XC\nzuqC7BSrLKsXeQAeTMt285U7ZPyyUswCo2+CIhqF0c6DgTSFMk8QVUvQ/FOg\nJOn0j3ED3/QcovAHPIIpwZR7247jkpATLXDV35HMaHQ5YpETSrvvSOSRgPx0\nYoojgepXw9EOT9/U5g4rll4qwV42E2GhqqnDdaWKPsA/EJRRcIi2VmRNoMJt\nkinM4J6a4Ua1gmZ0RNPvp6OpFTbLU3oZ/QWDSHxZou2VNBw9waySHfe7Jmpr\nlsbN6TqYBeU0CDfmYkWylt5TW9+MTpXrJw8N4fXimD3634WDLD9sd63Eipzr\n4r6laxG7sRXgETfIsd0RUM+0x9U2/RpZDF5buIsZYm5Pi8ID1oj4kApuB5Vr\nLEMa8eE+7/wwXMYDQ5kXsOXSzXcGmPEDdVJ9wnaQT6bqOhbwWwb0Eb5C5WuB\nekkuL4RPBqWsZ6l+Rzm9LquF5AgxeHJtdf/dsge4Vx6szzXlxn/SMCYV+pFM\nlgbx1d7imv4s5s6sTvt/UFCYnM3B9mY8SG63/DN7wM/1jzg0d2sKOv5EhnSD\nZNznxKzt7mQeO2/L3j32nUYyCu7sln1cfEPXPKTQQrMbnEpakpgQYqQQB8sU\n+3pw\r\n=M9tY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"670d401bf21ed2f3fb7e19cf3518a6540cd4e0ab","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.3/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.3-alpha.98409b.0_1565812613109_0.5183840901514365","host":"s3://npm-registry-packages"}},"1.1.3":{"name":"@codecademy/enzyme-helpers","version":"1.1.3","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.3","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"867b9662492696329666ddce5335bb720663ad41","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.3.tgz","fileCount":13,"integrity":"sha512-ilraLCNVKK9BcDGkT08x9ZoHEknvdd/GgJscceBo/zpQ4NecoFw0/Ix26ba7d9156ONrdd9BSzz4QUq5lbVMFQ==","signatures":[{"sig":"MEYCIQCZjvJ8jQy9mDbM+9f2siNnFJPm5nZCKjWl1REVyih7CQIhAPeFi1FJPMqfNXNTzTuIeW1Lz/JfnoP3RAwPBON9LAya","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22132,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdVGyjCRA9TVsSAnZWagAAS5YQAIccniJwfBgg4hEGs4xl\nJNinqrA6e+18GsYd3KMrS4T489CItnKy8DE/iO/6u8mxOozPRqLom/5vpO9V\nORIimue1RMyvp7DmqtN1wr/h85EZKfAOj+5vnGpU/iZ/woAetJ1xspfQ/5/V\ndWZLccZLuEAz5HGKPCpO7NK5wnRfHjQo4tyo+yKOo4F1HmiC9duwezJ0EY5q\nyCPZ+uWvMD6LZDhzuQ5a0RETvVPXHydmPehkkkt5CAalOhV/4WwO3oBcOnH0\nxEo5zc9iICs1nbL6FCAvC0/pKqEa0vriJoWfB0UIzRXCzWd+s8nEd+L83YhD\nGabGGxAElr9U1jA8C/RMlRqu7IXqkerryp+eBn7dmf3aT86UcDqLEYhj9mnr\nzJKwUgr1MNxxPotUXHiL0CLcGevzunTMDTYw3bx2ODGn9aSbuMwmzMuWc3Qt\nm7ra8w9403GldgUUdVx/hUn207nZ5HZgvnYBKrJi4/s2sYhiaQ0Pbvfck81x\njYOYH5CGKdtaGAi1yqRkjxBKPfZRId3vhZ6np7HzL8/wKpBVWTswrEGmHoyj\nOJiersuudSxUkzT9kxLHPgQT45MWJqykXJkLkuuE4wI1dBQtCFWDbKhH2b4g\nwiq8uedkUg7dVIwz0qVsTs6r0uAddeGubH9pn4f1VC1vUmo+IZ9AYyiLrxuy\nChi3\r\n=SYq4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","gitHead":"d9acba5589b887ac508d9aa4a2e4862e72a3801b","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.13.3/node@v8.10.0+x64 (darwin)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.3_1565813923142_0.16437972230865983","host":"s3://npm-registry-packages"}},"1.1.4-alpha.e271f4.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.4-alpha.e271f4.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.4-alpha.e271f4.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/RyzacInc/client-modules#readme","bugs":{"url":"https://github.com/RyzacInc/client-modules/issues"},"dist":{"shasum":"e6f94b5eab2643b8042c5009ad850f0057b63829","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.4-alpha.e271f4.0.tgz","fileCount":13,"integrity":"sha512-alPVyaslbHv+CDSImZpmnUE8114rurNOzqNAGMisKYwhrL0F/VeS4daITvL1qP8iRcCJFNMWUIHbE8rIXHgwBw==","signatures":[{"sig":"MEQCIGcKPHniD+Z6p4hFFXAqboF+QnVkjpBjYLFOxaiYm4kMAiBom2SYez0flfsck66hg8GuKWDVH878Ocl6YgQYGF0fVA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22394,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdVsrECRA9TVsSAnZWagAAlUIP/1HNqvjuINZvYXhF0kqK\nrH7phkfBOw97fNRzsPaXveXDlSGxtdAWZ+A6BPYymEtq4NmF2EmB5FJjitj4\n1rt6LdRgZ91/Po5qtuMvJAczOMf6Op2m3dK3YMzhZT8IwpKZimxpay1IWZ7S\nVImuj5CGTMLhMlqaJCHxPdJIX0YrfyInaN2USbRHEGGkvOaxqjEAi58InI/R\nqxV1pEt1C9KDkaORxfme5HbKq9JDSBtplTRTZfANBKFJQ9v+SiR/NfeyCmqU\nvQwlviwsFYbCByQpZC/dd5Ks5eJ1kKGvbf48C+09YagKnaUGeFRMQKZdpp3/\nqOPzLKf0p0qLepQ5K7L/6LdX57caYU53uCg1P3LmEc41tc7mV4CUS+uXODxo\n8anqsHArUG8fRSOH4xbG+McOgkJakOmzxK/htpF9WodrcKF5WY8oLKoOtbez\nepk6jgCGQqpAaoYyAMtCRdm2kYTAwObOqS1z7I3Pz2GuT+F8eH0WNXk4dehS\nP5GL8G3JGkWjAwbm7I5aEXEeym8f2asGT2+yCTfFzY0EBcpG0WV87+DRDVOh\nqBk3qbE7BGUc6CObUyrcyTpB4LIPo4SH+EN5wzSOaVIFaAjon2SSQebYnGNu\ninOeWNvpFBL12qv2bL9TeS7rzkrrU8oJc6+jncAXuKu2w7PuDQi5f6VGDbtA\n1ELq\r\n=cDjG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"e947f9fa7856c68a5b26811cd87c554ff645b477","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/RyzacInc/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"5.2.0"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.4-alpha.e271f4.0_1565969091962_0.08317497282946595","host":"s3://npm-registry-packages"}},"1.1.4":{"name":"@codecademy/enzyme-helpers","version":"1.1.4","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.4","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/codecademy-engineering/client-modules#readme","bugs":{"url":"https://github.com/codecademy-engineering/client-modules/issues"},"dist":{"shasum":"476820afe78dea07afd152bd943bc56243765d97","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.4.tgz","fileCount":13,"integrity":"sha512-Xt6F0JmwdCzWyRjfULG2Dny1UizBZzgVzVk3zpRrU31GLnMcvWKBt87zjsvReGKzW3ToHN+aAU6v4/1wr1E0AA==","signatures":[{"sig":"MEUCIQCN/2AuUAiMB6zoWXH74mzZYmCGHamdROiwl50MLTPf0QIgKFq+u6z5es0s+tLftRb2MU+ev3zzWm512YQCvZK5TgY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22461,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdXBliCRA9TVsSAnZWagAARb8P/jZafMTS5Ol+dFYgTpSk\nQ5vQvyioDUAET991/lXDSqt9YwwLLEuPRMbBBkWZWeweQoUWrCIH0JxwpyN+\nVylOPOsxbL/GjQnPUf7PfalOK7caeELL08sIVURWYWbUZnn/5fWIoSUluaxs\nFdPvFyxPm+w5lGWHz63Vc26IJJkganaE0Py0bQB62B1e/qlLZhnRJT8tc/wv\n1/SLvcGlqnsfur5HcCLu3lg0jhTWOk8OBg4K1a4FDWNUeeMvh/+Je6Y6rdWA\niTjWGiYHSxW3VRI/3+bZbz73CpWLZfm1vJA2YawiyDhQNnewBUnzopoUU/xK\nOX8tV1Aqdvsb6MbdFw9336O5mPjzGEKXAUYFOcANCIB66YgDhzrpt0W/6Woe\nYqKvtToXTZxk/GfRKwU+7YwSfIKkv8ATNkGhcoxCNETJrc5cPKn1+jrDYfIF\nx5jUBzPJTN5NsVQjJiqOA6V9h+nxuvKXwccQJTHKMEqV/2sBB6k5EkhrKry6\nh+Yjmkpj53sOroepU8zr+IydhYqnuD6vPNiZ9bPoMlNzdkGwJHKmh+yqDiUM\nKU2gxHTthhtAEuEIdm/CNmeXKDM7A6/l/eB5x29WJ/1sBrNCmN4b2aEI7BQf\neVIzKXzQuAkHsaJn29UwAq4pBePf1UW6P7Lop/dfg9x2oOICnbivvteqfEcK\nX+kc\r\n=IK6i\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","gitHead":"0f3ecc0d3df7cc4a0614ffa4c299207233f2f317","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/codecademy-engineering/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.4_1566316897517_0.2884455834815247","host":"s3://npm-registry-packages"}},"1.1.5-alpha.adcac8.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.5-alpha.adcac8.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.5-alpha.adcac8.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/codecademy-engineering/client-modules#readme","bugs":{"url":"https://github.com/codecademy-engineering/client-modules/issues"},"dist":{"shasum":"eadba26f40c54f6d85b2a5658d6b8961eac25808","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.5-alpha.adcac8.0.tgz","fileCount":13,"integrity":"sha512-vTEhaa7fj68oq3Eo/Uogv9xjKwLUeWUDzh1XYr8m8IHII1FCSILuz28V6V+9wUqOUJi1t7mDIsvH3ZC5Ujm6XQ==","signatures":[{"sig":"MEYCIQDlY5XTQad9HeZuo3R3Z1tvnvkOv9fOXGT3B7n+0wyHuwIhANhS20XxVg0J4NHWmmIZ/Njpc72bAQi5UtvxyGx/JyIb","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdXCaHCRA9TVsSAnZWagAAtPoP/0thd8DHHajLwOZbJtBd\neiKFofHrRj13av+GTLYHWvROT6Ua98i3EboBOfoJWiT1ixchCAxd2Z7jo6lM\nAn0rDN1YXhZiyvMreQYsCHQVFQTO9bCsBvjLmAYnnzZvTAB7oiq+ceHWRhoG\nGGeohbGm5hj9+26yAFs3ZIO9E/n9Vw8oF2h3C91o8CjtmUi6n2Sh9KOPiZvt\nXu3do5VjVvTrGxEJK1nKosWd9y78uz5acNZ+su9bTnAV1Yji09+Hf5cvTqWw\nLotiCXabEe54fvraybXPigmoiexvOYg6fBhidktVDjW9IHQmToNON9nNs+Bp\nYTNRH9jcn8tzFZAcuUd6bglBHEa0FPrZ+Bxhu+C2nlgoYUzTOAt7CUCSnd94\nT+wYGByEBV6Hi5KS5XzNLr/sZDhv5mWcV6U8gwcE5CMi6lYl/HCJ0UadIRdB\nvCxEyd0wJZqLg8iX52lRGlPxNkNXj8kHcmfUtwBvX1lPD+V2q0jpa9iQe/u8\njv6gxvvOpvrvrsCiJeIc9rC05QbxehOSq3+jhBnCZwSZGPthipdYm9uXFfIL\nYakrITgwzXg3LqV4WwzFZ2egFn0GWNSSNlmfreVE7isAP1x4y/VqrRvHFaQn\nDE2TBTgqoN70jN9c2vcafFzKoxZKKb8kj3vpay5Ir/NSCWQcHbLOv4iS05Bu\ny11c\r\n=BFW+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"59957d276c46b0ed35f3ba7bd8a25b3ef73933d7","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/codecademy-engineering/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.5-alpha.adcac8.0_1566320263183_0.9232319880304145","host":"s3://npm-registry-packages"}},"1.1.5-alpha.522bcb.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.5-alpha.522bcb.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.5-alpha.522bcb.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/codecademy-engineering/client-modules#readme","bugs":{"url":"https://github.com/codecademy-engineering/client-modules/issues"},"dist":{"shasum":"fd0e6a1c9524db3555559cf0c2156a174cf61d3c","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.5-alpha.522bcb.0.tgz","fileCount":13,"integrity":"sha512-kQ06xJopgsf5lMl5bYCjE7XY1tTFIo/2wf5HFkM+f2kbyTXMjOwocnQGdPlYuM50356qIrdFuT0iNbLIHN31yA==","signatures":[{"sig":"MEYCIQC9RP+NiSBzTg5e17dbWwPqf6Pz5jzm3CrR4EZcpj+nngIhAOnER5GE1LndpwzBdjVb7GAhyiJIsCTBncxXYJS+rOcb","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdXD82CRA9TVsSAnZWagAA+/EP/RF8GfuIvvexf+DMkrKz\ndOIUWNwEnunBLRz5BG7vyexKTxYRBDVobjTD3YBVwx91UPqarkRTQ+aB7JcI\nl4zgVtlfqqQBD2ttksQ36n+V8q9QWj6ri/IfjBkVWBxtqPmuigFG9QC6aBs7\nXh8vGAXRX5+tezJEhyzlKlby+IuEntdwbORbLptl52YMEwQ6qPzSNXHCPJqq\nGtESCObyFbSQ/P+FU3tCSwyLORan7NrxqKLS0/WA44w8j2e9+hFnJP2Dbc4A\nskQsHltUnUpMl4aJ/rFIrogKJnKgopBxtmxhoRfEmag/nE+71g2VH0hMnuC1\nmTGTaJfeilS7Xr4NdtOFcm77sGFKMdiEcSpzerQZAvPSf1tex21jg+QpVk7q\nQscVFVFN3NIzsLfH9YTdorjZ/4zM0tjGJquxfncmrsq/URRFXWmjTxKB0dqh\nOzNrhSlhMxYFVTWplOhmkTfiiodNaRDFW8RN+Ma4x7tlycRKlQtGR5hirugv\n+bUCxERLd5WtwK1Ct2rsL9Kdo/oz9FDvTD+Q+bSssd+tKOskPPGO1rTYfYdt\nlpdgT1Xc0HdAGf/V0O9Lbg88jXdp1p5mhYCAv07cWcSNv8zhznn+p6OpCkIu\nlOrAlGSxDMZC81AvAa/VbUodiuwvQSBzrsBXcFIAuETKNMe1P4mPHw+6Iq/q\nuaUT\r\n=ahfK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"e97be1d9130fd8a0d69efbab4227c52b72b03d7d","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/codecademy-engineering/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.5-alpha.522bcb.0_1566326582043_0.6537244921855918","host":"s3://npm-registry-packages"}},"1.1.5-alpha.4d1cf1.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.5-alpha.4d1cf1.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.5-alpha.4d1cf1.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/codecademy-engineering/client-modules#readme","bugs":{"url":"https://github.com/codecademy-engineering/client-modules/issues"},"dist":{"shasum":"5b66265ad2aebc609135a8b4e9e650b52d7c609d","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.5-alpha.4d1cf1.0.tgz","fileCount":13,"integrity":"sha512-9JrDcMZHkkm1duRCJegJmUJ7IIAdebXIUAnCh+9QYW+Phn00ZPc+h8IOzJr3Dy8Nz3qXeC9fNlf5RrSIdRAa2w==","signatures":[{"sig":"MEQCIFvcaI43uO5w0T+MlJHfyOpIlfA0TRLsjyBSrBoPRFHcAiBMX4wrKVLLJOtmfc/G/PhqjEZ1guD4Ej4IEYCV+gZQEA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdXEWeCRA9TVsSAnZWagAAxgEP/0eZg7ybmpFioRSCpghy\nExNJgVhnqVg0SnOZfyZkU6aVIaSbEeYn4TU9ZRiQJr/QNjyiE04BI+sTdO/m\nSUHaKvdiJ0sGVd14gjoCzQCOkKwqZ+Jmu3CVK0IN/V+uMhflEEl5sPYTu9nQ\nuHAAwHeWeuMsSviTo3ix2XWQbDwdQPRb9UzX+kiggY6dx+CdP8rMfDEhY2kQ\nMZ6f1UdMnErgjpEkDOrKJtN1obZbB+JEsZ5mOVJxCkytYsIX5MKGqivGk5yn\na4tov4ZsiKbsVkD4hUyC+4hRAubByZEZdojwJoTuFWiNekiT0KOMFWUVQjhx\n168o9LhqGhwlI8pLxwkDUaOR40t+RY6HBT6GfQan9komTNbOSzf4x0V699mm\nGG/zgdtIqEp/W5GIvOJGbhRJ1iQVdmT4yX+aF9kTdn935+tsZq+GrQTfGAgq\nJs438lnag1J7vUP4UI4GpW+ozchjuvDmc35jDEynDlH42Qq32dJAX0kFntbu\nug1UNzjpZf+O+JD1WBjUPoeDWDQENKVnIArTCyjJfbFhOOwQCHu33Ny4ILlE\n0GL6KEjPLIvI8V5F7YpTLCeEb5gNHJiytlhCmCnvMXBGVP/jtwhBFBYbC1Rb\nNwJetMSd8Zq9MhX94KAbc2lu3avXXdqwhoyifxADuq/Xpxqc3o6OWXm4HSI4\npAz1\r\n=bNFt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"44ba86381c89ad5ffdd17871dca9c16851f220a9","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/codecademy-engineering/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.5-alpha.4d1cf1.0_1566328222395_0.1920477458727048","host":"s3://npm-registry-packages"}},"1.1.5-alpha.fb61c5.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.5-alpha.fb61c5.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.5-alpha.fb61c5.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/codecademy-engineering/client-modules#readme","bugs":{"url":"https://github.com/codecademy-engineering/client-modules/issues"},"dist":{"shasum":"155f0094ff622860128f62cb08ae552ebdc5f582","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.5-alpha.fb61c5.0.tgz","fileCount":13,"integrity":"sha512-pxo/gwE8RX8xg647U3f+kMoOmH5ZJ+DqgiqeWvU9BKy5W2r74Z+Ne8TCBKwp+8R5dZAfXblswYdgK7rL/6EEFQ==","signatures":[{"sig":"MEQCIEuhYg59dePq+8YrSbqAsnfvOEpkbcjYXGok7hhIVyRlAiBlqGrE1BE3qYzJqCSR6ctm2zrxr5PVLdaGnUrQmLyfjw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdXPvTCRA9TVsSAnZWagAA64MQAJNlZ+BUhAmWnjWMuIgS\n7EXtJ8a91vyRkxFb+5zoGvcMeHkv1jnxr86027UyFTgEgHZ93HzYdHnxO7ru\nY/txlo6olz7tkwFdxWQbdlT4qCi43I0VornnrMJFZXv+dEuOkxl1E/erXxb3\nKT5hYwWKs4cHTAhKNkDzYxadF42vus+liQcKzsCDdbDb5c+AplO7Auq8pHfZ\n5oooDeu621FEATGoYi8SJZhRQLzJ8xGg+oLywQcXv2ZxVhsxQX0s25Z0MagY\neQte7JG5m/Fcr8OqcAcqTf3wAGLBstKGQuhkIqaxbuvj/n3y1MkmZzspL+u2\ngQnbE4hFSs0G0mfTmbYE0VlXqY7+p7Jq0Sp6S9ZJqL79pbO3uoBnGYTY8jh+\nWw+luLnoCr/fjfVxINugaWrlNAmeLHy6rRmR6vRzWr4l3n5byzAfpAr00uvf\nypLlmp4Sokg1vbelz89l3q4iCA7I9UIQ79i2bX0drqLiabgFoke+c96dyN9Y\n+C7ihiN6PCDn1dJfU3oP+ixL+/vt418q03KRN5pgHG0Fhb1hUViRWPMhjFvJ\nVHaVQO6QNfOq9N1Z11kjjR+P4kGicV8/Sy6jGW11EFSYuZlMylh7zFqSD1IH\n45Zbp8CQKRsIF4ilpU56jLYBLrsm9HN2rHbQErk2spBcymskWoQJGopRjMNs\nKeP9\r\n=qRHX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"476d2264b6394d63e05447bdb1a48a97e6978b30","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/codecademy-engineering/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.5-alpha.fb61c5.0_1566374866279_0.7975952789643117","host":"s3://npm-registry-packages"}},"1.1.5-alpha.b41a32.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.5-alpha.b41a32.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.5-alpha.b41a32.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/codecademy-engineering/client-modules#readme","bugs":{"url":"https://github.com/codecademy-engineering/client-modules/issues"},"dist":{"shasum":"df88baeec4756fbc08c1d7eb9679aebf9a715262","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.5-alpha.b41a32.0.tgz","fileCount":13,"integrity":"sha512-f0Z7dpGF/lYZClgQeeaibxe1y5+WxNDNuuUGv3BErYBLrUEsz6xq/1iZ9aTvAxxxxhYtwWylDNuXRJuRbIASsw==","signatures":[{"sig":"MEQCIB0vs9ciBIHjGEDD2FDmeFlTmBR4J47uj3DS3Bs00r9zAiB0e74wDPt/3Dc7ZZlJaX3CvREAEuti7MCdnz2YhHNKYw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdXkU1CRA9TVsSAnZWagAAtg0P/06Xhz/TY8KgJqhI8E7D\n7J6fCsFrNsOz1LgpjtpvQFx9MVlOGoEsPtHCySJ5ns6znpF8zdlxTS4Da/Dg\nztVbIqjH60RRo2fz1bCzHGgcOrgiKTqWNGoY2xBf1x1BZkOAQ7CISOYmcWGr\nGv0ACKtAuQiKPfSYpDiPhjc3uDEqdhVAUgYlTzgEGOnkNyBas3gRF9hq3/38\n6+rMs6RKbcPfGar2kPr7ProFT0mxJRvO8zYMOTBmNrjBqUmGaKe4V7f4gubX\nDvcp+O6SxCLqIGP2Rz7NMmTpeIImgGoVk9mPpIGPMuawtMdqoP6KMcsaF+y9\n/3SalEdlUICG2JYEcjq1D+A7DjtY0uq/xx9DAmAzKmCiXYP5lYJ854uskYxv\nXTzKVKxMRhX+vvT+hSsp2KuO1hycuNyR1Pza6rWcNJsBJKdiSTfAhIpWGOor\n1sp7Y2PHCOc6PVPjWrBmFpx3nAkFnf5+hW1HbVE8Sqoq28SFx30HeqbHVGGa\n0e+YGyACI1F04kiArS/hFghM1jq3ZEvadC3aLrpj8furPnTnsI/MHC8XvErI\n4urH9FtPghrs1IlF8/Nfw1n1KZK1jsH0gJA5H1u3HfJ5/Xte8ZV490rOxEJ2\n0htPW0mU9rG8JBFzc9O6/lgewODToNwuwg/nqd54xFVtMgRY9kqXPtaywHQE\nBfwY\r\n=doSg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"2b6b995dbb7e3e177254b75c081b5d578c710632","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/codecademy-engineering/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.5-alpha.b41a32.0_1566459188925_0.1936973101282129","host":"s3://npm-registry-packages"}},"1.1.5-alpha.3507c6.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.5-alpha.3507c6.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.5-alpha.3507c6.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/codecademy-engineering/client-modules#readme","bugs":{"url":"https://github.com/codecademy-engineering/client-modules/issues"},"dist":{"shasum":"6dea92077e24cacbb54796cd3ab99ed397670958","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.5-alpha.3507c6.0.tgz","fileCount":13,"integrity":"sha512-zRowDrtxb1+FUwW8Mxw9vSS7Ri3n2jepghA2scroyIMNri/n54+x9zcP8rjufFb8dT96RnmKSTjAQ5EvujSJCg==","signatures":[{"sig":"MEUCIQDUz5S5Ortzc4ke7kvHsVVgNPG/nn8pwPOIXHriKcXjfAIgZnGfK9cXcuADLZE2N8xsHbSix+XYGnkGoQ+vvk37FAg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdXkVJCRA9TVsSAnZWagAAgykQAI2+sL9gvI5CQ/U7/KNE\nTGjgnOEBSwBZ1e0he56rFSOie1qwie2NBaqfiyLcCQaYPX+C0k52FO1OPNiK\n142sRdME+fFfP2KGT186r66d5uZPFWuiTVyF7DibZtrl6XVqb2wdVFw4xVuA\n61FIgFi+XXzAPrTUU92pxMbJsifpjkekjOgqBl2vQwCtRJTTYPFHX9j1zoAw\ndkRMlQiNs5MRp6VQWGklxkeJaSvyY0fZWM5xplY9v4s7geemsQ1aE4lDYilE\npFjh9OzPXhZSfOeHsyddvnrcOy1rCFx5NiI8dXn9F24qmIJvPuZkFyudq3fw\n6BY2wbd5K2grO0hlL1vhoF2jF5X5v4DM2PxQuyycRBnB9pfRsbIDRD5Nwwiv\nB5GUYnAf4GOsRZoKtKNl3MjPcivDjKsisXKmaf9thS9Xz+5nOkXeUap+HyeD\n6LDph1+93u7JJLnHdwdhXHM0FtOM0mn2pVLdpwGwMaOxxOD5rMUWvfmti392\nutEtkH6CaeWMNKzg5XavkvkeSHLZliwxC9/58YQ7PJLYDsLZseYrfndKvUJu\nP0JVgaK91juW4AkTVBG/PFfm+0ygKZZ+GP3BJuyFFYl3gDmw4YOpJPOH1Gxs\nfj6jZskRurTv8Kmp2ETLjAQY3JUNZvhcRnBbMjuysUZ3iwAl1CvhBkKm8Pjw\niVkM\r\n=5uUX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"3da786df966afac1496f81188acd9635cd56765b","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/codecademy-engineering/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.5-alpha.3507c6.0_1566459208371_0.2539883821832538","host":"s3://npm-registry-packages"}},"1.1.5-alpha.bd89c1.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.5-alpha.bd89c1.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.5-alpha.bd89c1.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/codecademy-engineering/client-modules#readme","bugs":{"url":"https://github.com/codecademy-engineering/client-modules/issues"},"dist":{"shasum":"17d8023a39bf1c542b99fe891d2274aaa9042917","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.5-alpha.bd89c1.0.tgz","fileCount":13,"integrity":"sha512-gieq0D3EfbRManZ6HmU9ATwiKMqQZNJi5JnmYcFVpdrsObPKSiwNkQhij5tRV8M+OhGrJ8u8ysoQm/lmz/Df6A==","signatures":[{"sig":"MEUCIEfwESdTbehghKjlYJOhdwGHrKUp16tOxMEYe8CJ3djfAiEA63idJrYKNculvUDKH1gWor4+kyHdybSVoAjRKXtySZ0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdXkXBCRA9TVsSAnZWagAAZQAQAIj3vrFVcZ4R6Gx4mZDw\n/7lY6evU0lvaBhM8u0ECse7Xa2QecUJpNbg9nVgbQDurpJtGGr4r6/eL4a7q\nYqdoIMleAEejEsr5vuH/x+bthQNSK/S9EhBZqSGPc1rgmJ5FTFxf2Nd/JgI9\nIlHp8+co/KIPHJVqqnvdljh2NeyhUYz1q3c+k8ULtxSNMrhuulXPDsH1k/Kp\nJ+R5VaSPBc8uWy6sKFtWCNSZjh4kC2rlR+U3fw4e6MqaaYDIT5Clc2leWyrs\n63bHiWMjk+jehLVAZBFpLOeVyeY6F0j+82fIw52TDgpwGadPXvklhc/Qgvtq\njqS0+1DIxeYIeoCxLniFwvslueCaUG+3+3TZAf/EukPerrSxAg87ZSfuqD5G\nLUJnP1+TZbU4uYM6iUCgA9tFYHmsrCA/cY7GE0FpNsyfnQHyrBzkh+0jwjQ3\n/ifEq7Auxnpjzo9/XdwuCafiHUC3EiVOElPyMyTSubUcGsUpjG428ZIj4axB\ni+ig2r5tleyMoSX4WaHD0xAWjRr7cZ46fgdd1XV5P14idvY/xjAjVICXs89a\n1PRBxcOHSTrWCQAd+BZRnffKBYQZX5TNCmB6vYUAvclUX09aHZAlF0DYDjSq\nB6uXl4q4ZsI1BmTAiskYamda4eWVLczAXTwWIXScLm0wDyRfy3pC1r+o+aWd\ncKdi\r\n=pktX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"60a51a8ebd5de18e8611de63147d4474215aaa27","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/codecademy-engineering/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.5-alpha.bd89c1.0_1566459328752_0.4101235093843607","host":"s3://npm-registry-packages"}},"1.1.5-alpha.525712.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.5-alpha.525712.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.5-alpha.525712.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/codecademy-engineering/client-modules#readme","bugs":{"url":"https://github.com/codecademy-engineering/client-modules/issues"},"dist":{"shasum":"09f751de9cfe1fa92a57622eb4053e2d4969c7a1","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.5-alpha.525712.0.tgz","fileCount":13,"integrity":"sha512-2p2yxM5EATfXcJPRutScQkcssWoc4mxKCLEI/C1iEywb+gw11qzVjH0SRQ5dnj4iDrZEMtx81+fS69a+I1k5wA==","signatures":[{"sig":"MEUCIQCuIuDKBQ/TPO8aiva4pcBRk/KOd+hb4DQjI05HSWhZpQIgIynzrWjY5o2TmlbGNT2G/TnSTi2c6n+lhYNhLINZSTc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdXkX/CRA9TVsSAnZWagAAWF8P/jU6ey6nG0DQgdwmPt9G\nEMSueWjSfxyaKDRwYzNUwMhiPTyRfEnNIJLil+8rXJQAwNS+xK2CxTjDj31l\njK/CYXt0zg2TVqHqM+cuJ9Z5AX9ahof1v0Fh9E2MPPBcOAve49U/ZKQ2sSZk\n75+By69YZenXoU0asymvr9wUIdTnCH9uFUfp6Iwy2FtPnKlFLxQxxz33r0SW\n2cR4s2YrOeL1GyMtvgQiIt6FsaP9bSLYRJzJcaJm/sIGbsvefnINcY1iQRnJ\n9o+ZGGJiK0vCJ3RlXYY/InhjhZ/3sx5gxZwiA31IeiI4BF/FtdoH9uAMfpH3\ncWan08e21nGryJAx+8aVydw8anoLXfZLZeBDUNUZHtPIEbokWAv7oGhrWyQq\nuDyQ4sn3Lft3/xXeJ8sODyV0D6UhSWghhdowVADrc5sF/Kd0wFwahYm/lqVL\n12H6eD4KPt4OOIY2EQQO0r/A+ml29h52pBEBz1olXyPRkBBOzOyVN2QOKsJ7\ndvoyAO65P44QNEznh51IsYkT1/uZg3FfyRMfJIYvhom/tdTGs+7LRmZUAar9\ntirUnW95Y/EDhQSRsdKoPapEQ395hr0FxpCO0S56s0wH/UICxFhJLXwQ0JJo\nwrvWYUifH9pZo1fw6T6ahdomlDRKnfwGcIh2BtKERB4WnySVoekgJjqLRv7i\nHGli\r\n=9Yns\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"766a00c7593252d5307dd4c54b2003cf8c339f28","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/codecademy-engineering/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.5-alpha.525712.0_1566459390610_0.8918469568761616","host":"s3://npm-registry-packages"}},"1.1.5-alpha.e75239.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.5-alpha.e75239.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.5-alpha.e75239.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/codecademy-engineering/client-modules#readme","bugs":{"url":"https://github.com/codecademy-engineering/client-modules/issues"},"dist":{"shasum":"319fdf246ee3f8b7447b15db0a23bc8b6ed1ed76","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.5-alpha.e75239.0.tgz","fileCount":13,"integrity":"sha512-N7YqdtCVSXSm6bUNkWOQi1KI77cPFcoViT9+qF3jUYSNBE+YFvMFid15oxXQZ6Uhp5JRVGaUCp2kAAaG7/tb1w==","signatures":[{"sig":"MEQCIF0xrLS192ae9U+Ccppf2hKbFz0QEscaOpdTPGsTEMwOAiAJa8r0UDzG8WX8e9gOFkLzsdrXdB7ZtWtp1SECRlJ2hw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdXqOaCRA9TVsSAnZWagAA3V4P/RODwSV6Xs3Ex2FTmoDS\ndXPAYf19oA8lbKuDfLQl/9Xl/90GttW4q+1G5InWtDpgfOIxuuTAoDKZvul/\nWSOjTE604EiLCdd3xpCy+rR2dbxZjVvyCgLFeqvO4IDi3FWEotttoVGW9rSt\nruyMPnDqR/DaaA2vqCdf0CEEWhCFEXWmVdR+BljIetpTl2RbRqkqz3YqE3qI\nClP4ltYv9SeRTKOdkqgnlSFqwak95HgGVQUxvi4TNhaTdqkkIHU0XFUY5cSb\ncMPFINtrVTaBB2g1B5z8gNoiZeEVqyFdcIVgMYsgf+OhvL9S30SlBJ2Zn+Y/\nhu3wS3ubse2Wx9eZnj/aLhmH01n55mo5MuXsVG/FdW7lF4tCn1cOa1inSY+A\njQJmwUQ+gmazmBpnQxftAk25ta+lMUmaVVNHEArSGn2l7sxbgMRWm0REMY+8\nmltdX5bvvEyjsfkA2HdsX7NQujrCGOMCUPHVHjlSTRI8xwokRnhfcNv3UlR1\nFeTKL8OIE1PSKKjhExZ2pj/CVMU3b7LNjCewRu1SwlzWW5voSTSD1jUMn+wv\nhxGvoMEErsTb31v8mGUPD0clefKqvbbLl/24cdJOxp5P8OH0tBjK9w9ufeIc\nl/3HGFeHQHgiq/hNFYGI+gsTYWX51ceTQ7Oz1xsqhZzP7o/DKOPzUw5RhS+J\n+7LW\r\n=3JlC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"b9d2dffa0ab584731bf4b59d9186795fee1803a9","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/codecademy-engineering/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.5-alpha.e75239.0_1566483353716_0.34949297425715775","host":"s3://npm-registry-packages"}},"1.1.5-alpha.e1fa57.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.5-alpha.e1fa57.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.5-alpha.e1fa57.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/codecademy-engineering/client-modules#readme","bugs":{"url":"https://github.com/codecademy-engineering/client-modules/issues"},"dist":{"shasum":"7ed4cc2f4427d396afec5ad0182c506019431866","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.5-alpha.e1fa57.0.tgz","fileCount":13,"integrity":"sha512-BqQn7KRJfOJGtqflmAlWPQKCScVf0K3yC91xgYmlmoJrs7g5KzwNvLffVwllKoikBugya+8GCKrnoTprOU7/aQ==","signatures":[{"sig":"MEQCICkNJ2EjlgFory465ALKtRxzZlq/aznUUNDL6MbOheInAiAN1TrSzjaWvgiyLdFadFI9DaGa2vZ0GPC234H+P4vdhg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdX506CRA9TVsSAnZWagAAw2MP+QEPPIjcFdVwUqnvqj6m\nugupz5PK2G7fFbaSQKVG4lgtdNmXDmig1U0S5xMG3byvbxMMVhRe0pyFTy51\nvjSnJBv4YBhj84pRx7I8DOeI+bcne4zlQ8DDwzcJmp9ezSIBpxOjKxJmUZW9\nu6BGbqPH3vMYaHidApcRce1V9PJdEo/nwZi4lu/VzyQJ2SDb/wveMln5v2U7\nruxZD/zN3bPGkj4zGlhZuwHhr4yAAIeWxYwO2Dr2YTsSzAO15wxk0YbBNVSr\naSkbx1s6ebAjBk4qIw6K/CKrS8vEqQZBNFmMA8SRv/CoQhxA7F/v+SZFPpZf\nfPS56ZODi0Vty0+8jk9KCt37LDWnit9r8rGKj5FyGeGHBnpJLq0U00fimylY\n5ogAxjw0ZhEF5+4/u/vnHjlRI3PMZX3w8IAsrKVMvnaztRlepCKPoeIt7fPR\n+IE0hfn3yNPvPu4cVoVW02bGzNjI0G1gk9bqOBkIVzGoofYlkQQCaZkxxhgl\nojqQUfuT7Ctve5Kc9EO8Rabf5zHYtKrVbzdGyOw2wtyropovN1kLiER0Fu3w\n1LwOSSkfDGZXlMGpMEPZ7Z3IawN2H3FgyONhxVmWcCE75n9iFh6Yny5fzAAe\nOSnDbHFH+rwf6SNL65vsTrpYM+GZnyS7yNsoXi8J+C1lKjI4wS4NZ6NdPbIY\nNKKM\r\n=fdrO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"5830cbfc1f170f995c059229f8083ec233ad2067","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/codecademy-engineering/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.5-alpha.e1fa57.0_1566547258383_0.0410117707057962","host":"s3://npm-registry-packages"}},"1.1.5-alpha.4ec5d1.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.5-alpha.4ec5d1.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.5-alpha.4ec5d1.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/codecademy-engineering/client-modules#readme","bugs":{"url":"https://github.com/codecademy-engineering/client-modules/issues"},"dist":{"shasum":"4c63ffd4bba427438d7f991631f1c9e1de834d61","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.5-alpha.4ec5d1.0.tgz","fileCount":13,"integrity":"sha512-rEUrkU1Vz6dn/iONMEGi4flm9hiT+oGqqLOWyftPW6xc/VelT4t5xbazYp5PW+cNrAchD8/A2vbhQfezFuWJmg==","signatures":[{"sig":"MEYCIQDy7NCARW2/nHkWFI0CExcp6UNg7SBSZzJf+0o8x2Ob+QIhANWEYZ7uLh+6vaDZCV4qjj3X1REJnhG5ePAGom5OcYbI","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdX525CRA9TVsSAnZWagAAHYUP/0F9f6WZu+XLgAjeAaj0\n0Izhub/ufF7o6F+dJiKW5fjxvjlTqCOq+XV2UNV9G+9RdYS38B+4FqJViChW\ntIP0oHjsY75lXxR70Sf4SLqLFEhdBuKl3FmmH/zDt1VFMmAPqr4ZJHw/kdDN\nR67apMN33ATj4UjdWV/LTRM9BObxqsEoZ9Nt1NEO9Y3UXQipI1i05m3EhKsR\n5m/mR97HVbpWLyNPOYO8a9sZwQZo1kcqH6ha70m2emSooDDNO+X9V7EY2CZO\npHcmrWJI8UVobJvnL9qbI7q/Ax/quqegFhbD9ZAVhuLvyhsMS7VQ8qyPu/oo\nhVy/W+lzyzWtHapzpgwoQjxzeROb9QoNG900Niu9vG1vSq/5xSbhRX26qpC0\nzRkiJYmxnnR8sCrMUEMDRp6W1WZ4tAJcEwcSZHSTlUAqQB/nsOhU8RJfdj0G\nLEmOfLTeYBQ6H3cgVd5Kp+1BpQs4S3nmuLWyvqsg7wAI9A9z6kcxt3kdFb6H\nml4k3aMlTaSkxgSyqYB7dQkYdGW01NXekHZA+C+Yxb86x48zkZhD6OU64uGF\nUB4VTc0OTTt1onora3DTLhzpeyByFK0tNKglsv+Muz7dgYzzxi3fmrN3uT/4\ngjg4+UeaJWs51PAKBlsoTWymE9eON3gkYhm4RwOAw8hS4s5j/yxdJPuja14H\n4+eM\r\n=uo7R\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"8cb583bde65d9748e3042f3ca7471a9a28458cd8","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/codecademy-engineering/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.5-alpha.4ec5d1.0_1566547384743_0.2893719719254235","host":"s3://npm-registry-packages"}},"1.1.5-alpha.969fdc.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.5-alpha.969fdc.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.5-alpha.969fdc.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/codecademy-engineering/client-modules#readme","bugs":{"url":"https://github.com/codecademy-engineering/client-modules/issues"},"dist":{"shasum":"e33cb180cefa0c2a5230608279e4a6353dfd993a","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.5-alpha.969fdc.0.tgz","fileCount":13,"integrity":"sha512-9TC0yoRbw05sMa1vQM8qiYl0Uq6tCuyiILp1OSE74+symXHGYAGL4272H7YaBZFJzt9tx2v6rB6mbaoo+kXtSg==","signatures":[{"sig":"MEUCIBYYlPsY97G41loLQtDJmoQ0uT6YiA+ZMUEP6cmujijhAiEA8kyj+rfXQFQ1iY5uujJzMh61Z16upFm9ep6ygtTUkYA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdYb4TCRA9TVsSAnZWagAAEI0P/0WoIvsdvpXBgCCBZir3\nl73X4FBdyOGtdvZB+dwXefF6AKZdhpT3t4Dv4HumxTpSB9+ZLKyIMzy5ODd7\nGZPeoFzzZ4se/zJvN2iGwGvzeuomW9zY6kOK5kh7j2D/UzmBHegW5n07t9t9\nY/iMidaKG8lU+lfrSIubHfXv22K7xEsYcXEjRCf8YRjrZETTfZdCQEidkH6G\nbJFqK+ulj88ilF1z1X/ThrdSRBiLi7BgAfmgE6wKJ1bTKJtgqR5/mLZO2Q2n\n68F6+ZIFaz0w/5/h0iI8m+/U9p1ucSJ4Uloo5FSejpojoxNQ5nsZVyU0d1B9\nOx7FV47kdvX40CBu0b2W7BTQBUc1wbnDSONOhI4y4gZsZXEUFpzhS/5SzdqV\nul40TvCMC+loutSsrNWGrTML/hrJTzYNuLsZuaIFB3RU9xwAwy0WmTLI5ldg\n1JgkeRQYhk6QH6SN8CXY/AjmyGlKl9qf9ulgF3ESArMqiUTyurOCjHHikzwW\nDmkpfJR/v+8XszCw2/uN8cGqgiLAqVxq0I6FY+axpAT4/drqe3JPc/F2IAcz\njq9MqQ3mOKSamI6B7PaNbjv08lP/EW3/YGdjm+QBoGwznBIGVDkgqDKyafGr\nP1FTP1FqSDVC0ijc+0BIm3WS0+v4Bij/RDK6lqk/r+7F46na0jTVAaMLmlLF\nPh/t\r\n=jDrd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"709b679487bcd8d060aa9fe2019b6f55faea3bdb","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/codecademy-engineering/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.5-alpha.969fdc.0_1566686738355_0.10375029073226694","host":"s3://npm-registry-packages"}},"1.1.5-alpha.af7812.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.5-alpha.af7812.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.5-alpha.af7812.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/codecademy-engineering/client-modules#readme","bugs":{"url":"https://github.com/codecademy-engineering/client-modules/issues"},"dist":{"shasum":"29385d742fb7f1862c4a97f66edcd00d406a269d","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.5-alpha.af7812.0.tgz","fileCount":13,"integrity":"sha512-iJYA5JY/ms5KvECGjyIJh2kTst1N5ibo//6ElWvMbcxMJa5YAvSkeF4exRi5wk+8V+mbqtP3IvpAV86pHXo+Zg==","signatures":[{"sig":"MEYCIQCfFj7ic2Ly/gv+wMBYYz5j/Z7nBges9WJ3TUCkpUPEzwIhANVdPN6SbU5f23t3mWzvJ2llo/GetGx09mELJI0Z+/pl","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdY4GZCRA9TVsSAnZWagAAts4P/1RdKZpwXhKUKY33c4C5\nbAEQ4QeptdL3KxfIttkUMJump/Yz0AWUJUMsZxsrJORNB1vYn+IHG5qORCJX\nBxWxc+qZ73V3cGpy6izggr4SoJ2UY1znwqAEtOmibuXW1D4XN2RQTk9t7R8k\nH2utVvcg4xI8fw2A4UMHX3ew7WMvqPFJtrzZQhWcOoddxFvzDQBv05svoVqO\n4MgVXtK+qnSj2M1XTgxStbTlm2WbffwLyi6Ng0/TPzUAMGzxV2/U4BZ/WcVH\nyTrjBBCMDugTnHICfoI5ncTForLeWON+dRO7vuPd393s6Y8cfCjqMZyZBJUS\n3KWRiHCh7tmv2mBBGipbqBGtR5jBfBwp5TbsY1qQ236iJldxz4Vuf8DXo0TG\nsPQ3Nb0y2/aSSWnDC/OAtxsfA5Q5mM5WhSH5ymIslUlqOB4tQPCJDzezsKid\nrhCSjy4RMpHl2uAKJgr2/qvlsdX9kjtaFlAF8MCS0hDabcmZzCBCxF3kFe/3\nTRgjgTsQopPXRAP98xksEL6wu3nC1J6HmNRVCcZLv3be2CGr2iiIDop2fGWJ\n4WmGaAbOh5xQHvTHKg4IBXa+4ifjwnz4wRZk1hRqAF9fBkjKfB9MTh1++x56\npo7RVX+F/f/SsHrPexmTJSAAmq/Da78b3W1ueApy+027QC8Pt7RWnx72YoZx\nM0ud\r\n=fr24\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"9ec45a16633090fd3a5f34bf546272af07bb48eb","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/codecademy-engineering/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.5-alpha.af7812.0_1566802328402_0.17552251973849997","host":"s3://npm-registry-packages"}},"1.1.5-alpha.c4390f.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.5-alpha.c4390f.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.5-alpha.c4390f.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/codecademy-engineering/client-modules#readme","bugs":{"url":"https://github.com/codecademy-engineering/client-modules/issues"},"dist":{"shasum":"31f58e87a861e050b35296d2eb78d947e6ed0865","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.5-alpha.c4390f.0.tgz","fileCount":13,"integrity":"sha512-kUpsrukHRWKOyADFFP14/jnuChI9xOarah1haa2/ZXQIBbT/0AtDoGA1nr4fL82xtJYkU7Hc641EeDAYHAYrqQ==","signatures":[{"sig":"MEUCIQDhF2/rE4CLQ/fxSKP204PdOLzFfM35gaFwv1H6L8WQ8AIgS7JbSXu/np+10k2bJo3e1rG9dtl+H9dIhFudjP94nX4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdY4GrCRA9TVsSAnZWagAABswP/1vjSV4U2RTdIP4QhjAQ\nj4fL8wmFboFrOmbvTXsMZW7LHhG/aZy7B8u15P4BdthWpGhjUpQVXksEGsEO\ngba21pSy5R2rmNx222Auzn/3y2vyU+FgxosnY0dKLKq/Ho43rNxWEjH76cBt\n7SXVsfvlSuJTTd8cAmAkgv2UJhfUYoiiUguezo+9zxtq9wHBImgD3iCdCwUM\n5RxvM0Ir3PwnEieISyKGXBJHiOkPeyHATC2E9ZQq+y0lW/c29cAmGDOK8auj\n8qa5XLSPA4n0vwCR8DxoCPVNhK/XdYoKDF9zOspOklAyJLsgFkc0Rih9DgOl\nNI5r0NW9MU3nF+J5R9K2NN1N1rOidH+kbxeQ4AnsBAASQnpEuImtSjjnvr4s\n6xhaciqW2+DPBR8aEgWXdZuU3fHwwj+m64g/Zb/gZXc9gMQxoJ4YK042WLTJ\n1pL1c9g3hm5GEROI5SwoS2YGYjxu1vqO6r0ZZOu9AoRvDiERXjVtzgAJgE3U\neuDhWSyBaU2H9MXVD8ccyyC8+I4QLMvBiJAxgYX0exZHSGY52sA4y1c4TzWf\nNO99tBgmwLtpC32F80/1/fEtEUGXOmrFoAUvWm3nF17dyVjFbXGH4WHBru9J\n+Wicc0FwBjTXvmFM853+WKERsNVr71qM071DtdiI7VcZZRi5tJKvfMN9GgaE\nw+7j\r\n=2AEb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"a011b96dcc7c5b3b1bbfab120b017516700cbe8c","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/codecademy-engineering/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.5-alpha.c4390f.0_1566802346936_0.6146911564162703","host":"s3://npm-registry-packages"}},"1.1.5-alpha.9a2681.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.5-alpha.9a2681.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.5-alpha.9a2681.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/codecademy-engineering/client-modules#readme","bugs":{"url":"https://github.com/codecademy-engineering/client-modules/issues"},"dist":{"shasum":"a8353aeea79349418e83deebd529777c7d294068","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.5-alpha.9a2681.0.tgz","fileCount":13,"integrity":"sha512-vwJXmYnPeGPPTuotAigrcibUp63sAaNO7VU4K4tWAlqyg/STpMItdq7ft3Pk+jc28rf+tYwP07brNJ/yK770DQ==","signatures":[{"sig":"MEUCIQDcq2yNMZMUa5/16exkg60UUrgwjaj/CfLkNaRUvsaA7wIgGP3PIWv0ad/kTq6OCHEmlhlL+iqqe7rpqfwRwjUEhFg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdZDUKCRA9TVsSAnZWagAAgHgQAJLaB0ghGLbNPkvWqWyj\n2s3yKRxs7bvnvHC532doC7AicN0ay8NN+YLICErd8mWokCJXwH6B4m70Ne5k\n+T5SaiZOm0t3HBgBNwGFPYm7f3UIj8k63YGdYTHL6yY7Ao7yClvPqH5+S4RT\nKefc6h1brc+1Ew157ph+/BIqw08rR9vZ12oc5ZMbHooGbXyp4CPf30TEAtBU\nPMVuj2GIyhotOedzj//X2eTKX1lY1uftTH9bGNNDNCimf2LVZroNU/yawT7o\nTckYXW2l4wBkLEq2xffWOkl8bcXuROTn81t+cKXfCOoISt3/LYSCYglhHBtE\nuTAemHghQpVYbaae8tW0G8XspQNPnBJSZc2A+dtA/r6AeZMbjTxTQ+LH5nhE\n5IaiGTjJxYMmnf6uFgjZkXTZKrjD40p1FOTpOZ7xiFhslvd7mG8C0fRtvqv1\n1b725+OHzxYtqyCGgp0TwLYvQ62vRy15puk4bJQXgvsrBqdvwtJHc+Mm9eeY\ntxyuD+4JL1IAEIPtsTNh0GIAnJHEGPZsqp4GAMklH0+L4b3OSkhEDiNH1Ky5\nfTwsssaqtA7N+wTuXO750q4JkvJqBZ4iktgIi5yJnR/EnV/+9R0P1Hm+WfY0\n3AvDRHITCZ1C5R+L95JML09MRk7wbm0QY9np5/btiugMW/H97EwRb7d7+jQo\nvhMQ\r\n=K+ZM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"b09f1712ddad30707a5e08712dbebf14a977c646","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/codecademy-engineering/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.5-alpha.9a2681.0_1566848265787_0.28660509296439995","host":"s3://npm-registry-packages"}},"1.1.5-alpha.16eb75.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.5-alpha.16eb75.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.5-alpha.16eb75.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/codecademy-engineering/client-modules#readme","bugs":{"url":"https://github.com/codecademy-engineering/client-modules/issues"},"dist":{"shasum":"a8193d8ead8c392da1bcfa439ab8fe07f2434c23","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.5-alpha.16eb75.0.tgz","fileCount":13,"integrity":"sha512-b24Rd1TZqDNS6sCwgJHVZh+DYpyQFagOe5fFRC8tKkOO4PxoDFPbJpo7ME9xTC3sRxRqj6xqtSpnbTr9dDD5DQ==","signatures":[{"sig":"MEQCIEyiEN4ycVEeDB5ocUBX/v3fHaSomBWZz2ljlDkPi/ehAiAOS4vH9SrB65eG8pM5TYA/XyFMD07E+xho/0YSGc8fJQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdZELHCRA9TVsSAnZWagAATtIP/i+kNZGe2+gTz5sR/Vsn\nY63aTzeDhxDA6GdfqL7u0MCeKbb9pgNMC1o4V1rCNx3fsx6BgSIlQtGTM7FW\ndC4fS61Mj3G/qSgVNUiGsn7DpEcmsxjKV109tsnbaJpPA0WpaFsg+r8gZHSG\nWFIc1pdpti2qaI79QqgvnARJWrqa/g3G+fDe58Yyxmef6c2ENvEW6UR2h2wB\nZEDMhD0uO3SyOEnD0VCvIoabw4OW9svaIDXqkk/PDfZpbe8d8MjTGiokszD4\n9rs2qELln/H7dUM90yoBG4eNbYqz/BPmQGflF5JMz7cY9jCEGTAl8fZWJGle\nkgXwltoYfhmqcIYyTCqH289F2jNjRXdolztGMcQkZDUDScjl8VeZnO+Ptewq\n/mfW82NZLibXBS9pw87kMphp387SdUdxwFLpZYD7sfKBOIMjyM0GBEX92MZ8\nvZrRuNOayawyIzyvqCaA5fBq5AnJDl+60oVDDGj+YQZnyBHYVrbdYOjR6cmf\ne3vqElpeoUu+gG7zQj6/SnXuTWijE1d3n60BJI4uVuA8094Eowf5hskNmpjT\nb6Hb4eIhncnTnhiem/J9hqqi2DzLs1PUca9PTEFN5lv/0dM7ZhgnH9Nt3VVg\nJTduAUHS0AHKNEiqnQpyozsmwZCW86yBwFshcfXeBCNJqnl5bXrX3RH5ioID\n00DT\r\n=EVCU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"316334af4bc8adf6bea261c08e9d47f2f2fb7dc2","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/codecademy-engineering/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.5-alpha.16eb75.0_1566851782379_0.5593468392464751","host":"s3://npm-registry-packages"}},"1.1.5-alpha.afb03c.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.5-alpha.afb03c.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.5-alpha.afb03c.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/codecademy-engineering/client-modules#readme","bugs":{"url":"https://github.com/codecademy-engineering/client-modules/issues"},"dist":{"shasum":"268ed144fb1d26fef84ba3ba3fc38960f3f61b41","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.5-alpha.afb03c.0.tgz","fileCount":13,"integrity":"sha512-EIUq52LS7viIRaFLG2sCg/OOY68TUWjj+hasx1fHAk74lLOzbwKMvqgUkkVztABGND+Xgv64Z0xSY9QFHqh6eQ==","signatures":[{"sig":"MEYCIQC2dLJX+aTZ/y+KuOsI+aeI2xxmuW6Est3hoI2XsNQMmwIhAO7/GvAAXWpOOJAvrLbTAqrbuspJp3BcVcXceQu46M0Y","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdZFtdCRA9TVsSAnZWagAAOrcP/R4QEZF/ws0OTNE30bdu\nZCL6a9j7auNm9k6OZsgy+s1qHlRsuLrqcEqs0BabVZT0+0u07Ok6rU7KTtys\nBTjdi2u8hjsr9uW4y8Y723ZArzTVrg7tGt/Vfw/rBh62sdB1PHqZmZu4pPmk\n0bTMAgUGB7cfCF6whsAXsBQcL4eSI+lqSEi+89eeUdmEMbKM7twBFMlwv3NI\n+nm543+BHKJBPu1sgC+HbpSLosccNDwOEPXHbbY/fo5xaV9J4nxSL8E00Opf\nF81o3QF32vVCmvywmvKgZIt9xKrTlBt4TjD/SkGWvy9ecoHTdhIxkW11RxyB\nVkEdEku+7fA6j/n2ftJfXgqT8CgvnP+aAnkbRlEZOV3iNxdtWvAc9SYPA3gE\njQHtqUD0XsI8l4mn7XPUCuSuWBV7Yv4FFDyV0bLrEsOgx56/t61CJSQQW+Rp\nrOsViBUXZ0s7BxjL4NCWXtSD4dXvrHZ2xhGY7ZtgRSTo2+YpG3PyHca3WKFN\ncJikaPB6MX61cl+vmYiGV1FEsfhsIQMrDWrFmDlOe8lI+VSe7L7nP64jsrmQ\n9c28Mn32iZ0/Nok1bdicBcFj93k6QvbHA47lLv8bbZ0M2LVnR7NSohpNtH51\nQdmJHgmNiwnV+iTNQfWfn19LFgDZsjBlwtHWZnNGpY940mozdBKC/nsV2ILV\ndJ06\r\n=s0pF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"f7c3de3f30035c451ac3b098d8ecdefa4b1ce551","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/codecademy-engineering/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.5-alpha.afb03c.0_1566858077099_0.5643060032453995","host":"s3://npm-registry-packages"}},"1.1.5-alpha.e029c5.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.5-alpha.e029c5.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.5-alpha.e029c5.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/codecademy-engineering/client-modules#readme","bugs":{"url":"https://github.com/codecademy-engineering/client-modules/issues"},"dist":{"shasum":"f1a324acc96da358e97a5e820838a03e15aa08b2","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.5-alpha.e029c5.0.tgz","fileCount":13,"integrity":"sha512-+qCiqaotctiy1p2daV/Nn6cjScvU5lhFbLaJ6CwuGlbliB2lIgkQsfkcKMmgy4p6XGHa6goqwTMDvD3qOhGmcQ==","signatures":[{"sig":"MEUCIGKJb5BLrbEYwNs5lg4WP6eOnZHgfDU0lN43Kk4U+281AiEA5y42f96uK+OKsmJwg+qSkp8ux8hQCBpuqqm11g+/rBs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdZWYKCRA9TVsSAnZWagAAxPQQAJh2nxmClxdB9bZoYeki\nonnX693xIyAnj7JOw/3CaccnfhsvLuGiWl0RnSlPOtv79CWM5kjH1cGQAgia\n3P1VBKRkxs31zuC2JWYeVC7I2s7TUIXd6ZAgy40aTJJmTr4jQcq4C+z+Biyc\nh6diZ6ztqPfzHxI+TJdOjp2PXoo8P6mBIw13x+kkJYlNIy09WjU4roOTaep9\nSiLJ2SEc8MS/YJERlmikKcgInwU7867rfnGmHWJBwMy70oumIKv1f9Iadkad\nQX426h7ctExkAm5Bpsh9yuMJ50iTaXhIDjUjeounDMsHrRlAJ9uGLNVsPMt4\ng1ntRp8z+ZiTDt/gQQnZeB667A6tzEQboPcG8aMHBEK4/op8RRkYso4qSC45\nWbnpO/UtTz/gQxpvz4zZrvmViXIQG8ktjwsiR6eoMC/EM1d4N8uM9/cjMcyB\nMeGOpQm+Nc8FrKmeWKN20JCbAfyWsVnu6g1N2RS9E5w/SgTkKxKLYfHBKZaR\nuDJUACibRSQq3IIs9VtrKx13yQqJLw39rGvhOTho40NK43Ik/qg00IW35AsZ\n/jbZeLk6abN/iF0D9SvH5AM8LpmVK43SAR9T0yXcrfA6RaW1mNzJnPCBke0E\nWcvhaA7iG3d+lzNGsmHkMNYtzqjeE9cFeASsMWhapFM3LVtj8/yWbnH+JRLv\nbyJK\r\n=J4gb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"8dfcde3520075588d211f8eba19293da78e57514","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/codecademy-engineering/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.5-alpha.e029c5.0_1566926345882_0.9690318507456497","host":"s3://npm-registry-packages"}},"1.1.5-alpha.403b5d.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.5-alpha.403b5d.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.5-alpha.403b5d.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/codecademy-engineering/client-modules#readme","bugs":{"url":"https://github.com/codecademy-engineering/client-modules/issues"},"dist":{"shasum":"9714bf91a6fa5d0ecc99cc9eee1a2ec10f582322","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.5-alpha.403b5d.0.tgz","fileCount":13,"integrity":"sha512-aRC5jsuOFUlrIbO7OgEicdnQunavjHTTGgDC4XPGqv1Ql5Qsi6cB6HfE4HFlyWuLteozQoq44sBanNFLb583uw==","signatures":[{"sig":"MEUCIQDDChZQ4zqpw8Ptc5jFGc6sN80wDXFGq0/bPQbhLOGH2AIgHzcEfPWu12FbD7kW18yjcbf1m2z2iYejEXebXvbpjmA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdZaE6CRA9TVsSAnZWagAAjucQAIYqPzgYDZGSC0M7etRX\nlX8v+H7avR35cnrggMLbNmbLAcMsvf2rc4uGxTsdtEs9z6Q4Mk+e7bsWfwxt\nYOV9EVJkPPUjCW7Gn1EOGaMe7PrxO5WTTE2MxZ6G7EZJY8DsPIuISM1YUDWY\n6ZVetsjxaOPvaOu8gFzf7Zk2E37Kmdg0G03UTqmJeLr/iqg+mYq42XSXwulZ\ngtBRSVXFUgmICPmW65Ozl067mgzDGXasHQTclZC6ftfBodY/CMEpRwsgWYE4\nSrPMOqBFlDzuiGLAAJEttQSRu+CM04P8o6Edy5BZpElLtG+91pbR0r1L18Ue\neq+ZDPT3zY7QJePhgYh5gS0uc8OcEXmvMpF1jFjLOoUMjG+AWqZLWxrft+qI\niPtg13PJlCFfh+q3Jm+e51mtkBUwIyqF8JUqDKnRXU6ECZXRT32cOB5ZBRUU\nfQxvSjRjkDopbC45xGuvRJMS2BFq/3azCWmTfEi1t/K2eYrto1QJwW3/SjfJ\nw/ipRyool6LRS3tMdKZ+nJsOF2uQNPjifTvcCMW7QiPpe/6mYfSRKRIJQ9GB\nL/ElO6vRXzwclp4GDODH47Pu2uxphF8MlxoX5Eaq5hS7HWTG1Pl+ZIwUIjEt\n8XkD1zmzytBWbYdnttsH2eWdhw2OzKn1nKy2U8vxI6KX1twD4GHWyt/KLESy\nasn/\r\n=MIAz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"57c9453f839ebd50eb5eee270010cac55a703813","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/codecademy-engineering/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.5-alpha.403b5d.0_1566941498096_0.3488724734109545","host":"s3://npm-registry-packages"}},"1.1.5-alpha.d15242.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.5-alpha.d15242.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.5-alpha.d15242.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/codecademy-engineering/client-modules#readme","bugs":{"url":"https://github.com/codecademy-engineering/client-modules/issues"},"dist":{"shasum":"00d1e140daa96e275f15b8d41739379b8fa42a87","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.5-alpha.d15242.0.tgz","fileCount":13,"integrity":"sha512-RM2AFHIU3RIhAHr2ET8Bm+p4BZyYoxkbGtVrBR/1a3ueCoHW0sehakjBY9E+M5VcereTCEKNhENkp+rXVExNGQ==","signatures":[{"sig":"MEUCIHCDekOkkvPjO+HQp5ZcXbgPyUaOSNtqtExxkKsUgg9TAiEApmJoZC5CAgtLLYyGVOkkI4kyaVgPYUkdYt57l6eAwhU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdZbqNCRA9TVsSAnZWagAAY7oP/jxEjY3f3WlPB6IjKDWi\nktvbpLdxY1BdQ8CqmkPmAzxIWHjcaKvkgrvxlPvNQmELgwb+jBiOdraYZpBd\nnYsT8tVy52zidHkbNS7WzMfH6+nUyGQbcTFsWxRnC/sIyuDxtEs5zPAj0dVP\nsaDSpTNIejLWdp8fAWB7/VDT2LJu9QX86H4LPGN4t87fJT4QgCytZd+fry3I\nKulxgY/gJ7zKNqw+LdaK9bMGO0WjgYnywaHlBS/1kDgUcw8IcwIed6jLxITS\n/dMcQ0G65gnk89emXsVZ4K1y+efW9W3h7q4Kpk8TCBMfrg2T3lrvwntJcGyQ\nZ9nYB3IKtkRoI5fhWZXtkIWqAcX8IvJDAVzOf84RHt5DJEDBW3wGigBOl7Hs\nl2TjfEnk5cqRhYRGQQldxxCUB64L8dvrAOcfk2QPdiAG84r3/LzqyGfXV2wG\nR6IsIMRiYrsfI17DOXb72g8KILLzSl07AQSpVLj6mj3a7YAiOZI+4IIxUFli\nYluwnwaPz9roA9ZBY7flT2iLMRK6XDqeOgSVd19q8qXqr5Iz+i3Uxl167XSW\nqFj2JCS/NyeKn2E6VQtAeT5Zb1PVBP6ditQ+U0iKqYjXdseCQv012/RalkGI\nyFyw8V9lZusO3iwCeEG0JK5xX09xwux9LJJqUY8yUouQ+UE8QVyf8FNOjDhm\nBzUe\r\n=NfOO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"5c5fec234b674e47f18aa9b78514d6f4ae56020e","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/codecademy-engineering/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.5-alpha.d15242.0_1566947980672_0.3731073101222815","host":"s3://npm-registry-packages"}},"1.1.5":{"name":"@codecademy/enzyme-helpers","version":"1.1.5","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.5","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/codecademy-engineering/client-modules#readme","bugs":{"url":"https://github.com/codecademy-engineering/client-modules/issues"},"dist":{"shasum":"f774302349c08037a383a2b1b2d741b681da9734","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.5.tgz","fileCount":13,"integrity":"sha512-ztp3EFCgmLaIMqYiqkI9+lHtcycorVby1LmZLP462t4co8IagWsBAZXOTV7VocizmaIXPe1rTpKyaXwK+PMVRw==","signatures":[{"sig":"MEQCIFsy7NsqUT+4Mu6A1lMRT6GPZmwy+yJGx2VSE5ri3V+tAiAclhw9nF5VGn734uzfHmm0PiZCnHpDR7xU077nogeaDQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22692,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdZq9PCRA9TVsSAnZWagAArmcP/j/xJIKZfkgYUhICghfS\nE5MQTbp9uPR1YHUSShMD8XQpao2qRzCxib5gMA47dbDnWtZDHqH086lyorts\nWEgMeK4XaArsnGGhFT7s6D1FydIAIlaPdY1ikrDXpJu9JhdjbJF2rCjDYO84\nPmkOkYK3qN6wHEVkxwvUTVb0YrQzFo0Z1Tv2JUZDrH68+ND4W73ebHXGvzPp\nJcpfNUh9UEm8Czsfy8TSDLme4FkxCIFJn3oyiFTDR/s9prTXfojujKnCi5vm\nRVdRHmZ2RFsBZA0vACI3SQPP0bFqEHoQpijdWjyoqrGwwyRVNpJ9Lu09zebh\nxetqS5prNQp2WJly4SpTW4o+YK3M5+ei7453cldJkbCVbSB4Ds1N0k4HnB06\nefpw3BdkPOZogYpZFpLqDIWEMjlwCboVmeNwoRI2dMAkbJDyP9G2TM3e6blP\nKXcPM49WRkMzrxA5qHmJLdApM6uZzS68j+dDMyFrjjhb2f65wDibj8urF4zq\nXrLqcPHqq3qr98JR5lXA2fDEbkX7HpzOwUu/xIvhWPJDSvoKFHkfcH2RUJKb\nv30PepqTMsN8jA0PGPh60cFNXNZhLArfJQibIz4JKAFMIuAoa+dcqlXbNm7I\nSo7gKI0B85H/Q7ituwwK8K0iGrwmZA+8ZvVPU5QVsWt250zvquvhq/q7UlXE\nsBro\r\n=0H6p\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","gitHead":"918dbd83203c30cf2adefa2fa08250a0b6ae2ca0","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/codecademy-engineering/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.5_1567010638606_0.4896965691918418","host":"s3://npm-registry-packages"}},"1.1.6":{"name":"@codecademy/enzyme-helpers","version":"1.1.6","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.6","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/codecademy-engineering/client-modules#readme","bugs":{"url":"https://github.com/codecademy-engineering/client-modules/issues"},"dist":{"shasum":"3da911f85aad21c87ada4064055f4f0fc59c4b46","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.6.tgz","fileCount":13,"integrity":"sha512-0UDNC+U6CGLNNG3lxUBKqO/r/2nC+t3geY0/HZrSkkr4YCpwZ6JXHhjTCnW6sPCBmWNiDT7xunJjrWVniv7i5w==","signatures":[{"sig":"MEUCIQDRCS487K0COuWPQiVzigZzXYd1fQct4EO/2WptsTwXowIgf+pVgArUNxKE+fp9NKWb/4xMUKYc7Davs0XgNftZA08=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22923,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdbndcCRA9TVsSAnZWagAANbgP/iJJfGCMTg4j+U2nqzYy\nrimPjxlboRBCfVyIykGu6IZXFLDIVS6L3h+ti2ZsJ4/O2ZwaURouwMg3h5OQ\nyYGlJ5JcrNLAoQUYhkFaAR6NPprjamXUG6qDYdnRESu8oVQb4crvm/Qta+UP\nVTMK8QJmFaEU8N8m+lhK6tMcONd+t5+K9ViHZtdRjl2zCtkL7aZ8Jj2MyRSi\nKkJjuLcUVB2UdeWsLhLuN6Mr2UtFogg7ce9XVOWf4HHX+jemJk2NB6YTTnQl\n36axedGHXgp74g0ebpMvH0+9nheyONmkLQH3hOcHftXTTHkywbdJXgFGyx31\nHlAoi+EYWMLdgprMVUlP8pNTDaQBJIGmxwEoSho5OfshY3AcBSyN0qw7zy0+\nfrAldnh9ajpfT8Z9EO6RRXfvp4qvqKjpOPpDVXV8zhtHg8es5BIDYUbPpE2/\nncV4BTmbrofSiI2mehrJGuOuuyXvurfmTAUe9VvEhgEWmzVwY/VVqIk53a/5\ndUVXs7OLIzXIvTMBlsKURqnutaI+TwM5gUym2V/KIShx2ltP5DXpQu3fWKJg\nteSQOq1qxTQyo2HWg+jfSlatvNPDtrItG8fPKxNUFUYRg343Wfe+9o/0m6Lj\nSOJZV+HGbFC0CpCh62saKYl78vvejohUAi6fTRHzmAtVdjbzNgjLiMRLB7M7\nkShz\r\n=0KWd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","gitHead":"e349c5bafc64c86a86c982e24b37287faa1e9c2a","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/codecademy-engineering/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.6_1567520603782_0.3230902273885752","host":"s3://npm-registry-packages"}},"1.1.6-alpha.411ca5.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.6-alpha.411ca5.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.6-alpha.411ca5.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/codecademy-engineering/client-modules#readme","bugs":{"url":"https://github.com/codecademy-engineering/client-modules/issues"},"dist":{"shasum":"593d4e8d55de87b412897580647273273114c86d","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.6-alpha.411ca5.0.tgz","fileCount":13,"integrity":"sha512-PxgKD6u+meNv6QUxBpxWWbBw9xFRdLnNu8sxkQs63JLQoWT01IeclvLe3eSQTW1J6MZHwMCQx/5XC4QeBlHYBg==","signatures":[{"sig":"MEUCIBDNKrgY5fnqvmTBTVpQPqPTjylbtwf+p1hec3NrO5j3AiEAmD9pkby83FDS+mOYIuNUYxj2F376pNvnKP62lq7YpZg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22968,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdcUYdCRA9TVsSAnZWagAAmBAP/3UUnW/yubgdk41yvvDM\nuBB3LHlxsr8hho9i7G7uo9hXI5ccVcEceodNGLiZcinrE1i9JimmKpFNnun4\nYlIh4ttGWx03N8pD6ej81o4lRXf0Jbgeqc5Y37lBR75vRtU5CVTP1BmuWAEN\nuqQhcojCuECJw9AgtkDLsePSSYT7cMHZFk1XJgbToRdNEc/M/i1Rhnqy6hl9\nwYYlz0mOL5/ttgiGDEbAkdW3VGdcTT7KjsIUrJgqlgu2+gIY40vftVMCx3Ha\njXsQeruRKMDyNzHE1c+3umiuyEeyV40shuziP8L0P20H5pUkQ4HxRO0hcAVz\nh0+iMqNC0IEgjV/B/PIYiNclnSUP09wTIxUzCZguBU759iwcbVz15Z8IsfuZ\n/pr/6Uim9Fj2lSdZRiZ7ozD+dg3Cj6esq19WzGviIkZOrEK40QSWcgiUxWpf\nfJLTn7jH6Gj5L9x96uwV8NE0JRD51JXd18rvAJ2U2LR4W3AdaUcJN8+YqXWT\n0qviVpnn3QQCqoCu5DYfSMhQFsa/WsJrfi0vx0AYqLdm/Dww1undh6EDX0p2\nK2KV5G8XixIl/R0oTaM59tjKrj5mvczcFa9qL5HN/ZWk/KtaUojTJtWQkQ7d\nQORwBoe2BMD4yBpGKfJz+eJSEN/mXJlgNm1PtVjoDOQn7nmaz/kECOIlimpE\n5lAR\r\n=Khy2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"2e51a711ae36b209c1722d95e2cd9dcc8ac4c87a","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/codecademy-engineering/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.6-alpha.411ca5.0_1567704604999_0.48439115525255394","host":"s3://npm-registry-packages"}},"1.1.7-alpha.906168.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.7-alpha.906168.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.7-alpha.906168.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"a5b8f05f4ef324ec431c6a65b20b69dcda0f71df","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.7-alpha.906168.0.tgz","fileCount":13,"integrity":"sha512-uGvxjdV4scUZ03izWlK2i6ebAODPYLKfZQVwvUCc6k14aLC6FD47vqPIraXwQPcybOb5lDSQ4VAEh3Q71J52Rg==","signatures":[{"sig":"MEYCIQCMKDLcZClV7znhWtaiPUPfnPUBQUpYCVgWVK+MQoczjgIhAJgxS1vLENhFhji5gr49FLptegro5wAYCHogwkhT3pN/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23041,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdnNVICRA9TVsSAnZWagAA17AQAJNXyxSdKrTVqZXm01Uw\n91oNFTCS6QPBW6MujxjEZjASIzmfuJ83ehnEwvmDi5Fh2Uc0F7uU/LZTP69Q\nrNxQilxJC8mwxE2980evs+PH3HdqTB++H1FT/lajYH4wlyq4UD8trF7BlUUJ\n7sZ7gTeiI3WeCZZUpVdccwKvO1nghnqArVZ+Y24jlTYOIXmyVoGBOpI8L48U\n8IH8ZQvwaoYaC2x8qYMsEkA7C4U31PPHx/hv6JpSu7Jk9Ou8mos0tNmQ4Ijh\neSutJOyA5vZloK9nAW05ozvPcSUYfjtP0PeqeuEiFkB3ZSAfzJuR7moBvaXC\nIX21NqJgIhjxEXQkerjVue8UrDnhAotSTk/KboShRzA2G/dXfeGcoky8KDa5\nRwdm+eHfhF6HfMqFvAMACF9D9+dhBhhZXP8kSHzfwFNWfPaqLq9+vo09Hb/3\nXFa/onMSPA20Qwc+pUXWMwX4pQCqHpCTrSYW4LTF3zKXhSnxKahWRr/JWE3s\n/S8Od6HNHrw3W2kx57nJbi8fBRQwr6hth/gKWKzk/QfWHInhKgiDn9aI0Lw/\ngbMwp5RS04biqvvxaI1NcMIheHJo+zABEsY51e4hLu5eA5BmbqkXvNEybwLD\nBiobPy83Ciszc+Dps5m5Ij+Za5t0BNnTJCxV4LVEHI4X26X6qfb+6kkzMHqo\nGukq\r\n=cHZI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"054d94562f012b01fd0900d864ac573f9ac4004a","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.7-alpha.906168.0_1570559303407_0.39587938031216074","host":"s3://npm-registry-packages"}},"1.1.7":{"name":"@codecademy/enzyme-helpers","version":"1.1.7","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.7","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"c0fbbcef32b23d343201db4733d38bfcae6a0d08","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.7.tgz","fileCount":13,"integrity":"sha512-+G9nda+vmGqyL0e9XhH5jKXkfWQPDBs5Q1mTW1kWzc9YqXnhEpdVWbrnA0icYXHPlX2So/sdl0q3xJGanoxQpA==","signatures":[{"sig":"MEYCIQD9qN4aSbIOCHaCUN+6jBF7tXj+z0T7AIekzfAItOAPtwIhAKnew/eD+DbhRX8o+u2PnG/aqu481NXxgoPhDmzj5Zwm","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22996,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdnOJ7CRA9TVsSAnZWagAAEGsP/1U/kXoqJ/EEA8xUNN95\nkZYXFzvEs1n4Z2jx11LugVU6fam500/gNZ8zdwbgNt5dB2lzMcMme3fcwpPS\n3lDK7C6fjCe1e4v8AcAYp9s92a1G4R7YJWpPRCQByQbI3MN68dLgj4ORiqnE\n7gT0l+3Aurm3q0KEzSL67OJaxvdE1LySZx+/15YnKD9jr1ByM8dFktpRPfo3\nU6Aw8MyWvblWkkNeO0BNqHYyrIb5u0PpXHpEsWcR7wg5YHFDsQbI9X9b+XR8\n15+U0ywevM9K7Skxo3qtYWV8VI9e9qLYzDcPuhXfxO3An70dfFuvmR4F/3wf\nBUcW8tuZPA0nUrp6bs+jzIQW8VSiedZFCUrCL41xIJlGnU85WwwIfX2GBvIE\nbLg0dzlJkOYKu4kzmuIF1/2aBM2yH6pHbf2QJRs7SGn/5cm4d4FMGM2J3qzw\naJu6cof4fMp4/SNfghM200JylKUeD12cVQ0U1SYtvZ3+FlSJA+zpk9SSMRpC\nSzclLyYofsOp6EkYStPCXRILXOkjwThdD1GyfwIjV+GRmJP6d0x2HL+zWohk\nCHnSF9sQQvKq6tRowOJjC+vXMS2CoYnTHEHkWwnYGo5BR1xy4MewDJgWVKXt\nQewkT7FSJS0DSVLf57OmmrCdwdjOvnJlg+8IJoGS2jlmXeMZCkRyCIn6DYLD\ncaJS\r\n=5MZI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","gitHead":"1e0644312a5732da1da567b1514f6ce4f528c0e6","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.7_1570562682941_0.6559489204353965","host":"s3://npm-registry-packages"}},"1.1.8-alpha.d3294f.61":{"name":"@codecademy/enzyme-helpers","version":"1.1.8-alpha.d3294f.61","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.8-alpha.d3294f.61","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"2cf864871d29fe55930a4f3ed1a27d6c81572328","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.8-alpha.d3294f.61.tgz","fileCount":13,"integrity":"sha512-oU4vW/Y099tTkZDAJ6R+jBjhFYM3YxqMa8oMv7oU5Vs1o2EovzESTu1DpU/raENBv8PW48Coe6Un7Naw+o1bzA==","signatures":[{"sig":"MEQCICam6wmzD3Js0fLmPgtZD+LoVRhPbONbYdwovb9KZ957AiASb2mEShtoaTLqOgjNoVaWf8N7WJlYDhVECBz0swlAPQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23020,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd4YN6CRA9TVsSAnZWagAAWYwQAIKydYMBXX8kThKGBfIR\njAPMy73a9gQI1nQpod/gGiIGidwg7YcnFJ7c+nNU8xMPh4lCBY76o+ddPrfk\nsqg1C3B3Hfv7Q07axivUuVMtJCZv6VWbZ41UoRFqrFfwEPJmBqyzKNSKUswx\nVoxmdSoOsdiRrBQjd6VqhfuFORqE/ACJ5iTIDgDu62a/lbdlrXN67uBNxbiB\nHh3Di0D5qQpdhRM9OsqQEhB8ryGiwd+04gvu2u2Kmk7in3f142Of9zQqyKfd\ng2uI5Ilgsr/+XeZtZm+jyNkwKNFAJrV5lJijanmakYxiXju+EdXT8sGY0qw3\neUYMBYMnqnou8UpHm8H0a0JFo1YXpEEa5MQQu5aHXubP7D5Ab/2i4mFgQnZo\nIrxxYwvZfzbitkBwTV13F2RKEYRsuOZvamkF4pbYyDb5UQfusoqOq4xRnYAQ\nJ77PBvcMdj8oI2/YK/u1tBstv13DrB6MPnZGS4G6STgFpP3YBUZAJykLUke6\nTCchkStgZUQj2VprCPsMAkvqJd3zf7gna6lwbplCRY7mltjck3UYI91b2Pal\nnEa0m8nylEEvdFZt0S0MfVyUhArf20D60i2PjOysDc5mfkN7nwZI1FQA+kXl\nPBr9OSUufpoMYpZdZuX1YQcI6YkxlZe7DdxyV2pimCEDvWfM/K6vbIT0opoo\n/5Zh\r\n=tPEU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"d3294f94c036919b1c63fde40564835e5d121396","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.8-alpha.d3294f.61_1575060346263_0.7138471090019698","host":"s3://npm-registry-packages"}},"1.1.8-alpha.0f6204.101":{"name":"@codecademy/enzyme-helpers","version":"1.1.8-alpha.0f6204.101","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.8-alpha.0f6204.101","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"9160ba87bbc5ad7c222f73c8d379d88920011104","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.8-alpha.0f6204.101.tgz","fileCount":13,"integrity":"sha512-PYsTsAX/2WtzL4tiJNWUIXE25G48/BdrGFLfDJgYnPI3JOoHDJyURj0kzaqCc5L1XmFo76QICCiH7sOnCM+NaA==","signatures":[{"sig":"MEYCIQC1WbRXh8aid4+cjKbtdd6uR2CbNzvv+17LU2d/LwPOgAIhAJp1JvJcDYyw9Ou5iCY0MoipT58dnEo1+lPUShS6W5x4","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23057,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeDmarCRA9TVsSAnZWagAAFZcP/1nqTLAKwq5oj5oxbk9w\naWw4XMoBeQwtCDk6pq5X1E/4mXx+6TM+VRtPkynispegDiecCKc3coMhdSCN\nGJxCbZpbHr8TaHJvbOrv1NiV6GrTOgfCuQ4DZZT5y2F3B/AD6B1D6dRWvQDB\nYsUZskN3cOzIe8XP8MwCjzVjpTGafpU2Zyezghnnu/POBvD3cv7ou4jU+CT9\n6A0mMmD0TEg2Kx9UVI5X1QrHl7wKFRfn/d9rLTOhATtRuSwBdrGJIY+oqZ42\n3cvr3RelbTXWAAyn4Q+zXGkP4fbCI+gY1+AYY9UWRjkv3gtUeHdhTQUq8v+r\nfioDhbNMOmUU2Xg8DI26gM6bZPwPXrCMfeQhnYqmB1lRaZxVM1R33wJOPeIY\nZvolVrT036+OZktOuhDvsL1TcdRMFSWKQJO5wFSo9U0kZ97n+p45UwdCVE4f\nP7gDyhfqzZBSoj4UV6a4x9Qj2SYRmhShoxnqt/0jMgF6gzFlWD3fd/eEwXz6\n24IBFmbbLcIT3O35B3Lt9qY+iceTYOeyAgAR3bClAZgbrdrjNcdQ8ZvmaJT3\nK63bmCCHN8VqfmdUNJWEXeXKq0yj5qQa/HZSc/p3uyv26VrOovBQlRF4iTY7\nGV0GtZa+gYWvk2VmrwySXvUXGrzCrZaR8W9uPBEnyekppQ4IwmXhxDsXfGL0\nay9V\r\n=/nrR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"0f620428ac607d4d4d0a5239e88ffa2c427ba5dc","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.8-alpha.0f6204.101_1578002091425_0.5381322190604221","host":"s3://npm-registry-packages"}},"1.1.8":{"name":"@codecademy/enzyme-helpers","version":"1.1.8","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.8","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"6a671d4346d90bf7116a4334639aba20742a8795","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.8.tgz","fileCount":13,"integrity":"sha512-yl9OG95mfX/RxjpBX848NlpvPFj9vntW6TFeIpDoY2Vfb93TYYnVPNxqbTX62Uq5W34fybsuXVmD/BxpdvClTw==","signatures":[{"sig":"MEQCICOqpEwxUwyLQAzquH8i7hHL+ihK2bCjuF0Wyhp3nW5FAiBvei/HyC0v8fYXdjbGhkAJ7R5Z4i6IrBITLdYp40Z3Xg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23251,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeE3EhCRA9TVsSAnZWagAAeJwP/37koPD0oopESdYvOqsU\nRSj1umdmxfHNhpj69pSSFC6RaJ4wFLaORZRDqem1BAJ++UESHY1uDuQgXY3y\n6gGrIEW5o+Ovb16+RjlTvMplDq8ozC+nrPEDRH4snqTulhb6pftf3ZjguLzH\nofOBSFpQIFoXiPhQIir7zvpD0C567RCbKs7YS0pdaQqn2sF5ym/oPk1DE2oj\nQ1jPh6VVpKWunzb3VRnyX/a32I4XiavEPLRvxBTlwl3m8zIQRGoUU4DEUR7F\nxWRbfHnB3/AnbHERtZsXQaM/I8UKPDNrtjwd8QM8KBuoPGpM32B8acibQkl5\neesJEYzPHODPGwI8cDQu3kEbI0lMuhgB9myIzFVW//S8BfeO7AFo5m/88oKB\n8n3l20u5+WHfLHX/hMQaRN2HnO52mHbXbKhzpLtZs69xUEie2afqMntqzKdT\nL8NvG5NMjFyEIZiYdoAOSut59K+n0x6V2r5Cc5si53vmfjnptVnZuJEbm3wG\ntH0q6KP6IaGTY04lQ0WvU3anxHm3o8H1Ce298Y7SavopEZc+JYNHCl9bQzZk\nj7zf63CPYniHkESZH4AjR06KMoLtwdXasOX1EN3IkCgRw3ERjZFIfhJ10Jar\n75EAucltBRM35hBM28LYvXYvn6fzwgujYxSwx+FAksndPczdu6e1d/JxpA3k\ndbDH\r\n=1vPD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","gitHead":"ebcffc7ca742404713fccb832e8bfdc7dfd2b400","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.8_1578332448686_0.23936754939971805","host":"s3://npm-registry-packages"}},"1.1.9-alpha.47709.5":{"name":"@codecademy/enzyme-helpers","version":"1.1.9-alpha.47709.5","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.9-alpha.47709.5","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"fbc75392de1ee75b943f2df4cedfda3b54ce6e22","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.9-alpha.47709.5.tgz","fileCount":13,"integrity":"sha512-/fa49byFm1J9CqVcWwnLYyiiHvBg2PKG4zTKgD4FzbXlBJPMSOhyr4DtzEGZMTK+qfaYsAogkLlljCNMFsLwwA==","signatures":[{"sig":"MEUCIQCfw/C53763SKr9tG+/IiJDkdslw0khVFoXB6WCDJavEAIgCCRrwxnZLCTmSfKZ3N6w3oA0VWVNpUxTViAx+glsvKg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23274,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeE3I0CRA9TVsSAnZWagAA+eoQAI4+kKUHKhGgb9hGdTnG\nMhzxt1D7dFNsNqJ1XN6D2uJJi45YTiSVCdd6wKle02+//1kc7qtciLZ/FPIT\nlrFKQ3BNBkP6TsLMzqPpcV5Ejs53AgUXAwL+IG9PzELAvljUohKL5IdAz1Ym\ns8GCagyyQm+1Xn0UKP5C/5MvopHwIAJ6RliluZM8YzNinaByKxp93EIqBEmm\n15PdWGokIVHPCQVTn5OazUzUVEo1HimKxHpnRaHoSR3IhSGYzU7Twdoz25lk\nv9I3rb1FSjn1jG6EQNsvRnVEGHgBuNMyeo1dIFOKIjr7u3RNrX/OwmSYB3jT\nksqbm0zl/Am7aoeKypqK6WApwMLt8lK3qKHy4z4FNis0it9bfS+6LJvOWjIC\nOHx2rihIWVuAl0YuMQDsefct7h0Q69vL3C7Az+ow+feWvvVaneHoFia8E8YQ\ncA16WJCYjWk6IKLRaiVZM2w0chxLsfMTO1K7oddMAsdlkxNABZgo2wxqsClv\nyYNmyqQjGcXzUk7lqJkIzmibdHyY27h5ZfK7y08CCHM1XoWRcwKGkpDxBIiQ\nBol+HKWCHdDuyoefnvD0vEpX1YEoOGC8VFAEQUmJtDlgRWZirfCPCH+PNI2H\n3iZJEA4523HB8HfvY5O/1dbDvvNuzatyATcsezqDFyHsTZWNzmIEQs/qPXYz\nucfE\r\n=SuTW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"047709a4e39d94ac5e5576101bb6e666035e9a64","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.9-alpha.47709.5_1578332723701_0.4148809410478227","host":"s3://npm-registry-packages"}},"1.1.9-alpha.bcc11b.3":{"name":"@codecademy/enzyme-helpers","version":"1.1.9-alpha.bcc11b.3","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.9-alpha.bcc11b.3","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"c9ed3aa8e3b2db1b6e8f02e86d6f030e2c6363e9","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.9-alpha.bcc11b.3.tgz","fileCount":13,"integrity":"sha512-7MY0oniCm8WniAsYSO9GLue9J5Pg6f6gOee6j9SlNfnx1+iq43k4+I6gjHJj1msNig9bEpZMpUVphqjpqYqImg==","signatures":[{"sig":"MEUCIQDQ4fKLLG97mJnXvZm2tfGU4KNzUyx3THTF30ldXJdPqgIgeSsqy12TDCW6/MbNBS7zPZQCN8sqan75Mf6mddWLuFI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23274,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeE+ZlCRA9TVsSAnZWagAAf+cP/3LjZgxgWHewNgFC7P4o\nfEC/y/Xrqx1xZT2tXDP51qi4MtHnmCN+g6O/xuErk4WDSH6guWbq8QvHxCM3\nC7tV7v/h/7TCmuIm2Grhu29Oz+0lJG+v/SF6HfgJZIh3nUn4GOs3M0Kmy/AU\naXtgRGYG4W5pzuUJDVGAP+pEEGWcDg/0RVxsm5lZtfYwsxqlFm7eP0yoXUXz\n4/5cy/Odw4fe5s2/ElNNp+LtoWm+quZRvnoyvp0qKMuaqFk/wHmmgMd8b631\nkB6o2k3i81TEgCoJawdi0y1Ep21ACex1RJZ+AtwTVlzUEQdI429Lq6yKjB3i\nyT1RYSaxUxC5aXTkrpTUlJpWn9fkfVJkKKutrSgHFq5eTnIv28cGsSB32xgO\nktUPxAlsBqAxL0XKwl9pQ7j/CrMy9h8bqNmry8QlU+U3X/tlwqMcz1NubiPF\nEUEhC+Wjl7gagF0pXWgBqTBWW2bCP5GAuuQhJIeDOLsnPSLQovdIiSOa4hNk\nvshi0C6ODpXFTSLF35GWk9SNVt6pt0iaisAfuK9ZsclZwoQk/0YjEoAWbwNk\nnOp+vtTdPkkLK4nO+doU9ZxHIv23tZpeYwpFg9e8pUfQGBw0/Ectke/KlcgM\nbyYVcwcasfK/FFGNLSQ7C6BLJTo2zTsqUAIBwrt028ob5sWPueu22bmha7IO\nCP6u\r\n=0A8c\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"bcc11b7f3bb21e6dd26ed0099604782b0b26f1d4","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.9-alpha.bcc11b.3_1578362468578_0.5603001050820042","host":"s3://npm-registry-packages"}},"1.1.9-alpha.c1cc8d.28":{"name":"@codecademy/enzyme-helpers","version":"1.1.9-alpha.c1cc8d.28","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.9-alpha.c1cc8d.28","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"b658ca0fde39bcbdfed2fade18f6060a6f354ef7","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.9-alpha.c1cc8d.28.tgz","fileCount":13,"integrity":"sha512-o4Ukl0GZVCK2bN/uAcyD/j3afRdM3F5D1X/krRQV7FAMl8zEBo3n9jHiQ7y5eeaMQUKhVACzMpUdDF22Hzxcng==","signatures":[{"sig":"MEUCIHFKhbQ+tHROrxQNbuONBP6bMDRYn+vtP8O5/7xeVLGlAiEAo2GogNNFOPMYchryh+nbt/1JX1iibPy4GnYOCXx5Kks=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23275,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFiX/CRA9TVsSAnZWagAAhuMP/2JRGMYYs8ptad7EyXVc\nK42xAJmahqvrWblBzdNRZeSUIKpojv9ej31mIvghhOEJDKeoIXEKb92eJ3gs\nfk34xqgbI1lX+FiAD1yC3LqlH8vyKQB4GU3xxdHWTDZWLNle3dVItbFevWVN\nED+ezIVmpsVUGp7MhnogFDmjyYqRbP7pLum7VS7Iiwb94r3R8HJDJDF5L9T4\nY9YgNvj10DuHeuHgZ2X/XCWMvVsLmoQ8loL2Dqepa7Kh5iGF7VuVWoeRD3A0\ncLZlk7zbHWeyZvFslRtrP5EaHSt5uw1zCmXjLmHWcA+iA/Td1NuY9MPEmPmL\nzGAjTcDQ51TdPvdE003M4OXrmnxa0yoMW4CCGQV/3zLbil5wDVL2HQFIUZLA\nKDdxvMbi6UAHCVGHwxuLNoPlaTXVCY6hCXUAfTvTZ/RyFoYWYaAEyjOJOGDz\nCik26Any8UuA4z2iG1DQd2IVA9IvY06UaKAk4RYDD5BlKXw97GZH1Uqkrlot\nt6WjCXhZdtLmFZ4o5DFMkRAcdXtpbInMDua0bkXPUaqdYiZo8p7mCLonxeb/\nrXrXZJ9O25mCLeb8jp1XAdcn8ieEg//ytzbzSChU875QP4ybSJcqdhcXs7TU\npqbvZUF956QQJdG7vloajgii8B7JqHCQOl8c1UcZe2afJ0limjhHUhl8G63l\n1YZd\r\n=+moR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"c1cc8d3c6e716420d718e6b34af7087b92bce362","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.9-alpha.c1cc8d.28_1578509822825_0.871117384360538","host":"s3://npm-registry-packages"}},"1.1.9-alpha.127490.36":{"name":"@codecademy/enzyme-helpers","version":"1.1.9-alpha.127490.36","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.9-alpha.127490.36","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"d30f8f239303c056297114c31ca9f9a2761bbba2","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.9-alpha.127490.36.tgz","fileCount":13,"integrity":"sha512-FF6snM6e9BmL3pX9M6NWz2GjhWqtW51bM3Clx76O5fcIZJDB5xz78u6ZS6rOEvwGorSvK1q+uvDx7tYt01xlLw==","signatures":[{"sig":"MEQCICZyxwAwcCWUAH7MwD9lsyTdqVHv14t8MOXrUtyhwbNdAiB/6EXHl8oc3Cu2z31I7zbnuzLY3KUbUiPNFaGuCLv1hw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23275,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeHJTsCRA9TVsSAnZWagAAlqEQAI/EzM+dj2puu4DfrRsB\nZd/DYDPQX9AdUMrJu6ILrFoV3ooal45+VWnxOpsiA55OOeFp2XNUc4vQyIba\nXy/lN3jqn4a6+6Q/RbuEipCrSQ+Q7akeVYEOfPS/COtT2E9xTsvzvTUbyIv7\npPgzF5slAw70RF4d61XhSmRLEI+n2wSP/DV5y2cYFayNf5AGDLESTHzI1Bot\nxruakRDlsNAnSvDpLgDRNrDwGWWkCTDX+tJrdaHx0smOScJVe2TBWRG0rR1H\niCGDuMHluL4L7w+c418oPBtjMyOE+DYIO4h9QLW2asafbDhoMbNj7N1V0T8H\nST5nG4ujSqSALuJWoRz5GRFcMghtHjT4toSShGf9rW7IOczWzlH2qGwW8Ua1\ngf5P+EKLQVvN7Cdp2qS0zHkiKHZ5DDQQwAUb6A/yONCkNvnMAFUK/cS83gxo\nKjGAIf6rrssIOyqj8/Fv40YIxAG6aCOt7LR3J3wzz2x6BaEi5fyNH2UCRBpL\nikGHlEcvTtsKtAdxctSDI6lRT3gPs8gH5HUadiEsH7EZFDhCDie3FIprpMTf\new/ieRsCcQxzgoxO2zDb3h9+eR5VDsPGdZ+ALTHRDHRKBimph1M3oCGAMzKv\n2x8CCI3D1+WRzysG7h6B42yux2GdB4DPbwv9HKHV9uT2+ztx3CGwUPdSv6XD\nNC+S\r\n=X7l/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"127490f8b4bfc2b7148f87abfb288af546af3aa4","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v8.10.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"8.10.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.9-alpha.127490.36_1578931436112_0.2499143131904571","host":"s3://npm-registry-packages"}},"1.1.9-alpha.54e86d.42":{"name":"@codecademy/enzyme-helpers","version":"1.1.9-alpha.54e86d.42","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.9-alpha.54e86d.42","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"052347c8d2fa952a27f5bb03b40e2137e7611ae6","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.9-alpha.54e86d.42.tgz","fileCount":13,"integrity":"sha512-Ctc9emQ9DqZY0ujeAhWXfHp1QBNSH9DfimDyKGlWOm9S0Jrqai5ab+OKTaAH2jrUcLDMKGKLI0zq4i/y8td95Q==","signatures":[{"sig":"MEUCIQD+HPnfYy+RqnK5Z8TcKqCnSjffTCITpinZYODej2R57wIgPAp/IqOlM1MjnskBZBzgoXx2oE/lN16Rxk2MgfobgAU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23276,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeIjPrCRA9TVsSAnZWagAAA+0P/iiLLK8CHyDVU51R7UA0\n1qTFkPyQhJZpjqXQX9DG0aG3Xg3S+zqayJ8w/Na2yGDmmZzxkfs8L2SBai6k\nUL3jY4cLECFQMIHJO6/Tj5GXysXkTMNzeEGe1U2fKENvn65AfUbk+d8sErJN\nARrmv2zR2PkgBckWmBE0q4C2n62AVvZz0wn4bO6VpMFj1n6JcTLeOQ0iKHTI\ntwssrP3YoyCdWPhbgSfk936u2m4a1C98JH9As2H7C/EinB8MUvsOyRIBqbDA\nDHpDyX4Cq75XX6s0uT9ARlr7rwBudS9sZCMUtsn8irNvbGN/FBRtYuAB5iT9\nstT7vigZvSWxJg7eXmz6FsTCUpY1x7OgiLRyo/vBTvWI9KahtQcBIGc/x1sH\n7PTDow7D+ftSj23SxW8zTFVy2mdb8UPRTNnLhhBeobyTzoLgarsJyQnzMrF9\n1phUdcQyJ/iVazviFcOFT3NnWzkAlpfIlmWNNHhpmxkiAXR9GaMDZj54tmo4\nHyPvO/HBSgbFaWbNEWl6GzSXISQ+cURdwaBw1K9wTMG6XrFkn338GRyLL5zy\nv/FzMBUp2l5ylEZmwGADBOhMxUAd0vUv4swvi0YZJvn09VjjKweFpyRYkRfS\nQIGi7YewSfYGaw56lkFx9oAJ3Mnb0UOvx60ZeV5qsJbjuuNZcPrPjGnmnBhk\nYzYw\r\n=cS5W\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"54e86dd12e4f986bf568b2a163f52a16b1f18378","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.9-alpha.54e86d.42_1579299819448_0.009306996425881175","host":"s3://npm-registry-packages"}},"1.1.9-alpha.50536b.27":{"name":"@codecademy/enzyme-helpers","version":"1.1.9-alpha.50536b.27","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.9-alpha.50536b.27","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"2819b50204cfdbee1f728dd7bdbb58060eeba032","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.9-alpha.50536b.27.tgz","fileCount":13,"integrity":"sha512-R1UN2KEOnGV6AboR+6mIL1ZJacsCgVAlS9WLzWlho6VgVeFqWWDQYj9xDUw0c/p+oKeCelnoYM5Dtq07/lvvag==","signatures":[{"sig":"MEYCIQCSczLg1drcBidKXgXIO9B50SmdptSJINUmJydUN0VjKAIhANQVZW5p2qot+Eg/fkAEMi0+/seH5gPY6wLAiD2DWum7","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23276,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeKMYACRA9TVsSAnZWagAA8rIP+gOiAx7tt1eMQO8Un4me\nCJW95G7mE4+HqYlcpFiwnFXsqx9woFCkFXMsyrvQFLTlAQzxocYDtlaYbCfa\nySGJJH3WPasLLN2LU9f1AwI7LJ8L9i2xIZObmPwYXZ62wxZeZ7YA1yPJ9AY9\ni4EHRXZPXQ+nKMEO8aUZvLC5Q6VjA+ds0UElR9xGcAHAfsGOjtFhLWX40uVf\n9+Vu7UX9n2aYeb+KnTqhZIEe4pHzeHMujtCxrvOQ7gi0tMPXy9V2MEGrC1ev\n+w9q/FJKSh33mwuaXf04x55212ZtWQ3TdA/iox/U12Cx3xusMIiTygfmFviT\nxuxzFoJ7wQ8XAVf/b8a9pS4thRcff4CFMrXg39wzrJWgC8EZOOim/v83N3K/\nbU23KvO1cQU/BWbtgQsfTqkWiZVZeNBjrtLPAvz2KKqk9zOPd0lGipWTqf6s\nPvlNizmqyk0HS/c+PPdlb0lj1nZbJhBpW80BZ+bN9Kobqz0mHmXeNpUqAgbW\nqOUJp90KVRz3N686dQZba/eQ3Dlx+F32+0pHsSWBSXDxLQMMyxzOv847PTM7\nsnm1AcPCGykMkzoLyKSsBXsyxLYFQZ4MFQ19KLZStm3sc6i4OtQb0fjH2gNM\nz2gXJkWZiuZUv3mc+PJnEo/pG89W+pFzcJJt3FkJsbQCojymzE0HXOCagTuQ\n48j5\r\n=Uxgn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"50536bbd07c0f90b3aa34ceb6e02d8420a4fc0ba","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.9-alpha.50536b.27_1579730431840_0.3531362715406521","host":"s3://npm-registry-packages"}},"1.1.9-alpha.9a9880.49":{"name":"@codecademy/enzyme-helpers","version":"1.1.9-alpha.9a9880.49","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.9-alpha.9a9880.49","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"c4a0459ffee60e061cff58ab2928a1d3227a5623","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.9-alpha.9a9880.49.tgz","fileCount":13,"integrity":"sha512-AiPH2O+8MhPjbyihvnwKlVsppoEJPdyYWC7Td1gGQFPjV/7VgXcMOgL9/URpZryRyf2VxIUVwfIneswEfntZiw==","signatures":[{"sig":"MEQCIG38rcougDyDEWDpGhWlI7CRsuOYJgzj8TXThtsKNmIVAiBX76559rh4X4PchB+t3n69tWrWHjVOtbFpBTBAs/SJ4A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23276,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJePBDqCRA9TVsSAnZWagAANOkP/1dJZ+Z8jv1BYnsXh9Gl\nGSgR5HUK8rxIG2at/3jrAM9sBuXH+TPzyGN99NWynymFBEPxifrP3KJW1S8p\n6KgbXGmNjwGRlSC84tfMaIar3dkWlJkAj4x22q8zWkrVyuWerC003sGc543k\nnaZykZQCSqBbYy/hm3HbQ03sXKa+N2zIasCx0XPYUsd7np+X9+/kVsVN9b92\n504ZwelmVE1LmTc5DT4RNfyMpzThKQWLJNKcrLjNDY7qNSo7Er240FKSZ3ze\nTYHuuC+7C9mAwsR+/3xq8ZIxbR6X2CcpVhqA8NVwHip6CnD00VSmomRu2Hbc\nLLO5bi/NzmVLKPoAFzUI7yWN13pr7/Ny65pXopfMTWXdDK/pcLydT2asWcyb\nXpub3WVz0A0DtOd9Elj5k9+5jxJaTy9AEwXFNDkH+69Oy0HASynahkVqR2+W\ndJ6Bb1rqIvROGHQBqCFfYBxKqtMhoCjej1jPIy/6JF2sw9Ogyjg6wkvQhQWq\nyAs+2cMu9KtvkFhOM7J7pF2IGj6ZMXjSyfxAXgFb6Dfv8BvJhZzuFAHIC5Ex\nUv1HSQK7jVqWI8EzT3fUjQsB0DIYzbpMFXx/41c9b/oAs7Ro10T7Ml6Y6oS1\nLRGBT+NUq5z0w03ZSHp+rdIICxyz/X9EoH2PprBd1Y1B4Ya/wlDZlBfhRJVl\nmOBC\r\n=7ZdY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"9a98800208e5fbf5405a0dec73260f436044cb4b","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.8.6","enzyme":"^3.9.0","react-dom":"^16.8.6","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.9-alpha.9a9880.49_1580994793967_0.4571607264154436","host":"s3://npm-registry-packages"}},"1.1.9-alpha.b22c27.99":{"name":"@codecademy/enzyme-helpers","version":"1.1.9-alpha.b22c27.99","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.9-alpha.b22c27.99","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"d397deb340dd5f461e75dc5edbc1a2038fbcd7d8","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.9-alpha.b22c27.99.tgz","fileCount":13,"integrity":"sha512-ywi4IA6FfFBjZsCQFcd3d0idoEMdNsJEHYwbd7ZDWZBHEQaW4blbc9pDemzLF8KNeJRYCWzRhe9ZJ9hTzCfkug==","signatures":[{"sig":"MEUCIQDu4se5gsY8L73bHK0/4Fb58+yd2idr/J2qLRXFlFds+wIgQFeHfd3Etxa7W2NyQoAQP+TEYmu6r0cYxK+GagQdgJY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23278,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeYO9PCRA9TVsSAnZWagAAi2AP/RuLR66L2BHh7MLc08ui\np9wAqfqslxMTb3rEfGbrrATZjPMXz92uTi4uhWATdyA5sNlPoBkjuYxABTpk\nv13WfNphCqEpGiwv2YkfetapkqkZGuCwQ4CffUqzZi+5NxTI/NZOA8tMqm0T\njEyFlenk90z9f+0RP2WB2hcsw9Povy4cF/Y1OVSEG9vHCBkh5nwlZBUdN8Zc\n0JJZ+Vh9NLx5p9bAvjJqJxAbdilGDADA7mSLaC8ZpyD/HXTFHYbeNNMYuO9O\nfnFtcfHUkCJaKciPdJX/BturrevekYMJ/aGt8VXwtpvcUVGImHOGlQ2Z/WXh\nVVc5iivGCGvjhExwPzNmC0QDDWI+bcxCIHethM62Dpjn9PIBcMg1XFwi1Sug\nLRXHqB2uIYWBfdr5VvuH2FyreSdCdUdM/TpjuQVRwfTAUqMmKDu+R4yTANBd\n2vr5WsVjQ32oW6KiSOEW0/kTHRQ9DydxawrZTQl5hjqJaRJTGgu+avtzFaNH\nUXjhYNlroKiTYkRhzXe7E0h6RcnhhEyJHOZYSHP8JhxSl8Q4sQJ0GhOEIlr8\nfKku8sW0sFhqno4tkmDLkCmsaQSl0JgXhuR6s4qR9HWD698eC88CQ0S/MdsK\nu5kGiU5mp6OCT1lClz1EsDio9Qrivf3m3mJ8+mKc47P4RLLjCy/Z/dqsQIGz\nsm1B\r\n=NjNg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"b22c27fb45a017639b5a8ec8e5cb73f482a0ec6d","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.9-alpha.b22c27.99_1583411023190_0.824299918405532","host":"s3://npm-registry-packages"}},"1.1.9-alpha.3b9285.91":{"name":"@codecademy/enzyme-helpers","version":"1.1.9-alpha.3b9285.91","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.9-alpha.3b9285.91","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"0b2e71e530a7bb07dc31f5e26f4ded249545cc96","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.9-alpha.3b9285.91.tgz","fileCount":13,"integrity":"sha512-h6m/MqVDhZpRy9iTOuZGdt0LycXNdrtW+pKSO0+4TvVaAQisGlHvUKF2qjBub4F2Iexpk4w1WSKsExIfeVdn4Q==","signatures":[{"sig":"MEUCIGbuWPbuSOxjlE/yYxhIo6fgwDdV4uWi/49T0utqgt+2AiEAsWPzS0eNYYR7zmcdXRYUJWa2QFcYdcu6BTjEl0Mq3yg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23278,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeYQsJCRA9TVsSAnZWagAA0J4P/3OWrTISbCgw4w/z0X1R\n7GA0nh2CPmYHwspu/aXk2Tzfh2vafkWoV2q656iCKXIaB1CEJF8/10Q0ql/6\nAgvjLHZgI4p1Y2t2dYHSfxJq5dcp7e0wiR5pQDlRc234604C4aXknA8T627i\ncmh2pgONJYttmTs7flHeoIrnLXOwzkCAfMyU7VIlSxj3mzfYHUKc0oO0wwsq\ngB826iYSs/+kcS+PqUBeVRj7rpayly0sNOZhGK6nTX9nzUsEHVOzTmCRTnSK\nJuxTsCZLytSgJuI1B9zATNakvCHJ7ioQgsNt/zHFnmr9sA4KDGoNVDKhvTJA\nlcaBuMo8LNBiYbm+48odY1CT6IY2rGS5JIe3u6a7XEObg44wl7Tzzp99GgNH\nlpZzddkPqT1oe0IxtECA9F3ykXlzfp7W7cxQVlZEQ9iK8jfwhYS9AioOfnlW\niQJW4eruHRYcppd7ixqThIzQedrsGHEUBW/djaGkBd4Zh6bLErhrdmpc65xR\n15RFVBpe88h5gfZ/rvN/gNtK/oh7yEm0yoj5hY1b3ohXpJPL5uciKjgeQ9ES\nlYB3PZPBeOAi8bnDh0d7tycy8+F2ud0TjNFbVq0ZXPgT1Jju3ECmYVLJwREf\nTxoL7I7RpilQOuS8xUVlxQe93AAlnC9KRpfqQPR/gpqY1wolG6El/WGp7j/4\nB632\r\n=zCeq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"3b92857db55ba88ec512f0d5bbcc35a9c28beeb8","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.9-alpha.3b9285.91_1583418121408_0.6555070076022631","host":"s3://npm-registry-packages"}},"1.1.9-alpha.7d1eca.91":{"name":"@codecademy/enzyme-helpers","version":"1.1.9-alpha.7d1eca.91","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.9-alpha.7d1eca.91","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"6b141d18fd059635b5e75ef9146eb8626f576f05","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.9-alpha.7d1eca.91.tgz","fileCount":13,"integrity":"sha512-MjvSi9Ke2ojtws4lOwoSCwia7sgnt3lyEmihRfYnTc4UrYMs4WDJDYRqcWqWPNmihIl8KGqyQVBgEsIAfD0rdQ==","signatures":[{"sig":"MEYCIQCuN37AD5WMoKfNYpOio6s3uViczuefzy2GZCa+/ojZtwIhAL5fhCXmVpoIdK+X6ySYyxQwjGplPve5AiSF1Av/JawT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23278,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeYSUVCRA9TVsSAnZWagAAwMwP/0HsYT9Rxn4CN88uBDPy\nrXYjZME7FDcgd32mxWWrOLIF8KqoKwqlzluQTf9wPqm6BPOE1/aWCs/zK74t\n/Ywiyx3V2pTOBrPCqhGfVFuQcI419fpGVTv4chpjFX7EaLnDM5tlI5/h4e2G\nxPrEajbh/lk5TFpbf+mOIW6UOGiOaUo3XjkhQ1AYWcDBu9/lH6S4aCLtSqJJ\nzAEN0jgkiEdw8UfTmGRlHpWOODaZRwRMYHJ3YIyQsrOzc2G3jILYAYNUiuOd\nAoo8lvGiBN47hZYhRfFkfNtTxFXmrjCvimgsVUm5ISseoiJ3o2liCfUHBsMY\nsVjrZRy1mYjRW7NECQEi7+Mk6srf/40gxaZ9ZbtxLmclUZ2LWyTvd9kaxPc3\nZV7kEEoYD5UrFOlFhoV1ZcRUqOy3uJPHbg+yV39AQj81aaCm8zeIUAK90Xus\nPYfvJk6d8rMXgd7HLbQGTIvH/25IuQ58rxRm/7b4PboyFCdNKwIplB0fJJAv\nnQZ/Iao0awi/XNF9rUF0Yr1V8K+DcddPumPY4OTObdjaYxvZinvSlPBmoZ/s\nmK50FuHy/NecfyPgSnGC/sZ9GLImgkvsmAUt3LG6hh2hBMmb6yviJK1eb1D0\neaG6MqLlcPvwiewdDlJFW79jUGsTVS7U4IWyA0YzZTkv0eMqXuq3yoZmV1GZ\nx9mN\r\n=K1W7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"7d1eca8f4a4a110d053df97d957f1d56fb53315a","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.9-alpha.7d1eca.91_1583424789184_0.2210035255648657","host":"s3://npm-registry-packages"}},"1.1.9":{"name":"@codecademy/enzyme-helpers","version":"1.1.9","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.9","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"77e98834a27ffd7a6be17e1814fd42bbd6bca50d","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.9.tgz","fileCount":13,"integrity":"sha512-TvWtcq3rQKsg5Q2/e3dgQ+9oWVrlK7wzjm7K/ybvNUBhQrkoLRWC+YZYBB0rwm6O0dNizWTI4+Z48dtDmExiLA==","signatures":[{"sig":"MEYCIQCJQNLQcRMRxvpnOj07P6i+YvQ2K2vnphYZ6shUz82ocwIhAO5+2nnxkUHqRP15wOxujB9WcFTYn6CO89X4LO83O4vx","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23472,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeYT77CRA9TVsSAnZWagAAblYQAIxPBpTDnhAyGVXhaixH\nddSfHd7QHZcnkNmfGp9x0Nnv1hjWz1Y9dmjhxaoqcXwd1uyUir7YjpEcwLnX\nyOPY1wS+YLqd3ZRzFijoIuIe+K9lVMeBC5MiwWHR4sPI3/qiak5cB/W+pjWQ\nWWL1dH7URov0YpMounzIaY92FL4cOUPlBTTUgLQo41TPXILLvJLcE67zFM+J\npj/dRrSP6lpMwUjFnNhRGXOKhClHQnAeVZYlQ8SW1paIjQF4f6FlNbzS0ySw\nLoDR2FuQqsavPzHzQxcn0PMoT/VgVla/6oTd0OOEw6W1tBPD1D3HNzriHZJS\nZE652H2gkZu7uS9zJtBp9A8Ss99rw2n5S/w7qi4F/3MprcK5u12EMFhAbVC1\ntK+lXpTpq/AqfKwqlMcIRLXka0ghL6b+PrBGX9F1ZSCapx7pvG1LWqbd+0Ht\nPQtwj1gdO5BPyS+WH5//AFGkADXOsTbjMJZ3A3L0qNQPtOQbx2CKAvHjFA1+\nCV2TJfG0ionmF1VNknlvUc6eXCun/ggLswpdS3FXOxxM51vu6+GaRrSOfFL2\nmCP4rUXYY703IMt/4/IUiL1mFq+L5AAuiLrSJrndm6/R7rXkXrzXViMcKdiI\njpOYKEcThJ4ObBLuWBRSxpzQnAwPU0VgHazXd5liliW0NPulpOGKgR8QFLSN\neciV\r\n=VR1W\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","gitHead":"69804c2b427efe6a31614d960e06282ff547ada3","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.9_1583431418594_0.5940304694058653","host":"s3://npm-registry-packages"}},"1.1.10-alpha.8e28b0.5":{"name":"@codecademy/enzyme-helpers","version":"1.1.10-alpha.8e28b0.5","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.10-alpha.8e28b0.5","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"a03fec8466f1c23329b9715d5087a8585ce9a306","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.10-alpha.8e28b0.5.tgz","fileCount":13,"integrity":"sha512-gmRDPCKEI02AwRJTztM2ZeGD1p3crizEX7j91V5TE6927+gK/lAB2mpwVbo4tHWNWl7gOSmP/c1/cv/9JB6T0Q==","signatures":[{"sig":"MEUCIQCKuco0pkG9Xamy1n8mlHWgDenQTTGJGZL1OWg/Yqx9zwIgWPu1BY163g0xSu90DK8iRu4yQrjM6ZKDMqtiv7gybMY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23497,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeYVzJCRA9TVsSAnZWagAADlcP+wTH3wGa5QCiNTLOAvwg\nNiES22OgaQwevp+KrpiGPVbQazQjnykQC+Bmhv9peqTKf5okpaYac6lKcyYT\nDAWgXG9hiB3izXkueb8XwknMc6Rlpb6dRhJWwh/DJpMpiil3vQj61XvjUddY\n6T8QpvUYOMPYVfiblF+wcxANwojy4J4wcE2y3Yd+YkNXGkRZtuRM4i+i895o\nT/uEfrRXb4P96tAtE/zUMPrqiFzMa0T/XTiivKooFZcZ4M0YJyafex6yTSZ1\nITYzpKln94kRG5GNaiLNKXeM/VLSklORY3Dyc3dEp0h+zYx//flCQUKwNvDQ\nEQPkpGw+ePuxfB+6Do98L5Y/fkBga74oyiBh0v47YAB+Lvnkmc/L9hPGbDYa\nUUkSVm8Cv1RmWialiNmRp7FZ9rAddiHvzYn4qLa6JOL77DH1nTyt1BdnMd14\nNSKED1qL1BW53jC3fZDLNbKCztZg0UGPwihlqS3mQuVgebIhYnOnDw/BMQDK\nktgr0y3e7qz/K1mqfFinAGplIdMkAVeNsJwQ38KMZ0McZzeHJ+7+D1luMHmf\nP1kxr+/lnpHRETXmSOqRJbGTnlJiE5eR60q0qKfcAqor2ZnQrmKjoa7dfxeP\n3nfxfgP485g+852X8W3d+XxJIPf9E5vVSzP19y7uj7Kjfj6WnclRpxXbY9FN\nn+dw\r\n=HgTr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"8e28b0f5f3d9f50096a0453b8fe3b85e3e4971f0","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.10-alpha.8e28b0.5_1583439048920_0.8015824514490182","host":"s3://npm-registry-packages"}},"1.1.10-alpha.c0d688.3":{"name":"@codecademy/enzyme-helpers","version":"1.1.10-alpha.c0d688.3","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.10-alpha.c0d688.3","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"a7059b529f325c55c19296754895cfc67366edaf","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.10-alpha.c0d688.3.tgz","fileCount":13,"integrity":"sha512-8ONln+RCUaqIHlhfefbBWF3oDFxY3O/En0QUuswI2ZtkD3s3hy77WUG2lws4WZy1V2y70Z6Ggd8N9dYc5Lgazg==","signatures":[{"sig":"MEYCIQCTUcXpYg82TgSYJgSY6VlCGMCHW2N+cIDUVF9oE2F/4wIhAL9KJJbCdY4Fz+yqLtguHlMMkov0tqyEf1WE3ifbNIDT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23497,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeYcUcCRA9TVsSAnZWagAAUNEP/3ylXvpo5xH6mUByqkUj\nX2GtTsmS+3ySgjx9cfxThbZYUq35gehBV1WOIJWfmlGsGMCtwbo4WieWL5fQ\nwcrO/Sa1ji1550h91oCpHQIEqdiVMZZgozCbgUWcyWj802sItiDheYbNoIdZ\n3NmHKVvbOh00mrmc6a8ykbXy5atvISOV/fWXVVGrxdO42oZZFJ12f8c3UhHE\n2owcGho9a/x4SoDwdpCFDfJiKwpF//hcE1lIQ21v3Rwd6d5JgSuW3K3Fepgg\nJdNsfyXi3y6SDg9h3NsgSuUMl8FJLnUU96kh9xh9v5AZYB8F8jsyJ4CNrdp0\nmWbqEwye2A+wvzyVeIBCELReUJF/T1NAoT2ZJC+sP3/TMXZg/NjlFGLZ+LxF\nIl4w+tSABJFB3k62q4K2UIm1nDjFetsqo/z2mXSu6lq3VAqZ7lOzRRXEd69N\nFVsBFsQCaIJSKKj9iuBajYY3v35JvV5GY8ZhAXWMB4lXEE9+Jhhw9kV7vDqc\nvZrCYbCSQ4sned7Ghx6ij+a48OYSphxIzB2LpOi/79pmz/49CnwglzI7sWEP\nuEAV0/Pnw88PPSirV4bjyYNOwCUFQs6hLgTOLLLzVkYpp4GIjr8ZVxv9HJOb\nKz2phvcUPAh1M4G/x1bpspaM0aJiTfLItyWCihQGJyAm3LbnOOhJ5F1AJOPg\ntjxs\r\n=yKl0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"c0d688e608b5acfd9d7802ad872fcd014845faa2","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.10-alpha.c0d688.3_1583465755742_0.9987179868196714","host":"s3://npm-registry-packages"}},"1.1.10-alpha.a07027.10":{"name":"@codecademy/enzyme-helpers","version":"1.1.10-alpha.a07027.10","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.10-alpha.a07027.10","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"4df9c0cd789a01be5644556862f152d445c1c82b","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.10-alpha.a07027.10.tgz","fileCount":13,"integrity":"sha512-xJ0LQIYL53cUrzIlu4YDVo269o+ph1Vvj+PynUGPIJ2aQqsDCI5Id/pzOcJ1nGCjrXspmM7OduqbBzU9zxJ/4g==","signatures":[{"sig":"MEYCIQDVtEIUh3nRmn9os0G+BON3sM89jpAMVWXlwNbC8vXc+AIhAPgU9/gBa1iYM7nyJBYdM8zRmluQX3nLtF+Hs2faWSZ6","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23498,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeYsy/CRA9TVsSAnZWagAAsXYQAJOI9p5xEMKVcGp7mOnn\nX8VOazArW7IPmnzRQxoBS3TYgW1YsN+3rsRv4IatjBhU1QT4zbNatMc85y/C\n9yruAnMd1fRRp7eXT6zzNcYgSRbrC+/D292zF9agvjEQF4TQl+2v/zAY4uGb\nONU6L3PjO8PyBMMCeNKFlKTGnIrqr6UpT/1yv9lCm139tyxrM/urIIvwb5OR\nmbqzfzcHhr3z2Aa8R9FVQQ5zkBTrERTSouVGThqyUeQzRAsC16USPT1l8SSo\nGyu5TrcL9ND5aIa1x0lty8o8jS7URYxb2MXbZf8u1PoYg9DektUdeEX9JTjg\n8vW+1+hS9xZWF7I8mBc1AziDtQxlAiw2mS2WnMszt+XYXxaldbrlgN4uOALx\na+A6ilJ8X92o9t0NtGfhnvtiJ2GbOoAQrVx26q4Cys8d6A/cBKXQ6zSKbhIp\nR2DQ1imZfVB7qyaOUKF1e0ZGnGkuG5v2YIe/jfv3CuGKAGB6B2741OoQWyvL\nQ17vKW9pPbB3kcEZ1rxZii4JpLjg8gl8Iqdp0vdiInn/a09THy48pnYlT/vp\nq3RAVP47Q/N+VXcFb18W+6vJ8l9+G/STqfet6Y0E7rBz2Um5UVQNXhTZF1jn\nQzbvy0aLWQevJwBKM7taOkkItZLchzmVVgOOdOHkvDXHHPi5CiV52mffTgtt\neItb\r\n=JQE3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"a070279b44fa6a9c0746b7314307fe40c8c765aa","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.10-alpha.a07027.10_1583533246510_0.9108056361624461","host":"s3://npm-registry-packages"}},"1.1.10-alpha.9a0203.41":{"name":"@codecademy/enzyme-helpers","version":"1.1.10-alpha.9a0203.41","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.10-alpha.9a0203.41","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"f795e0013f58c356b8040f66448f0c3a2d7d8517","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.10-alpha.9a0203.41.tgz","fileCount":13,"integrity":"sha512-jAMTOVP7OqlA2bX+qTp4IWFI3Jk6sPUJrAfi/GHdWOy8eubey4Qa/y+Td8XupMdCsipYrBqM3zo/t8YzcLzR8w==","signatures":[{"sig":"MEYCIQDoDvd9Snskcvm0Y0degsHYwYtPF048+2Jxro5X0XVbCwIhAJGG/IWpQdIx+gGAwA0hLHmLU8h47z5XcPOTxAzwjJ4U","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23498,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJehKZGCRA9TVsSAnZWagAA0+wQAIoP3M0t0cdDbq/v+1wh\nPiP+sXERrIan992zwf2BjV2/9vdmoqFLa7d+nuKtZnMlrfEKHrZof/ebhpxP\nN3Md/5j3fN0LfFb6V0XCSHl30HEg8KLZ8ve3z+AVHw7cpASik167cXkI0hUN\nvpXapAZ1zcMa9OJLL2Ard0rBQmNZ4DvEiTMQblRlvsM5cfRQU1WyzrVrVs9y\nuIQICvOygcV2+3w8lMBPaOIqY7Ymxx5pNpNzox4/YDSnQAAUc0DU6GRoSqUJ\nMboV1S58ewLBAdXVquG1KXRRLX8RHu/saxYa7EY3RigST679eiJyiOEDagX4\n+pM+sifTBX0ucTorWh52KZOYOLkcXzjzhmgEyUXpkJsuHLIde4u4umZz+bG/\nYACnfmjouXpUBRPjoeBR8GT8DmGhkTJ/3XnYGEG8XZaEE/Nz3+PNeTTPZArp\nLRgZpi6KKsgfMcbLGynEyUcTXQlQ7PhfkG4DrGgQdJGO7GT8szuwYHz2QLpo\ncsH97nEFILyYuo6uAG365UugGdCcIaLLlMaObxBe5Vmn3EVkgqLbdqEkj9OE\nSsodnik1eMsmCfNHtElGnUQsQ8uuP8w3oubDiY6lR0jX2Mzw3oqjMuOueoNj\nVJwEFCWH+aSZdnJ/XqHenSoSD7vkaCP+XTJJsBHpt92lrEz3l6AEvt6tIN0r\n3iiS\r\n=VVK7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"9a0203ebbd36037bd6fc62cc595adb883f3e2a78","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.10-alpha.9a0203.41_1585751622141_0.07606316173113781","host":"s3://npm-registry-packages"}},"1.1.10-alpha.80e421.55":{"name":"@codecademy/enzyme-helpers","version":"1.1.10-alpha.80e421.55","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.10-alpha.80e421.55","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"b80d524b24c9218a3b6a4a164b9250c575e1bea1","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.10-alpha.80e421.55.tgz","fileCount":13,"integrity":"sha512-xtGtpu2nE9ULPaQDXd2e7GV65Hc2ykoARPqg6aguZ2dQDwVh97l27WjiZtjPjjNj+SY+4/f9kNnrkMSmPSKCuw==","signatures":[{"sig":"MEYCIQCHgUXXhXV1MMwBiz95ibOdW4LzKdcPOP9VQUghLziZzAIhAMbOmkx32HlpscVbGhsCjDBRHK4J+l3dRyVBPES9p3Az","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23745,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJehkQDCRA9TVsSAnZWagAAxHkP/1XzYR+wziMQH8p3b3ac\nuev8gvuOtEcUtTKtRJhH/zXHnf7gZtkoUQcfLahwKg8BdImowEznTkVyFedT\n+UV4A8Z8cIq8eywE9i171vanvM0+29roJnDOx+w3Tl5cDW3GXcVmLAuPmBcl\n6caJcI1u0chEgQi+O7W/4QyAAsJU2lBMnsl623RIncVJLJVZ+Ug1czaHCxw/\nrsCDDYxvHXvrwMC8ZksYw8btrgav1v58wTYWv6h4Tdo6SNTGqoyAJPnnzZSb\nIAF1tlNuG3+xSqJq46YO6BFKJpo2DkvzfTEsliQcgv1OiLKU+gSLas95Vib0\nxYYCvBmUqLjXN13QmTwdZdyuzXqV6pLHt5ArKTCalF0yBsGpTVFlb+mpK9Wk\nRJAU9V6PD4qpMvEz9ISfVKpBefDNrbs6F3ToO21TxVt/5sYGEajp/o6Y6HNK\nImziLpD1uB1vv4+lUdx/G/JIG6fr+A4apyGpo43njsOoiVuL8rojcKCxMUP7\nIj4mqJVjw5cUZ6BPKmvOFaKae3HXRQEp4ZiK+8+SSMGVs9oaaUgY5oy/f9Oa\n+X4tTH0es4+6WrGqGnOWQKp6oM08Wj9fWqAljRT+76VJ9nzl/FKx/rVeBFcW\nCb+2n27Akm4n/9eApqXJkE6qbKEt0QTquGaHUfwjm3fWC//ILMwCGq4BW/hR\nqSoG\r\n=24IK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"80e421cfc39fa7da9c99ef395670557e8d038e75","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.16.4/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.10-alpha.80e421.55_1585857538826_0.27375443892748663","host":"s3://npm-registry-packages"}},"1.1.10-alpha.b0a213.56":{"name":"@codecademy/enzyme-helpers","version":"1.1.10-alpha.b0a213.56","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.10-alpha.b0a213.56","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"36e3a853ba86c2084c1f97c93bdec5ff28b4e0bf","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.10-alpha.b0a213.56.tgz","fileCount":13,"integrity":"sha512-T/K1CyFc3RdCCfEEockLg6QwD/1GOYrD7y7ntcwGEffZJqRfC6IGSqaRs+Mi8ZCQwgAWm3dj7gH1Ef02l9k42g==","signatures":[{"sig":"MEUCIQC7q79AuJgQL8PYSuQb7xf4HaTPhyWOG6O6x5B6GJx7igIgSGquMcy0zWqS2kmr2N2j9l29M7k5xJ+uKgUeOb5z9lM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23992,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJehkX9CRA9TVsSAnZWagAAiVQP/AoNTLIaf5rigEtV6PRd\nk/1RIrjGFrpEnwDtrdbwndZUA8ElbQ7JOGHkAx7RzLFwAQwzX1uslo43VvEy\n7gF5MYcG45YEAcxhHHmUOUhnY50FZfkbOvdC+3gBpvN6FkhHPpuhIfFmRrt5\ngk3b6fFRILcUpKoOoICZPx9NFySVCOnqVS0t5vhBCRXc4PL2vE6YyZhyo3S1\nLG7aCrSxr70wzeNQ3Iib/ElPbJzcDUa5whqug/4PmArrschOHte5fVL0we75\n39qEHA9OIjZkpbjIYxYsBDqohBkwpCHobjBtTYironZuI9k30wPTI/LFA3m+\nDoJtPvDKV6TX3ogpYsKrDPmRzy1K44qepclXwfifJFNrRmj7UN5i3aKt3mcl\nuAjxX4h95eob+kty+ldEfqDEh9FSHyezLQ6c/pfPagfDeK8jM1rRXBHd7e5U\nVotn8oxHy+lwAjnvYlr5eSRpKUghzSCEmBBgPh4yLbf58oj3HgcyxOEtcOs/\nCTf9iCP25FJJ4AWabqn9WNBzW6jk7wkQHn8zp7jMCnYR1eYlG35Z24owxfI3\npGQQ7AH5jgeociLPaaHRL7rEcIeEQR9Eas5I/7sIaIFbmdRt+VYUuoARbJZ8\nh/DHsjsVDV+TMdab4v/LlGqNT2ESkhJoGG4bTbZH5tWxSweuK5eKF+xd98y+\nglbJ\r\n=5xK/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"b0a213e13b570298a05a9f0f468f44a5a89d063d","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.20.2/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.10-alpha.b0a213.56_1585858044983_0.5630949597060311","host":"s3://npm-registry-packages"}},"1.1.10-alpha.9ef6ff.59":{"name":"@codecademy/enzyme-helpers","version":"1.1.10-alpha.9ef6ff.59","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.10-alpha.9ef6ff.59","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"280c67c33d9cf1685f37e861a19d8fa1198d6eea","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.10-alpha.9ef6ff.59.tgz","fileCount":13,"integrity":"sha512-+6I0icvZF+LV1zabiJKzuXtIBJVuSC+5GHNn/QfNFnCPwuN1d/S1xojF7XpnTqh/pFdGw+TgwhA3R2SiXvcOmA==","signatures":[{"sig":"MEYCIQCJ3hTOo6Qz6TY6lO1A/Ii6sxW3llXlHDd/uAYSDFgfJgIhANfaVmAuwb2nyBygu1WnmAvZBmvRPs6AfVozNI6ym8RV","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":24241,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJehmNrCRA9TVsSAnZWagAAtaUP/1GgKtgQy+vdTcDGKzsq\nq/XyiI8mRqrllkMcEf3eDl1joyMdOoiVlOpGmOiBxHadw/27d/36+fY9bYE6\nYH1nW1CTszE11tGECRDNq/cxNlt+SM6/2rmAaco2VMku1yVV+iqMPAh7kIOF\nLrXmssw7uT+RlXScXRAaIOMxGfZ5C8ZY3zC/MX+N64498a+TA1clquvukLkR\nRwgGgjyg4DnhhNKU4Qi552NIviv1LBzjeI95yO2KFFGAmPxjoXx8v6/V0C2h\nd/hQJK7kDxJyyCxSrLruWg3s/XYJCxTiR2b1TLOPqbJe/V2EI6UxBXj3zk1M\nt45JyoCUM1Kuxve5KipNPy0kxRtiubXFt5RQHEWCYS9KmcU+JvRaI8Q3V0dy\nv+hy8/zXI6MB69rJyuOOLRgOxd7fGkaQXjeGtlX2MmEgE5KNCywcFycUwrvk\n+YDSMELN3bMinH6f1aLlui/siDWMn0Yvi54Wi/tSJwMhJNLh8Xu3lbOW+hoY\nju3Fqxe2f+JOUcKSZD+0nRwvEHlShj1dL7+nMqOazgDQ0kkFix7avJXsd0QK\nGSLvvVxkLQJWwazzVQoVQqHdw9n2/eX/qthp8p4fIppGgSaSfUPlZjPVJxHs\nCH1F9I2Eh9xL4shx0/KMY9xL2NhuRCiAsOc6+i2vOvgb+6iqb0b/PJByfDIz\nljYe\r\n=3uCI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"9ef6ff427dd1b2c1cf62c53b88c78731bf8a0c62","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.20.2/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.10-alpha.9ef6ff.59_1585865578623_0.696465277460754","host":"s3://npm-registry-packages"}},"1.1.10-alpha.9eb421.61":{"name":"@codecademy/enzyme-helpers","version":"1.1.10-alpha.9eb421.61","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.10-alpha.9eb421.61","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"38ead3a0fc00bd2852350da460ea58fd6227fd95","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.10-alpha.9eb421.61.tgz","fileCount":13,"integrity":"sha512-g02ISm1qBK10z0tR4IGwOn1TnDU8Aqf4TgkXbEhLbr9ZG4h56oq1X+4SHMjzgy1+YX9nbQGUCb6xRhcEnIxfKw==","signatures":[{"sig":"MEUCIC9JVpxbfFVU8nXF+RLqNBqd5I4cJ5wIPeit/etfq9oPAiEA0MOWAxB/HvpEUHkSYO7GnRJbIFy06tMDkyKpSRLvKZw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23852,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJehmZvCRA9TVsSAnZWagAARbsP/1Oh075t53f9tKTY3OXL\naIENLXYc4GSE3GlaRQakC7EiVeZoPkNoyztCsAE4NZomG7U5jkTMRrf3GOY3\nc6rg74kvynIu5fjQy7wIG/NNdYZKb8UfKQs2PvG1/0dUJYutjQZ9SXrQgyPg\nS09on8je2whGpKRRhfo4ZLBxtGqw+kNXVjZYg3RpmYkZQOe7wWe6XdkZBpqW\nBLP5CIk6jLDNCcShv4tU0GrB2nzJjyZ1YgZJ3a+CM6DKPh+wof7wIdnGsw+U\ncFwOs2XzNR+LrC8sWqetO5ngYfWiXUuiIpPDTqI9owmzqSIF4LuXvng0r7KA\nQbVdtyu1sHbuSrHWzlFUmvcp2TWfQdCeFgvpOUFPVLV0fjF2VfWIsSsyE7zL\nLtkayrCGU0wHFMF47wa286LykT+1xvifGWQ751wHf0d1pabvfPBejDk9anxk\nonGyaQvqbiuNhMXM0u0SLXsaxrKgrZu/gGfMCKtdYzlwf07DM1XysBiYK3sM\nVjJwyLhAstD8/jd8NjDyWzYgw5KMj8jHSvjtUcGZmucWlJ3WsWYSOzHvC/BV\nwMuMUTvG08vfnOKBfrrfoB9StqHN8oUzQ4w5uIeoy0nRdNc7ONfUhKgsuCKi\n1KPwk2fe4TTgo9FjEFOiMg4Oco4/A9JSWbzrwzyOyFXx2g+SckZy5wumSbLp\nNOTy\r\n=yE+c\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"9eb42198216bc62cca62c18054fe6ade5cac88e6","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.20.2/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.10-alpha.9eb421.61_1585866351337_0.3755657785233646","host":"s3://npm-registry-packages"}},"1.1.10-alpha.63":{"name":"@codecademy/enzyme-helpers","version":"1.1.10-alpha.63","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.10-alpha.63","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"c32f034b6a2790623e86201fd0d57516762f5e56","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.10-alpha.63.tgz","fileCount":13,"integrity":"sha512-RdSAQppV7ZGTbdI4HE4X/0bExIw5lPxfDdaVqyGTd26yURRgFArAyCDuZy8m5E98AsE8cBvBYGNHG7aF310uWQ==","signatures":[{"sig":"MEUCIQCeQxRMe4Ag3ZAVPXe+CMiN6MTHawMKpS/i7fajKjEXSgIgSHkHDe33tIegetDdsn4tIYf71MGJY//UdGGy/7YcP4g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":24203,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJehm9uCRA9TVsSAnZWagAAzBYP/1ewMlLCvmNuAWAt4l7d\n/CJ/5mBCQKsCWVLuvRCUXf3iF/mrX6gvHpo+I4FVqLa8HW2/2W5SPKtdwW3M\ntLMbekVR77u2XagTdnv+YmvgKmNT7xIq0se7cXHi3FI3IJkwqcKUVu7J5KCA\n+upSgL+GWTB81qsmOB94ERnD07cQrsyn7HPO2WMjuWyshp1fK7EbxyMMmYe5\nmtIvugcT+tdLcuqA8JMnv43mpdQVMoGKQeLRcIVaWKy2pytj6KoSNO4pp27d\n5uIGN3+jahtFpeJ+lU6Zo94h/Hr4sZl3JumCHjkVXYzhhQSB/EynOu5ya6qD\nJ3GfpT4u04nJqJyO9aSrRgLnuCFjTiFn+576LbwmD/DCuup9h+rLh8wIMuo+\nncRcOcUHHd5Mban82z4QrO+C4mf9TlZ2YFngjmz3NJu0HVfFnuWo5K9JmPFZ\n+YJ/Sh2Dxy3eVkqViPqbsSNVknW/Ez1jT/Yiwb1NN9fQ37aT/PMdNJXa5sar\nOY+jU4zDWH3AryqNFXBUOUPHRZLYsC0k/9JcAJXKjkStN/L09p5W6pD8RDTo\nZBAEvvtdhC243x5V9HtFJIMWpz21ZIFYl8FDE181SDPGvNzm/n9Pwh9bmKZH\nIMTOTbffisP4lgzWRJPwWZ5Mq6klrhhWlulRHq0IHLPu8OMBy9t6TKSxgbGZ\n4HKt\r\n=A57P\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"b5b16a4705b88eb08e682f3eba9aa20f1caae2c4","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.20.2/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.10-alpha.63_1585868654191_0.30650128665357856","host":"s3://npm-registry-packages"}},"2.0.0-alpha.823f0b.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.0-alpha.823f0b.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.0-alpha.823f0b.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"30fa1d60bbb4e9f28345ccac0c944f708340ee8d","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.0-alpha.823f0b.0.tgz","fileCount":13,"integrity":"sha512-Aqdm7rt4BWK4wyoRwqykrQrRgZDoVgCAy+uAv5yna9GZSssm+7uY5R/DKGCDbVTUkh7hHhU8ZPn/WHsr0r8MPg==","signatures":[{"sig":"MEUCIQCyXDYrlSlv+RLDq2D4Sf2b0aW0UG5B3jy0PxQQAXliDAIgcAK7zspbkRHs46np3yIZzktFHI+d+VWEoL44g+Xe8Is=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":24987,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJehnJiCRA9TVsSAnZWagAApakQAJgqPfl9zwQgcrwQdmde\nPXJYYxs90ZLTzL7Vr+gKMYASJXns6xBVDi54flS5XyEBqdgGQAwzJn58CvHk\nV1/ZKVoJm/G6d+kNjYKB4tFYQXA24L0MZ2XQBXMuTECbdH6G142CPYHsSHKt\nizS+Hmf3LxuPv31Z5cWZGltWXPSv2oNlT7aMTOhBRGaS+uqlhnDMK7ImHmFq\nUtQEkXF0bZjzHEFqJ4unYsO70xYVLXvrppRjUxlUlFMUF6FpSTgJQR38pFbL\nT3kLzhd9GPOB9ooxUdUErTCQYkC1he0v26/DIV6xiRl2D8fyQxCp28eQV4Sd\nddCoV/9gzbPSqqnKJBypNl0zPXLdP6OqsWcS1G7D9UaIlxqlfp3FsGGaopwA\n7QFYUGHZEsWW/i9UqJhE3l69eshtzLL/LbMhhbEZo/SsE86amGcNnvXFV6c9\nwhw0vWnVjBhzgAm05JplmpB2m94ud84nrSmYEmDfEp1s5Ym5wwZnX9x8wpA8\n0q40qR+oT8ht4/CmhJsTFYVT1Tu0tCimk9evbY3Ko4+fxLw22N8fERUTBeRj\nOhXOUKtQRJpSIxvsCBJ6NNviaY4mqNF6pA7B5LcJN8SfLETJB7azkS+E1K1N\nV06VvrdrVk2zS6/f81Ds0fGlf+vWepP3Y9MFvwt0fSKnFnHKC6s8kLSSJJbm\nXMVB\r\n=SL0W\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"ff22c47e912552297128fefd27f1db0af20b0ea7","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.20.2/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.0-alpha.823f0b.0_1585869409950_0.4744951659937533","host":"s3://npm-registry-packages"}},"1.1.10-alpha.dac9da.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.10-alpha.dac9da.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.10-alpha.dac9da.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"474f43e00d42871ad355e8d688bcadde723fc6f8","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.10-alpha.dac9da.0.tgz","fileCount":13,"integrity":"sha512-cjJ0j+uY9P+79II7f1RkY5MhmIdyv6fWDnkZuX3op0C4rRC5KA+hg1VIDZlhu0OSxmOyiYMHB63GDVhloWr7DQ==","signatures":[{"sig":"MEUCIChyLTo51wOtIFT+cNHPgF/pp6paW9zwjp/UyQBAkdetAiEA8+zCJcwxbJbDeUa0joKHSmSxfzyDVoRY9wbYi7SzXfw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23759,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJesEWfCRA9TVsSAnZWagAATxYQAImb5fAdzRhzpMeNZiVh\nWpDvrne3I01WVZNavPoiBzj6cdQROPdhfyV/SCAL9Kbt8YCFlm1vcxRjSksk\nqF1ErtSItSxKIVmPwGC8VdGCeM26IPvfRXyTtr+LvDRPMZKKuIRFOvEqQ6A/\nZayRhfe6k+y6Vr2z9zEoMlXnInIJdw1kduZKehpqoOS421+ZBbLu+oZf4WFb\nDbnX39HTn2CCnbY963vqXUyz0aYzRjkgoam1rbGE7gyeZfIzhc0O6q+imSOc\nA3l4ncqRYcCjOSzm2RxsTjmf0YkDTDw5Q544Mom47wY12/QzTdO2PVHZDU2E\nXTWBhrFEfVhgi4A8y3ul/tMzhWlx5z3kjAH2mYwdEC/J5yW/5ekKfP764MSB\n7mku27LUJJkCfEp4wnXuMlVQebvqKlfMLCB54txMQO2He25KwKp5Wprb0jxe\nZUn/PWzxaBhs/JsP9FD5n+3CxAZuOhfR65nz7+QLvrIUwM7U2V4SsUJr9WJQ\n3xDUFvAUWWd9v1UjsXmBEahObLKnyeTrOViDzJKqUWTB5Tn6k4qKvimDoISV\nugPJOHxQmk+XbLS1kwHscR93ye/Du7j675y15rrt6m13LLgyYylo05xIDJS8\n1doszQ+QDVfFiQ45+Xm0jw43FGwFaYMHgggOM7PaUadS7+zac0fgqGI0h2E3\nA0sm\r\n=B2zN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"4bbf6bd95bebc928b677d9bdf26ac0fbd9387436","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.20.2/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.10-alpha.dac9da.0_1588610463567_0.3147345899335616","host":"s3://npm-registry-packages"}},"1.1.10-alpha.9a8628.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.10-alpha.9a8628.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.10-alpha.9a8628.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"48fcf580e0248ee822fee821365be6e2f7302652","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.10-alpha.9a8628.0.tgz","fileCount":13,"integrity":"sha512-Z9NuyWYXX+cRTrpKzXB/XjQYGRTFIaJ5t4DArojDugqea11gXfjEbq06lMxCkmqtBO+HtooDQgu30Rd4Dc1rDw==","signatures":[{"sig":"MEYCIQCYMrxl4ZiPpOJplCvVgOF4ft+XcMHYABf/R0S+UARvKAIhAP+9QhklSp1J6UwZCyF/iWLpniVK/F9mQAWQmiuG3Y9+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23759,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJesFOMCRA9TVsSAnZWagAASW0P+gJt7NjUzIaAN9IlPek7\n8FC35KNoH6DpwDRyVpZGN8LRV2WmITiO1XZlV471FXQWu8REiNy4Vq+PGP1e\nTsjhYWeyhE/XhzNrJv2KDoAX57M+kcBb1kYfJbNmbms6oDIv6Ssr7TGngJWQ\nf3dDwHAXx/+AjicfSK5miO1G9Qh6p6crwyK4hbrf7cQuD1LE4OVcXqoytCEi\ngO7dI0QtVJR4En1nW4g674dUKlqefuQ29Wtfq2fR21nTwxt4/XNWcL6hHn2O\nyqQfMDPEFpUBNqpwnxo2T6WCY+AQzyDRXJD1+ku6F3apDkwz4g3rSrus/zz7\nT0n4V/zmTBef0SjeIBBfVGfBXleU95RQirnCZiXjUNv+w5LT46OIWeYs7g+u\nnTD4Pms0PNgdx+0fFyvWQWa2jlrOERNFNEddE6ap5FKBJtna4jjOA8Q3B8jx\n6oU7aLTDlmID3Me+xl7oQj9+kCy0jyNxngrCjIu18w3+xx23wr+U7C1TgV1x\n5ZF4ftwFP6saN2D7af1PH140xq+Pam8v3j9tssbE0iMbjoX4ezqVsdB8iPSi\nBRAfxTV3PG8HmKyjT4gw0n4LgP/WH77AQvAqFiKb9fcfc+aPFNw6VvjpOoON\nBnG43bnRdmTyscavxJT8zgtyktTE6TgJrGkdAZMAcI65UEcaxG0Tx4Ivxoln\nfccz\r\n=V0fi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"ec49de20c1fdd3e76db35e4620cdac46b9a0465e","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.20.2/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.10-alpha.9a8628.0_1588614028326_0.12087360310924966","host":"s3://npm-registry-packages"}},"1.1.10-alpha.7e132d.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.10-alpha.7e132d.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.10-alpha.7e132d.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"98eaa2424c087490c0e64016ceda217375141625","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.10-alpha.7e132d.0.tgz","fileCount":13,"integrity":"sha512-Pe+5/F0A20pc3T+B/AEIq2G6u7PuAIf3pd+9NGod5xm2vQd5rNOUdSmlsBk5T4J3E2fgWXUO2SFf0oTKYDU5JA==","signatures":[{"sig":"MEUCID1bTUCnYLMoBHTxVf7JTk8Ab8xPcU0BKszUHjFWE8sTAiEAt3gH15psR51uV88TC/P2QoZe+nSV5tiIeP+4/2NalLc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23759,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJesFkTCRA9TVsSAnZWagAADccQAIsE3gQ4igMGSGm+KPPU\nHWdF49PLrWdvDqzAcyeIFa56IIUnkkjtE7KRjo2QS1+a43wRIzLQB53ZDhcL\nxPZKaOHX4knnDUK9wB3152x9bsJuSL8UZUN8p5In/s1RTiqmxfYPgyiyw6P/\n28ZBg9HYKkTb71jH1MhbHqVdfwwXnj7Rw/dymmjYG43kg+5QJmU9ACiQO3VZ\nXDofnmaQSVzvBZ5wCXNNPPVvZbfAY2cup8PCYHqFAXOqVaOr7fQpp7/xDMzj\nCpCLP9GPCHa+6ZAt7wtqHSl7rYgV0GokrkPud3SCBnyWsLAYg17LxOV9BJ7P\nFQoC31teslEArLt1oX8nMJasAuu1B2tkJWSrztaOsLreVEqlkUElVyVfCnwo\nAohmmo8lOuUxfary9Ktajp3BE2n00OLOTmZv1SIEgdk4MTR1wE2GD+VeHZqC\n6Ev6tEpprJkZakeyMaPSwUDW5dmswYTGj6ipl67p6+QKCizaCdsqrfVl82eM\nlQmc5S/lqTRfM38n4q/dDsFk50Sg5KxANZkE53YbbXl4tSSDd6bhD1NhX/sk\ntkJl8zwlyixrIPR6W8q2XTSf3fZOaI89okBtwdncMaK/zJvcHK8a2cWrzm11\n3SNcYzZgUslvn+5FlhyhGcXPd0fmXvFXJhngPA48l6lWoDt920qNUVwkWaTJ\nfhUc\r\n=Lh8D\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"7900e6ce7968e00b99bda3e96b6da1a068394fc6","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.20.2/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.10-alpha.7e132d.0_1588615443326_0.8440284017313364","host":"s3://npm-registry-packages"}},"1.1.10":{"name":"@codecademy/enzyme-helpers","version":"1.1.10","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.10","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"7af284233bffa8fdeb17dfe1aa250fc8a7ee69f0","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.10.tgz","fileCount":13,"integrity":"sha512-4ru4D1Xo6ARAvXhtugtj0oRkQySUCezmhY1TLxfHNUTgYZ3ZAitmbuhsGuB7kHF3EsIvOVDU6FAyXb1A7lsMdw==","signatures":[{"sig":"MEUCIQC9eylm6VCP37Na4qpMwkwK9yxzKW/UQvsNaa4YM8dltQIgUUl0KnSIbnWsROAookBUJTLpycXNBqXwsyd2+XNKLZQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23735,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJesFs4CRA9TVsSAnZWagAA32MP/ApzREYv0cOGxBbnS05Z\nm+V+cwImpcmxrtql2YqB1L6MBvpZFiKYgudAnRzmvoQsanH0bI6H6PHiHVf4\nrplR6zTYV5ydBDGoDgkGco0OVvOjl/+eyucmXpcAvdYIm8i05DV+Nxbs8/Dt\n0WIcQaNF+QBqaK8bXPjzE4m1XnmRNQAicjwB5UhnNYRhEebuvRnUvwZs8ky+\nWBT34GWOtoZ+XRjC5nOjN8K/tkXDFNkR5nmPQlOrE4YGkN8wPAVWgaPAw7GA\nvfiqWhgQ8ggkvw8rcLk6EYZTyzGJgbn1P+WKPOmj6ReYWVTeBRAR7tm5AIX0\nDXRAm/e2gK5LyGD8DKNBAbet+PilMshMMsXomen+KpuW7j7c2O8K9OvNY4D9\ni33nVRHc7Fvp2dVR0JS0S73iF2t3F8GWMQQSHoeSepqg+BbJ0gOGBgLqhIQM\nIHsca+wkvgvxn7wVc4xHwfo6uhnECS4M4frYg9RP69GLQ2F3FQa2GxciR0ZD\nTyj2f+lTrMCU0kl7AT5DMPFswGy8iXxzaD/BeODbXgspIIHF8gGRVhRJqfEU\nx9G2Z0VGTtlTqEC7YY5q0CGBXN2SAJaVZYhTklsPbkG+MaHDN0Is6gk/MffZ\nRujpp1s5LMwTpNX7r+Eb3HQBxrIYKnsM6AiIn8YKHfJD2Cg6S6PltpQW6QG6\ni1cY\r\n=aZd6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","gitHead":"751b62b83faefe5a5943885aa71c153111caae31","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.20.2/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.10_1588615991926_0.08144209647408696","host":"s3://npm-registry-packages"}},"1.1.11-alpha.8a1e1b.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.11-alpha.8a1e1b.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.11-alpha.8a1e1b.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"446fd9d4b5754a37242f46e6c6fa495a9085f84d","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.11-alpha.8a1e1b.0.tgz","fileCount":13,"integrity":"sha512-I5dpdcg1NFflod6vCTsyDr3oauvxVpbkaA+n4vFUpBMxypL++9p6h4Mg3XAfGnaJv1j/168X8s+lIqzR+D+glg==","signatures":[{"sig":"MEYCIQCUuwE71b2tyjBRjJRsDXRr3xTumh/+exDawdobHGvGPwIhAIYSGGm8/kONPEVAhyAVZgoP9hn/mH/wpz6MZNEV1tvC","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27952,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJex/Q/CRA9TVsSAnZWagAAWikP/iNgv3pJNQnUH0I9lnsp\n+SQjd2g/hWWojmj4arTs6SESq05pEEu8Jcmg4Bu9mxOX1kyYzST0UVai2M7z\nuATukYC700oR9evVYVOtMgSn9SRFuY/C1S/45iNu50bLcQ2L4NFXqStibLrA\npk3veUs2tK4IGOnQy19JCRcFNGrT/WzeUgEDbyBrA2bFBgPPNXSiIyzsFEf7\ngoOGd7DBA0n0udx62L6ehttLNT/Ec0NntE9pVKMGbyQGvTrLNKLn3lIzTaNj\nDtX8O3h0ulSOOs3huRKhSFjpoQ4qo44BkzZ3xFbe+PAPQmHP0UYFP7FapqHM\nx7RQPLfWsiRUrbyIgoiIpk/Ed0vAUxvZhGo5cpKzdJeAg0Rk05MEXP19+VyM\nsmPkDxpOsjG1dplQAOyQ1v/7AE8k6f0zeOrbONk/v4hCYEiECm87zcxhxlwh\nWPLtqeIn0ha4P0IPv2C4B6UJ7hjHQnn+mcyyeLh6GTCLDhIu5sTxq1MysHaG\nrTcKyPmnF9qIxrEmnFwb6gN1Mt2xkkrOdmBidtuF83AGKOJKykcigI6/lYfL\nS5WiaF9w19vpflzmjZbt3iMCk7bCUvSEozjiIQujG95kUPuC5ORrue8iSFBA\nYo0u1OzOp4yj0x2QujN7CqfIC2XowvNRwWu2n3a8dZjuYZv1p30UTxS0l1K+\nPEtl\r\n=KdbS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"d7bd0036faab08dc167168d9985513ea9be8ecaf","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.20.2/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.11-alpha.8a1e1b.0_1590162494605_0.4606103296353061","host":"s3://npm-registry-packages"}},"1.1.11":{"name":"@codecademy/enzyme-helpers","version":"1.1.11","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.11","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"d7f3b4536fd43b678caa263d5a8b9e06695df9e6","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.11.tgz","fileCount":13,"integrity":"sha512-uujXCMRZq1+tlmV0sru/zsSWEOL0USuLpFr0cJ688ePAEHoorwHFvct+wHFEMXYXMR/pdk1g7T/39XkQhmLHlQ==","signatures":[{"sig":"MEQCIAmsyCpFdVfjHZOFgjtRqby8FCndzvyJt+FGWV7lRq0VAiBYcBPJes6qpAZxNyKRD8v4Hj3y1InWH4bQ2U8/Li6mUg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":24208,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfIXm+CRA9TVsSAnZWagAAaSQP/3Jp2Eu7OHvunQ6+qYre\nw0qA8PG6981zvzDJlcQ61iAVnS7OR84UAWzVHK5e+qur0oM1Qhi8i9Wt2kal\nj7tM0zuo4NIZFirtrs7XIRUTW6+3jHChcrGrewt0pfN0kXqd/QgWo8NuO9zf\neKO2HLfod6GEUYPz9GcKKo4E+Qzu24YRQjDXeviBNKdaYN/GykaHsFFpj9fK\n7GqWDXTQ0Yfu65RbwNRThl05q6cPGOLothrgMC9pI9/llr7w+ubmip4Q8HG9\niPJFpSKwlxWYuRw2KV4VhSdW0+JDY1wL69yaypIgtKbx+njnM884vrR6MYhU\nQRfBC/nlbfpNKJGo/l/2jEmZ3e7ovJc/FQB/+Ld+dUJFRSPx9MVEQWJtLieK\nnigRr8eDqIcLT5MOhm7Q3Roo7ckYdr4UOTzBLF0wQHG+lNT0xki4xdW5FdHI\nCRZnrV1yVwqSwdZO3mq7tPKR2s4VSav4zTRpjU3yOQiDcN1Xmy0sGJpjMYRc\n8FftbKz2Q7t95ypFqhQDDP6dcvTmuxZCX+6z2YQKm8IV5qqKAsrAxLoBe2jc\n2QA5FVgkuAC3oZ4nWf4ZeIJMBeZ1zsZgAn2bHT9JeRla71KXPyEPyAhWiUyf\n8upofA790eeTjRBO6fuFAf4QZzIh6vcQai6aPCmY6C7TpgS+GXg6CUtmk06A\nSKmR\r\n=IEFc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","gitHead":"8a3bab34c2387bcf2480076380f7341167ef516e","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (darwin)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.11_1596029373620_0.07681362788622081","host":"s3://npm-registry-packages"}},"1.1.12-alpha.40d10f.0":{"name":"@codecademy/enzyme-helpers","version":"1.1.12-alpha.40d10f.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@1.1.12-alpha.40d10f.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"d2c7db9e7d3a4aa0690339d1383d5f02f38ad698","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-1.1.12-alpha.40d10f.0.tgz","fileCount":13,"integrity":"sha512-evpX4dryy3O8a/jUvUO/tT8/FebfXyUQrW/mqoCpD9+N4Eyg3vyGxtqsSqlnIJJ0of0sZeYpL5T7xBuGp2X50A==","signatures":[{"sig":"MEUCIGOXxWRTtiEBc48y/hIsDDUDVgsI5b5iIBFvZfKghMBeAiEAiQ3+D1QDGBAVc46kjcUkPGu/xTJFqKtLKo5ohUDw4v4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":24933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfPR1jCRA9TVsSAnZWagAAvXIQAI4ZhVuITKwUcslQItML\nndh4uHUVSKjMUQXipI68EChsIq8iAmfoIJui/x67EqHkrnYEfPKELCHLQSB4\nfRBKAQVxddVxsGOkZOU3YYfgyjgtJcSvzZUEu4DVEV4t3Da9AI24MStH41to\nZE90hYnjNurhtUNJMLNhNMK1wQ90asrYaVGHXRfy+IdyjylFcqeQqn1w2jnJ\nCiWElmpZHwbYJukzWo48Ty4uc6ufA5h4yySGElrM/IJPr8uRD8tVtt+LZEq5\nFzRkfdnR9wWWDI9TqW2NxMnSGLwXiQR2K35R89DepoODSgfShWTfUMewLt8M\nN1k1yV3BRQsqL/+RPKw70Rb4CfaRqSIYsirJwcZyk2Z6GEUCWmEwH+JcHi/V\nMIKTcKEl0hNQWHcnYS2nD3LYpMZqYlsKQrOYeE1JB2SurIpECKqIqXDR6J8B\n/1/jBF7k7ac03vSqsQwESiW8XGAI755mPBBXGk6pVEKIJAowIdsu0Xa/Vqen\nF5Ha0DNIWtRvqp5wKXVlsJ1WHuIaafu+sHKbgimqagnF5+mYCIhBgVFv507O\neFGJ2oGknjWsXGUCJtD2NaW35/u54YseU1Yedsvf9y4/ZFBCw9Y9QXckLe18\norlZIBPYtK1TICai73Vi1zgMReEtnwS9u0RYG4I66d6DTd2i903yU2omZBqn\nojPH\r\n=BbfR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"9a0e169726f1829b5f53ee436443227716d8fe94","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_1.1.12-alpha.40d10f.0_1597840739252_0.7011786696960036","host":"s3://npm-registry-packages"}},"2.0.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"28c0694db80beb85799692172bdd1650f43311e9","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.0.tgz","fileCount":13,"integrity":"sha512-/E//ngQtykkqbQiCFCwA52s4+6mH7Pl+s8wk9L5NOYtVMdKezCrfFRSYUTlI8pIMrbP1W0QipnrsqmYo25BnnQ==","signatures":[{"sig":"MEUCICmulhR85y0473Kh+rsL1PEkOogIsEHt+R2lV5UqjMnRAiEA2iEFN+FjT5onAo/wRP8C/n5YaQWNQK5YMgeZRT6upCM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":24994,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfR8nHCRA9TVsSAnZWagAA+5UQAIGFzVsPMLAuel4/DPu3\nJcRygIRqx0iAsdnRzsh7z+pkJVhjGPUoTIbbZlfxBc4cANrvfKR5nDMVzd+b\n3t51X4/ngdBwlp6qpqYHNdjqTEry1+tWINhyODZve120vEkPz+Vn09o7XKe9\nVNYk1S+SO44a5v2+7Ww8RUIsorUGyK6qtJIFS76R3tT1iAtaQHR9pooGSaZ0\nNuUEiZcbJu0IDumAt/m0/Yno4bCjwHgqSdLr0CgaO8bt3tU63Zfrhd8Fz69b\n4E+JeKj12Wgfjq4cq/R1tBwEXyqlzjRj28CueBWuPepmHbtRHzrxyVC1KCeg\nHp+tA3MPT4Eu/ixu9SSH/h6CE7/dqSnnmuap9LIeEXi5EaXtzJK+iuuLyEID\njGjnaasnLitWpy1BnHLU8LwGq0bH9AhU6oKIfhBBQc/xqZdTrkd1cewTqKy9\nf4V0dhz6VwrUkPp56M6Es3bhJKfYO50WovhXWJTICdNdxgyyUGO33tisBZoy\nJ+1vhkr69x48Gpbtgy7Hb5n3pFWkIq01RD+C2QyaWx1cRx9YJT0qgngvsuan\ni/TNVWFHoGPecy9WrHYWKkKTXNc7JhOLBfmjM8T0tqMdLTfSuxnqAwJf3e2a\nyFTmoKe09HOsbVm/jBEWuHpdZ58Xl+ShfcVnOodDaAZBTaLdpMl/KpIqijvC\ntSA1\r\n=REVZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","gitHead":"8da23a5c6309332b5586f7565ef027ff86b8f7d8","private":false,"scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","_hasShrinkwrap":false,"devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.0_1598540230672_0.09342777754939857","host":"s3://npm-registry-packages"}},"2.0.1-alpha.dd419b.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.1-alpha.dd419b.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.1-alpha.dd419b.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"0d2a1faa8cf2380c138e8aab6b20daf01b1fa177","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.1-alpha.dd419b.0.tgz","fileCount":13,"integrity":"sha512-QIAynVGkqFlTFJUBcznYNSPIa7IRxPsn58A8czwL2EGUiwMt/yMKg9/neLDJzkzqdoZZGJFSE2IGQHTdsD8UMg==","signatures":[{"sig":"MEUCIQDyODhnxUg6/laN4IVJlVMNtEdxc8cs98L7qpnHqO6OjAIgSLn0iqqvl8Q8DTgrgpzoeJlauX5obucDZCb38JNrgpo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":25366,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfbO7xCRA9TVsSAnZWagAAG0YP/iqXuMa90ti9VxYpdOTX\nTw2e5f00RIH/WacWtrIjKjNgsYynQHjRVkfbaV74QmkAwdA/j4RVJXaGEuIg\nfT75hZme4GdxU1lt7PaBj9y4xZ3EeooyW+TA1kgIQQ4Vckuhm8NfJxos8IWf\nrvbVdsSkB4GHDr3LWAtIhuomuHlm7t9QFo+uDQJPjMtVSduVjGXD7ejc90eY\ndklw+uAXo0YGqxYxUo3JVY4ZKzBRnGnGlxz4agJDRyKplLgaPckuUvXvGXGS\nKsCKDD725bdK89udmrLG0Ny9nknin7Key4U5JjFRDuwtvt4jTT70MkJABEnR\nXjSeF4H3cYMlFyRRm0dBxdJc3KhBYpd3NqA9dWby0TOsdhAd+d8OrHguBf+w\nKZxgBX3ZUT7VZM9dbKHlwElQ1Xpkum9SgzZNFJW/GgNXE/CqIpg0dLHLSkyk\n+mJW9paVTlEfsqEhSI7ks2MRzuhOX2VcY/iUCfxDmqZqmLSoXUJO8UE/lEbw\nxPI51dyjnDHc8Csn0oAR1SoRTS6iGoIqnnKZ+xHSS11vc1gRDBR/E/JpRaEV\nCCZNmPodFEuuuiWxH4PDj+DanRiLbzO3frmg4T0jlGj9cVnH39a3oqBs9B3b\nE1Bf3Qz8EbBj65LTUTBrz0XzO57wD9xW8Wr6pJuEwgC3niixI23+YiW7IdqI\nhkap\r\n=4bV8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"18d5274b7827811956dbab09471659e8c7246f5c","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.1-alpha.dd419b.0_1600974577179_0.2772843254803625","host":"s3://npm-registry-packages"}},"2.0.1-alpha.5c81b7.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.1-alpha.5c81b7.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.1-alpha.5c81b7.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"fd05a9c988cb255796170f44d72389f4136786d5","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.1-alpha.5c81b7.0.tgz","fileCount":13,"integrity":"sha512-461fgw4EzWHBm1jPR2qKtWUe0N6iiX2v4XaK5haTIRIfJtA3h04UDT9o1NHsaZ+Q3qZmWMnSLqfkHeAwC/IDSA==","signatures":[{"sig":"MEQCIC8cP3Ne+Z8Al9ZZf6htTOEtZ/HKDKjnCqmpnn9IEVhEAiBpFp2VMUx1tmGXY+fwRqknBgjb+YXEIe0h1rnFusX0IQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":25366,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJffMMxCRA9TVsSAnZWagAASmwP/RcO6Ot93f+MnV/F1aCL\n29rhTacadn/iKV/GMus/59gxy0nLQnhTzCXX9pdRbVESX0MuvcFtIhJL37Tz\nmwwkXn6lMYLs7E9406bJzOtKCHkMZZ+zyqK5z87IL3wqq6oEP0prPPJV3lv3\n2ajJLOMPLoJHa4JZWUsFsss501QdF+DPEOajiSUxWpjVHERJS35Os/Oj1EB5\nO/CJmGVkDrNI01Z2QoAdQdNJicqlCvq5y2kqFITP0ZAIj8JvHfcaWiC/QGlF\nunnaHLOIeAC0B1qS03Ofzfzta9FYr3KprlbHPD33lub/pRyfbUN9fbPCjRzV\nvtozArcmnTubhWtMpqnm02FgspEexkKNSGzvZDY01cQiAPWGc7C7MUjaE8+P\nL3sAgKGul6WUnIEDnyGD+PAjYtQgd8gHBEVYGN7h+Vh8yKux8Z4ObvlMTNqK\nd5jHUHfkODoqT7tnALBr4+DwNuB3efr9NaKvJdeoysOjk1rK7+GTBz882lhj\nJgeAV9bVWAiO4f/7tRFFq8MF0fpxqVjj0P8dSPCfPv6wE8HoTFGO9Vc3S6oE\nEY8FX3WLpwaIrorqYLHaXHCLkRJR/ZPBdQ0Uzgjv7mv2f4nQuSqBXZGWl+0T\njcO/aSgnrKJxDxWeeqoT+EiMCklOJwh9HFAGRTRAqh37jNAHg7rE3XTH45G6\nynYl\r\n=cWe9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"8a58d3aea64f57f1bb5a53bbf18ec7c6026f662c","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.1-alpha.5c81b7.0_1602011952928_0.8202926030782458","host":"s3://npm-registry-packages"}},"2.0.1-alpha.6179cf.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.1-alpha.6179cf.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.1-alpha.6179cf.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"20b912b4ae7671fdd4a6ba7163edd44fa3826eb9","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.1-alpha.6179cf.0.tgz","fileCount":13,"integrity":"sha512-6lgefWIXZyBUk80VExipBueuZqZ/u/QEIBM/UeeYL/sb1rVLIlKamhs+JY9GvmXTrsfsJ4gO08bB90gbpOJUsA==","signatures":[{"sig":"MEQCIArBRN2tXPH+OxHYVIx0MeMoOOgvqi5DyfttN2+9kJ0vAiAh10qcE41ojJXgHko6x3hYS2N4pdpXkvC7Z4Sz2vHN2Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":25445,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJffMW6CRA9TVsSAnZWagAADWIQAJZT8JHXtsaxOVE2GZP5\neMqNbUk6KIA8S7pmH1E1JrXL+ANIIv+6u4vjD8j3lYLtglF2CJk/n2vLx7E6\ngHArAvqtxfmH43+fTfCs6hD8NkRihfPQi9H5x+6iEW0qhkTwuEs3+QH6t8hx\nwlF/fKAvb4KpbYhTQuzdXfGa5S1nwrltbNL3vMFWwiApmAdfAfLQ9btF0JRH\njq2H65RSOrnK3tDvKTmpSI9vffiaq+BTqgOCFrCaEh+bYwH7+ZVbni7lreou\n3zhKha08b3xYn2iae1tZjCFtXFdD4oZq5oF2/u6B/tjNrcPn8kZOCX5ee0nb\nnL3h39ikvNIFufY68C+ZeEaLlN/YzKOfiY3wmly6T6e5S2tfgbLuzXOYHeNu\naNriDRKACsiy9vhish5tUeADUAi+ZG7rTVPe7SFeZC/dB3wamu8i0X/l/Y3m\ngfu0n9fgg3nuTdRZFyHTj26ctBl6f2T75iN0ykj0r6jZC+HuwsjAdJqbDAmb\nox0CFhU9PjbMhkU7goox7wU0kTGkSJMxmMp/adn4oX1z2L+WiWgPB8bjUEI0\nnHK5fYLbTv1mtgZDS3QknpXxUv4N1NuIWhtlh3fBd9k6Nk96SMHHk5pmjCW9\nxN5hSP/Wk5tplzpwhy2hx64ZFJ7oEVHVmIRS/10SRNejqR9EpGVd34/FNSuT\nHATx\r\n=bqCI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"20f7ae3848a41a2d3631f828cf39c69a877ec307","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.1-alpha.6179cf.0_1602012602463_0.7798562154942505","host":"s3://npm-registry-packages"}},"2.0.1-alpha.4bb80a.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.1-alpha.4bb80a.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.1-alpha.4bb80a.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"f22323dff43ef1673e16ad061f6d87c347bcb4da","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.1-alpha.4bb80a.0.tgz","fileCount":13,"integrity":"sha512-t70QpX8qFgH/SwiEL6++0YUFVyQkijEw5XMdr6hzjudk7WRC+MS10fEg5Wcw7sI9i58vw73DLBTrz3XigZI2ZQ==","signatures":[{"sig":"MEYCIQCx4WAU7XKalmNaYRbcFm83sl8mPssYfeGYZazIZAeqwgIhAJwm47/aKFJZfpILNFp49Q88vRwjhJgx0+/+tJDNCE3b","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":25445,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJffMX9CRA9TVsSAnZWagAAKh4QAIRhf7xibdj7+lZs8LMM\nSbKlVcFCAPCzioXue3qtPJB0/UG/kwS0yLz83nXkCtV1LXb8klT9PmY3K4UV\nd8xW/PyfHnnSlvpLy8/jsCHLXrCY1vIkio44NhbVnZ60vLLLSLmrIw+cUSPW\n1ZFPe80/QGv2gmhdXacaMQXLz1TuDCOXJPp6iSyCPHw55FJCrPvKNUzP4Mqo\nQpspfWRlWZZqTNY0vpZVkxsBa8WysFOAMHgBUwWbZ8yzKEVGwmtOeoi8uxfl\nRXtZcYqlkG4GcXrZzey3ZYtc8J28gKlmE9m4A4gySmUYPpbkxMtjMNC8myth\nlJq4IlT/AcIkodBjBvi0h0DOjbY5jRafI5OnLRtuon8AKpFOHvegrmzqfkH9\n3Bmp6F56CzQcp7z2bTNCUIf5n1i4T5A9tRqFFF3sqPN4wzer6a2OXXjQlISg\nPtn2/mLT51b3QCA0KaDz6PBfCdA72usX+fFRCd6JBzzNYpQrGPnOO9jIpBdU\ndc98xXxku4NrBkcVSTeaiNNtCoFwWksiL6IpF3TvN/QG8rCjTkVB+3sqzXvk\nkdTjzIiAQUJLjQmJlAFKlvFMByqrfsgkQB0Eu/KOg4TzqYgcuvcFW72snvl3\ndYGWKL/KLY3OrdhHRqJv/cQ8f4dCo704y1P8zK2nCGfVNMQmK0eKD4N/lX5K\nIZ9H\r\n=nmN8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"520486acf611c2b48a0bab71aecdda0323509086","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.1-alpha.4bb80a.0_1602012668881_0.05126506010354115","host":"s3://npm-registry-packages"}},"2.0.1-alpha.4a7966.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.1-alpha.4a7966.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.1-alpha.4a7966.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"ca1ce6a243f995ffdfb66ecd4e0b12d13edd18ad","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.1-alpha.4a7966.0.tgz","fileCount":13,"integrity":"sha512-CWKx19rxc7KUcTDRVA8BXjqphrL+jB7U+nPMDw65HpktPUqqALkkIQhfN4GSxzCZXT+IoJxcOZBQKr9FA8tXzA==","signatures":[{"sig":"MEQCIFvEiJJkR44vIxyBtH/fKhv6PDeGcc8BAbO2YxO4WoZ4AiAuoaKvDj90SJNZT5lSckVPTvxNBqXm1Cj5FS9mT0+g9w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26085,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJffMhbCRA9TVsSAnZWagAAyTMQAIFZoMFM8FLdm0rGj/Gw\nHg5BZpScntykq0l2heoX2vFRH/4cAgx/FLRvwzDurzIa0QSR4Oum69izLRxE\nj7GrQp7u+Re6dZctymPu/pZgtjaJeIYN668ZMN6v8fV2byVwAqzuSKCAPcD1\nPPTPMaiMn99tbTFBWn301S9JWv/PUy4v7pbSfTd3y1QI440fVIFAoxp66kVd\niQtlpeWxU2tTwDoXaPZkkjS/GpXHOGZNoirSo8IV1VEiVKiqflfCnOysRk96\nbko7PiwP+82XMp3egowIlFICGEJ1cdicaZdtE07EvPUJWnKsFSrzkAPS+2e4\nEtSZHBBk27yTb8ZZGKWWCZRGz/x5UG065qLxsxFQSG9h2KO1tECiPOaHn8hE\nzveybDWldm9aa71qoOne2J/+E8rnP1CbedbiihjQM3FDLlAhpmBqveJvOE/4\nNe8zVAOLNTYuQzlTz9s/hyuG86yXF6psJ2dvdjzNZ/W5Eotu4CX9J53Q9nY2\nWcm6gbX0jyeIFG9+6JX+lyIIjtSy8eQ2jo8KecDjZZRNCzhnCMryJ16ESYEH\nIp71lW3FkawShpHa4YVN0LIdXAdNi2DgXESWERLvMN/Hjg0QjPp67X1nW+gq\n757dxykrR4GiwNclrVeMJrFtEPllkIqJZu3pckGGwCrFfe2+7rCozM3fng8y\n0I93\r\n=O30W\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"4322eb0d4075eae4f55171cd7c27276c808bc732","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.1-alpha.4a7966.0_1602013274916_0.789927701477747","host":"s3://npm-registry-packages"}},"2.0.1-alpha.134d6b.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.1-alpha.134d6b.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.1-alpha.134d6b.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"189fa789b6a3cc90a96908198e94edee08790393","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.1-alpha.134d6b.0.tgz","fileCount":13,"integrity":"sha512-R12k6rlz0WFLCJrrQhOxYRlKW0tHbql6FBggVcmKGaLluldZ6IuRK1TIWpzCUejs0lTHEnDsGdOrjVmqazwgxA==","signatures":[{"sig":"MEUCIQC2tDEKFOetba/Gp1eaeezQBndCZMCMcg2dumP+t0FQ1gIgOCquypY3UR82mAj22qExpefh90xfvDtbdtEh70jlbyA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26085,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJffMhxCRA9TVsSAnZWagAAskkP/RLq2Jl2GonUp0NoJWl0\nZEkngS0iE28D5Pkk9TEC+kk6Ec3s2TxTgVk00Z8pPsvygeq/Selm8xrb1D/w\nAZ18na2JNMWo+QxIobIfnagive6izI5KyWl2A2y7GjnUwRbJvm54vMeQmFBz\njoMCC8OFcNNiFlEAmqMKGT5Yvoel7S31nNMQhb5BiJ/FeRKhhEABtL6KwJ3w\nBWohdTF0xSHbzZi1vP5tMgRsaxIjBLN69oKe8lUSAVGTfO7wcaX+wVvhnlyB\nalUrdbpoNPPAXxX5w68MRHRHO+Kr4/oLTUpLvEzGpxkKJbHx4gyvzEJplEXx\nQ8IfBhOYbEXxJV0+TPfG2dT1nNiewvsXCliL4uvy1XVGrjFENFn4HPsyLXev\nZhVx7eSJcfVYbed6bRJ7JlhG7AY/fy7b/a/xq1x6ZhKZ7NXlnfaf4ZqVYRCo\n3qPLoPkZdV8syq2omlRG9XBehHkYdLTnqdRPawNDm0mcJUq24Vp0HlbwWgPZ\n58LmQC2aHCzJlN9jPWxhttz9sW8Iyn3e4ukfnjrJT1675YEF62sp4SZ6bEN+\n6xfmg9hdh7pYUUsNr6LDWHS/IzqRyMA5V+edyBHi90HolA2/fOWleRNrToTj\nxDE1Lw+KZGBzO4ig5Cue83WAU9I2MqbvgPOsJ6raPZsUtCUeVjPJ3fTa4rdX\nmQUq\r\n=llMi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"d43772a562020d679e04aca6b26430d60e4a0713","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.0","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.1-alpha.134d6b.0_1602013297037_0.3257783028425356","host":"s3://npm-registry-packages"}},"2.0.2-alpha.ac77fe.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.ac77fe.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.ac77fe.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"83211143b3c128c3e4a59ad6385a1d6ba7b75995","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.ac77fe.0.tgz","fileCount":13,"integrity":"sha512-ZdQMPvzIWXgH/Xh4zG+bUI187boFfocyx3/+KrWRtAvEyw0J861xuc37xwL5grFYlS1nddsZ0k72dPx8yv558w==","signatures":[{"sig":"MEUCIQDJ5gAwHtC/rJ4qUihaEgVPrX2kNx72YyBN5CBpVdlCvAIgTehKlOXHYFEkYw+xrlqwMaSMa80OUOhjsgH77AtUeyo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26452,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff4FQCRA9TVsSAnZWagAAbUQP/RWpaaerOjxos+t3DwTS\nriqerPrEnaRDpflQyLVmfIOXR0+yWMohkfG/GV1w6x1CM3iWjDus9/VOFXVI\nYdVM9wt/nvU5sdi/fdiT6TXCIUEEWoAQ9pJsH9gAfq1VBo1oOxnyn2FkEXE6\nMtuAy6/XDSMo7tRVzanXEUiIVS19WF+NYbb2babaZHRR8AxQghUfS0ePRtVy\nJBgvsC/J1pPls91RP72EimRdPDWUDpu07KdK9otoLrygIip1uPaxeI19HejS\nvxSGAEFfxNfR+NpY6v37qzabKCqAAlyWXZadP+3EOqQvxG01AHIyBjdMMCnq\nhv7/Ib/PaD17kr332XEznzJJRpWjxsYJafo6pVeBmah+uFwH865l1WWNVfrF\nDeFCsRGFh5ws+KIYQzly0p++gLYPD8T+2jbT0MEgjTyn0zIlKwJXP1oa1kqS\nkgWSSb2T7ipmrW/Xa99m8Z21iR2gBrk0BuC/IYuo8q8ggsBMWHcTmHE7/NtB\n+hW82TGcTlVAJ38F8E5bIwMNMrQbnjhARiUFSBUTsdDvKNUuS1LqYZOHVhh/\nJOtXYk43sTq7oa5/P39YARMuGJSofWT4wSAMWMRAgGGL/qQLQJi5BE1BWPDM\nddIkaFAkT3U9zLowYiKN874A2k7QJIMrROWSKI7R1DMHz4+ZA0oo6Ott8Gnr\nNPqS\r\n=BpIf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"95c5b9a3257f5a7be9cb2ef11eb2a777a3090fe7","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.ac77fe.0_1602191696119_0.29052953928327185","host":"s3://npm-registry-packages"}},"2.0.2-alpha.8cf23f.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.8cf23f.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.8cf23f.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"a088f0772b8849955d9e3bfb9c77fa90014b296c","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.8cf23f.0.tgz","fileCount":13,"integrity":"sha512-A6noPlh3PNjPRpechr/ry2RmIv68XZjxnL/+kVsB6Tf77vwXTmlRs/O9eykqBjnMI2fp26PoXuI2aLlLlljcKw==","signatures":[{"sig":"MEUCIEshDg+Qq5W9+8yWA7kKGeyCwBFJH4GQIWPnYXcitXZxAiEA1/rlu8VX/wmqvPX8na83jptDR/BW0zcYW8G4WnrKKOA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff4M/CRA9TVsSAnZWagAAE6IP/2/nkG99cUEh5IGOilnB\noIFSUKNcU9X2q0atN6TbR8Ry1k7TSLH/zAa3hRhM0JIpHIxfhDmk1eFgGwWi\n9lVHy3LxxJnstpbgMZJ9z68/l+aOebEnUDByPDw60aI7iAy04dJrKlCcLN+q\naekLsaxraXO51f1E7j+LxTAthz4i7WQzex1nO2k539KGHiOISslNicz+cqoL\nXTnNYst3pXHpeSLMIEMIMzaJBQ0oM34VOG4kd/66r8N4JzZnkm9d9ebk3t9w\nGlNaIs7wHB7AWRy8rmtiTSaOTgYs301EJlQ+ZtvLS7V79srG2JjhwFBDZq8H\nwj8OfQihi3dQQf137cltABuYBAJcCnSw49yM2PU8xfg3y7KjQ5Tz6Qe2B09C\nWvZ3aywi7ep0+MRqq6TEJKtMFDX3Gma3GTHzR69CDtKR3tjUcBrVraRi+TMu\n2fGjsGqqyqUphEpOz9VcsLHTU7B4b0Xv416FdurHTfaoZ4BzB1smQS1jNjSM\n9ocyX1UT+SqoIddSoUZAZ8u5/BM0K4xHMEHnE1LqO0CIaeI6guGRGvWgCLtI\nXHS4BTzJx1HQ3VvrVpIU/Ljg4aG+Q1xvpEHxgdtDQZHZ9vp8NCz5hxKWDJq2\nwlxg1D0icvUIAhHXE3GpPWrugXtb9Y39kI1yzALGRamNz+bRf3/R5DStpX0L\nbM6J\r\n=YLAM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"94f3780d0b1de7c93b6e1df52fa7495bebba41ed","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.8cf23f.0_1602192190659_0.1800165319632432","host":"s3://npm-registry-packages"}},"2.0.2-alpha.dc226a.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.dc226a.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.dc226a.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"b70adc800f9d4209387a41788bee2ca2b8ef5d37","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.dc226a.0.tgz","fileCount":13,"integrity":"sha512-a2Opg2HgjCZXT93Id1IHxkcx6M3BGIzaC2Gyy30lexcrKub8MmgmPOuC81eWnNBeOD1LHQEzm3odMJ94e+snFQ==","signatures":[{"sig":"MEQCIEJEC98Mx3pNMwvrTN/OYaG60AzI4XeuRpEpk3CzpLmfAiACiPcHRV9gOcGjpTCLj6RsbB061+fpRqnFM2DqaCs9JQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff4WWCRA9TVsSAnZWagAAhA4P/Rjut/NNEqhwQAqbcUIJ\n9BHLayS/hZ7q1DV1pyDi391iQu4820MZCXbEqCP7Y6qs6YmsMwR41u29kvBI\n3Oo7cmZr9TQlrEEHf0dD8Q11VnfJMI2Us7/rziYURUF7UNCCJUIEdOHUEtbx\nsS0+pxrui/Lp2o2bCTh4Pb3BdGWNWH4zFkoPAUGtufDgf3a54di3OA4T7gwb\nTpCg4G/+s4wAZRZOWfN7mxKm9Uyqb8ocRm9lNu5eNG6jBaKmoxDzE7avGyr8\nhJOlrl87naI+yvl4/G5YwTuJyTlUiN4XoiRJbnnPYvL0mIUu/6qKBGmal6y3\nzJ7KkmY720OOdcQahOuu/h4gl63Ln42Zsw6oeR6v5qWzh6FTMHMRFVa1dH/Q\n0YloqY92z8FIeuJ9A26sR7ustw62TH1DBrI7KOMvsiZPS2hDPO/xyMapTrc2\nBhUrtbabohUieE9rWnkJQpKtrjVK2ckPCjmrNSdtrUxxRGxs2i19kWs/f6Dm\nR/Hp1oNIATr/OnXVJXcU/ApAd0D6bfGk5gVFyaczUrZ7zfQ5OpZpiqqaNmtR\nOzBoA6AOAFx3yzG7y7j/ALA770NozbYGfNwbNCywwjiJgMQifaI3E6V8NLA7\nvKlgq3oYCB45UIgCjHP9tEBEEGBOoN6V8Oz3JiMUk/mS0GIwLgUwoA11Nz7U\ni030\r\n=gj2W\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"89948288637f72099ca0d9e45aa5b7dd863425d6","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.dc226a.0_1602192789679_0.949055152123712","host":"s3://npm-registry-packages"}},"2.0.2-alpha.f04d1b.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.f04d1b.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.f04d1b.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"b495f25656dcae56159e697633e9f74a65c9d7a8","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.f04d1b.0.tgz","fileCount":13,"integrity":"sha512-qRFHsimiUFz4WcZtChfHn1DvZl00QrNhbEpjpFb4Jxhzz3LEZg05FVqQ5h8ozSUwVPp7U4F4bYIMLWBgXfhRBg==","signatures":[{"sig":"MEUCIA8GdBDHLYvdXkWUwVoSu0fKamXO26uSMtot+Wh56Eh6AiEAsKGEBD9iUmB0Sih7wSWe2/rdUGqfyVuzAoXaNzNjukU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff49XCRA9TVsSAnZWagAAOl4P+QB0jhqpMwKVAmqfroOo\nNFGeNW6fI4ORDAPQLNUEN82GR5AV/bOSbmMTC6z4skTJARC3ew8f4V9ersZr\n4y4lPO2W+TUmijFZtog7w1vmh1qO9dw8bgRnwKaMT5BjTFf2p1KA7MBc5Jm3\nwo8zv6TDTetv38TyL1Y3/6hP6lIm8v0xJDC4iBJ/hqergFCvePCQrU78NwmQ\nqxLCP34llfae10AeUKPGOCC4MK5CUILfmKRrmGeIbJVKtOgzY+WyW3KUtVKo\nDh6RAuuW6xuGcgbKMMFG0SuAnA/5xuDnq7loYFXmxl5ghbVUXMWzfLfR0L+y\nMdRjNJH8oU2tk4w4D2DAWzxWUJ2vJBgZz9PS4uqSqzUcRI8Rtlmlc1XtPXTK\nvrwGXb3EGDt0Ak3FTLzZuUm27wg/jK4VswWWhvrUD1xcKopEKHH/Y4yR4LgT\nO/S5Br1rTy3Dts94E5wg153EeXAktD6H8TL5BDyniYO83/prArPn0BZhe2s+\nLeZrzecAZUC/ncl0ebmuA35WESfCw48u5CQaOCPsTVV2boUsTdK1ccTOTorH\nreQCNVIYZPScB9bQEQ21P68oBY3bM0jPLqkq2xXtDerXTX12kVXpszT6f+oQ\nVm/OkGumtv/kI4aF5VM3gR1KRdudwqsxl6/uS6TRxshj6BxDazvJZQmHdD+U\n543g\r\n=oMP5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"6ad66c753b2494c1ebcad651ac2ae76b9b24396b","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.f04d1b.0_1602195287407_0.801228272488681","host":"s3://npm-registry-packages"}},"2.0.2-alpha.b75761.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.b75761.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.b75761.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"2e8481a503249fd03044b516f9737f175e13629e","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.b75761.0.tgz","fileCount":13,"integrity":"sha512-W8GP/2AG11tS4XQHwSOgDU5aGN9CIFeXfLj51juG7DFoH7i9z3QHXhSsDov6sDva4lpzGL3o7Jj5wr56B7pQBg==","signatures":[{"sig":"MEUCIA8oElTu3GNuREXj7SDvwZUdMdQo1U5szqL9sYW3UNPwAiEAiMEO7UEhqMUeOZi6VX9PZ8L9TH5fEolBWPXtMs+Bf4M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff5AjCRA9TVsSAnZWagAAe9IP/2SfWvm9gqUVOmyhuIEk\nLupJ7dkZppRUXwj+p0jZ4cb4lIGhdVW4ForIbadvaplLjX65E7yJpUrqCFs8\n2OZwwCTiwoYJIew9AX66EXlUrA/fbBYBPfb2MnBwl9oJZyFl5e7UiHMb/exF\nBw5h5+j/fN/if4uXPjv0SjtziQghw9r6+0Dj4KDMNJh+HUiT09qdXwKNPWgh\njnq0JbcMz1QViCzHtID1OFHTnGjm6wxeH5co54fUT/xv0P8XZziRKX8iKjq6\nbhh6F6GhXYeUdnhGEhPLRqjpXktTCFY3yPAH387W9A7LmOgsdbSBh88a83E0\nvVZPyHJTWlxmDv/UDe7fzl/1BdzmMbW8DyF6zmtUOS/vLnqxh5yqycKNK+mI\ncfCK8Ao+dVY9kXduW5r870KK1VcnTZiDCp7lqnNZDOCXKpZyvAnJ0EGk1UkF\n6tHRwikCvXkGShSpaXnAfcnTIzKczK8mBNLKlkSIbjNcCLK2c4O3uAqUdqgd\n4KgmT2ynepz7fHprqSXa40fvhP034v6LLopS3QGxtyVdtUrN2Yh88OST61D2\nKPc1+ZObwup6FV6ufTzcKsK/i6kamojHJwFDCwHlyNGy2p2EDXs+mzFm8G1G\nrEB+PNKkiPq7ijq/uaoZjqWlnTp/KPWPJdb16uUj+GWtc0mKZOpA25DURBh+\nJVoX\r\n=PdLR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"fa4486c791e7f8c1526337b688cf7732eb750a9a","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.b75761.0_1602195490667_0.023464161502092518","host":"s3://npm-registry-packages"}},"2.0.2-alpha.cdf27a.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.cdf27a.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.cdf27a.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"e06394d992c0afbcd77bac993a889e52aff57129","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.cdf27a.0.tgz","fileCount":13,"integrity":"sha512-AM0HK5bXAqZxLmtRWYjxyXrSfdqr6lLuaY9QOn1AYyasC+73ZCrG44HB+8yxxWROjzVztrZiXqp+oMr6KYHEAg==","signatures":[{"sig":"MEUCIHv2ny3MjhKqPRj52et3HnCuQJnBXd3g9oxaeEAXFVq+AiEAy5DycNyZHu1Hage2pIUwQT6B97Bzryp1M6xgOKDdK6Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff5EhCRA9TVsSAnZWagAALQ4P/i2M44iWfjvmLOvtSZ86\nS7CETG8fY3BvTVqLuLbXoqxw7i5GRv5vCgVbKoEVVLTegwC+cL1FI6LQ4N7k\nCste9MEQZq1prm+P1LqUlMZuNYQRFRE+Zyk22tx5X1wYH36I3PwaMR+INFPO\n0oKvDYRvVtJWym/i5wQ1X0AIOBkTsHD+R3T5KZk8/HFUjjVljeoJ2q8neyef\nDHzfFwlnvVahL8G8MXOGvTReQoYH+JBHpX81f1FhTf0sRASDcg3sMPvqPkX+\nXxNsfwp8FSaTa7La9OGRY+fM5h2yHyeXG51jYfOiLf+yMoF+GYGbNfaY9zi4\nDMuoneuPuHjg4AHHoE6xAjt3FTUnAuJYEf+flqL6ZVV08R+QY85I3uJkA+I0\nnD4hIba8IV5g3mB4rsqt3vut5zJlGLCZZnNG7xmX2n7IWTzx7JyDRgI1mp9x\nwI5cOyG5wyNabJFHkLnVwlumchKJahHeVpk7Gy2+zJZ2Uu5khJJlYPaBFT1Y\nqxWhfvoCYRgpB1yLToaw5ju6Y1lIB5OPS+4i8Fd7NRBdaPzX5CNGMyYzFLcX\nYoZpMrW5GyG8Hlq1uQ9sxBykKAv6POyE6N6itoy5DUe35LvrDKYxM3HB2kFs\nOmyAvnenFu3xC7Zurn/mVaOW7C2ZyC1rKXcIRMAckOoZFMYWLYyZPQL0uS03\ncQDZ\r\n=xF5e\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"0b5dcf7fceb46450d0ead93d9109b15c9e39a6b8","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.cdf27a.0_1602195744883_0.8658669090079998","host":"s3://npm-registry-packages"}},"2.0.2-alpha.05fe39.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.05fe39.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.05fe39.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"5b2cdaa223686406c3c1881f90aca4b9c2962b87","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.05fe39.0.tgz","fileCount":13,"integrity":"sha512-khpSGdv9DYBsKeSdyAgh8if3B7PD0SXYv3KPTubynPF7EhUXMg2AVvE+9ymIT99yRD0n0C/wRymzk23ytDHuNA==","signatures":[{"sig":"MEUCIGNuC3SUVrXIOdHwljPvuxDjsAFh8EG94XMKBBC+kY/HAiEAlUNDfiXOjR97P+CMwt5gJ5w78uwo1pXnTcS9HGCN1IY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff5IhCRA9TVsSAnZWagAAyDUP/iGJZSulBZDrLu5ZISvY\niSuKlm6dElVzviBSRdmgw859ZWdmZhNejEucuPQ6OFHZqTiWRYNcb9OYWRoV\niBSCyadwsBq4CM4fT3anm/8eJTRm8D0sDaw5mQJnnz4mZ5NQJ+mA0HD81m1K\n2Vub6mywdmk5+JpjD0iY3vTANRPlMmcQyJtTPVA2XF1Ym7TSPbnn4lk2pBUF\nUBywtXDMo64ldiD069jHnKSiQubs6lI2hlsqn0PITAxyTJ+vrZcriisPyZMr\nIsuTHOQHrGUDnjYA3LAUr8tidWK8YHCF90L1UjSBkKgEfBzCjc8SY8RLtH5Y\nQVVBvRLoODo+aktt3gvWju4jr1hGgvAhJbLGsyto7o9en3Ba9y0oQQMIk7oP\nAtMCwCEmisw0bzbF86cDVmJeFKezQHHzkDrOJjwOr1OtZUgoifgFHyhBnqBU\noTIlpvPHg/+rXLB30uR9KIvyNtg6X93QXQP05Env28vB0TAGNFmhu31k7+YO\nI3LSCjVTvOT+bUcsKiY/S4bbgsT8vOmuYK4Iuu5Pvg6XrEZ7NrzugRvKJJ3q\ncKLz39CqXc3BhxIYE+ukR/AIYiOcnKHmTx1V5vr+dRMxX3SAOkIMGwRPlok7\ngn2MM/mQCmf2dE5SOheNRiS025sSgP8jqFG8RTEBpqPR6udzOOo9w6+K5i5I\npgMl\r\n=IsOn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"11116d8e9c10946395919eb97af8efb84d5971bd","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.05fe39.0_1602196001395_0.15832064157403725","host":"s3://npm-registry-packages"}},"2.0.2-alpha.f39688.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.f39688.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.f39688.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"bcf4d6494794327dbb0291520fbd859ce388f3d9","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.f39688.0.tgz","fileCount":13,"integrity":"sha512-FuLzKCzpNgfMLLdvZd2U44/JFR8p9EDJOuaMCdaXO0ClOLMbAzGxtIxsOrzYZdH2XipxOPGEbQrKsgy7Tue0wg==","signatures":[{"sig":"MEQCIGT0SuKd0Vo4IEbOBdXm2/bnDXHE72e/aYimEjeihotVAiBamaWj20OBuFz7XmVA7FCKnYa7GOq+kNcGt6ITIci+hg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff5IxCRA9TVsSAnZWagAAHKwP/1Q3VHEBxcWzphWLDU5h\ncKVD9+fktVV0yQEzJ+o/zDnCHyzABUFi4Et6Qxk8lkr+5HaOIKjX7dwq1KHu\nRhOTmRUEQSaDCqkmBCFLVkBY0V/6s0LBke9Y2HIlMC3cmWJID7WCOJsiGSjA\n9OF7/UCVGQZ0dC0G7/pe5wOAI+ftfexFCHwFgxLsxSizMeYvmmMRVRCOm1k8\npBMVEC2T2T8bI7drFEDdhnoS0bag93fPOaqVPda4JozNtX5rqtm3bkjRZo58\nr+KhiKalmfG5ec0NNhZT8Q0Lwpg2F8L7jfgOy5IC8fbBk5Lg9vdO4IFdG7R8\nj1R3ZWya5J1OUbDth+9J8QEM9NXIHphlboWu/ze2+nggHBteExLyAFQRou88\nt8e1o7ua5KoIeTHQ0Ujr2q8AknB2fkxE9bUvMXaXFoKocYHRdHIJ+Mgq77Y7\nWBZ1L/ETGVRHdoGFKs+Z243AnS7XBrFGVWPO67uKJup3Wmvv1pY5jqFvy96s\nDw3ZXBmR8Vmk5mUEeXNOs/ogoWK6dh5KAon0I4eD5iKkpy91Bc47FcJkwEqR\n6axgPriojWFdY7gvGq6HYAsrY3Sh3Zhj3INMwGn6Oc5w9tB2hCnCF4eUzNSz\nUGaa2hMdGrlsRC85YKmyZJEHj5Li/DCd+0HftcmTs4IYAbvN/CyYUFrKGvdr\nwh44\r\n=+jUR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"06f534f8e1e1e062c375369f47c8a7f3d295ff6c","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.f39688.0_1602196016703_0.8642929812640885","host":"s3://npm-registry-packages"}},"2.0.2-alpha.aeba04.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.aeba04.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.aeba04.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"aca3bf0d4e9fe3fe208a198e4123fc69a4344d8f","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.aeba04.0.tgz","fileCount":13,"integrity":"sha512-RduAgGLRNEdmB62QTIM9QlGd4rghCGcXAlhjO3OdCJZ8csrpyItN3w8fxPFZZQzOlSt9mFfh1rriuriE0Jpcbw==","signatures":[{"sig":"MEUCIQDTgDX7uk531UjHSPUjcwoIz97cNlJ2hUu7LHYzJcHi3gIgLD//iStVtiEqgPExwh2wfj+76EabfctaAAYJjU5tY+E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff5NjCRA9TVsSAnZWagAAn9wQAJyOW6aPytdLSnJ7owMC\nRW8EGJLH/64F0MCyuQ5K5WWEDqAVcitfWxZOk1P63kvKoZCWHJQxAfYoBMd6\nd9z0c8lYGOq3+SthU7P5oyXtSYG/2e8LbNesd77VsqhULNPPSt/RHKOH7VNT\npmIIe62CMfEDcsAGUwpl16kh6sRIM8YU/SNS2Po0H6xyL6Yh7+OXR826kaNA\no7scnxTcJQ2HQ8nnbu8pjsEBXnApDr2a73+T5oeAJIXgqmWK1RQpJq38Kp1i\n6CVJaNboe/6II5TRpXmiTPpN2dovyPFfrKI6D80EX6+wwWkTsdqj3xKqfIdf\nB40K4BlKs+Yl2Ext8AanuGI2OHoNWuSFn/kaJ8F+bH6cR15JsEgjSf1K/oUn\nyTBzPE5ryw/HXympFuBHKeFYc8J86CwzzDPbgrUXNNbv+wNXsJBvH9u2Xbpc\nSMh0LWokVAqWoipsiUZoiYFCxCCOWlt/0PPQgVKS+MrZJRmw/SXS4df/zoFx\nceNyKRccWrrjmWbWGvQamYuK9mjKJI3MnUMVTgVS0ccU5gm2R7OAMQwq4Nj7\nBdTV4K2HyGQIbR7+aQTadVaaSnadUtQETicw7WErztwZvXBWTpQMKOobIuYh\nv/YiNei17ifgGgShV7dHYjpnm6Y48EQLRwaQ0EYQHCqlZDxZzsVEd7ElcZgx\nYfAR\r\n=UVfo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"68d54cda74603db9eb3deeaa64df70e2f64ae41c","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.aeba04.0_1602196323147_0.3942717079151712","host":"s3://npm-registry-packages"}},"2.0.2-alpha.b1dffa.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.b1dffa.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.b1dffa.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"e61606146b0df251cfd8f111102d2605c4418f3d","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.b1dffa.0.tgz","fileCount":13,"integrity":"sha512-J+/QYi+Et76eguToofY619qLRTK2P6Kk8Uml7jY4C9pKlCG2nhvmhl5P+tr80mmCK6cYu1hSWEPq6+0wprC5Ow==","signatures":[{"sig":"MEUCIB6LDBtzsvBYPcG7Udn+r5xjB17irBp1HskJYspQ7VD0AiEAmiaE1yoIh53Eurm4py1LGROz/1qzTrJ0uJLm2z7lQXE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff5QYCRA9TVsSAnZWagAAYFIP/03OoMHTbPXtDMCNiBDg\nOTcNI1r0xMnOfe/95vlYx9qrjJy6Lc9fqc9cFKgZfwmL2r5KeN70y2fK8+aW\nb/RQyGNq+CctK4a5m6S41/Abi494N+8xHTwTjBLjs3XJv/uBPoraTRJj59Vc\nmOQT+rt3vCOp1UrXzWK0b7Kla0Ts52oIv9rkgj0SnD9ndLAc9cUsFbvBQ1Am\n+Q15w6jM3ws4afqUsb1rs2ao8jaA8iDwhSaFQVnHVVHhU9weB+P09truGvkU\nFYZccoWczdk3aWYTKCg+mupIbxS16Dy/1rsGWN5TdtJB0Z7j5ckRqMIO84IQ\n38N+lr4wC3Bsrw8o7lTKJDzAJ3I9c/pq5C7axvW6umSomfF3tl9VrI66ERMx\ncMkgmnsv0v6Yq5MGzrokBQTs91h61d441dlA+AgBO3l2s4ojPW+UYHLBpIwU\nI1wiVyFKi/ZigjZzjcQ42bsfpD7m7nWNiMJPN8p9jtSLWRKVCWYycogt+48A\nQPG5bUtdZVLj+LlQDVe4bS4p4pylfHYUqpPVNa/7shqId74TUl+lDgSzsh6a\nJVU6MImY+X+aUrPJiuBub9uIgEDPGcFdCUQctLe0o9PUau0qNiviy2G0Bnzn\nzaFdu/pzIGDTrrs5HXFl5Ft9E/8adDlasKEre7ziPfKOIaAHaK3Cb+vp/KxS\nyqr8\r\n=bA4H\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"0886ed84e862fcab76fbddd0fc5841ea59d93c6e","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.b1dffa.0_1602196504475_0.055017346178056314","host":"s3://npm-registry-packages"}},"2.0.2-alpha.bb538c.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.bb538c.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.bb538c.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"02cf5f2601ba90cbaf5fab78c026aa4d3910b87d","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.bb538c.0.tgz","fileCount":13,"integrity":"sha512-WuCdVBWt2ahbat+OHsFPOOBQKHKrl+QhKFvYFiEo4PJtBxRdx2YBBcY3SwYtz9jVlsr6Fiso3+vlsSpk57UmgQ==","signatures":[{"sig":"MEUCIQCzoDuBtqU9iG0o9VwCuxYNyH+DDwgz2pizujtNj6ZGngIgP8Olt3y6gfgQg+Lx83B2rDvmgG96TTZibsjerufhUD8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff5YwCRA9TVsSAnZWagAArFUP/2ZKqCo5m2pmlEdaKIdl\n/bgdKzA1PjFEGVc8cAaPwH5jAO8nUc+JG5ndKVjmbUax7ygnWEEflMDvol9o\nZxKVRH9OwpjQNhW2I+MM1Piuj2PQiW5rqpGbBVy+s2pq4B6a4RNgmnHU8dkO\nZBZpR1UlBn10vvmECN2DJvlghxCuUFaN1VwqYQvgqTdib9OzH9im+tteI1o/\nKL1eayfToOA413jTz/A4CY2zCKJjROd6YgbI2zfxLcMsLK09vLZcPaFJ9ow/\nqTDb7Uo4v7WROWXjkzPWwyKIlhuk0fl0Pe+4dreoHJNnvt/tNsnnkyB6tJbx\nvYS5YFF8km/y7MlT5MObH+rclKm7/pxrOnRCyH7eCtywT80/EldRKpb1Xf7d\nPjfHItopDit6Dr+7ZFtjkA/4c7Cczax46USwuQnnb3w8HNyw2pp0i4MXcpHT\n4ZFG4U/0hwNdgNYkULQ2dtxf1moPNUmHSQ/TCjKtEaAJpkGvcmSRvZRrLC4c\nPbXbnIrbX9fANt5MosZu0KKlJvCZZgxHypUNXkUNKSy6qzun1540dGNtiF39\n6cgB17oE8ilISswlgduFIuGZFRYfdLwNE7I/UkQQ6I8I2c2Hp+VBs1Pi/TJq\nwvxNl3wcEOhK8B66mCwE6OSyql1ArV/0SbXsIkH0Ttx3kcTCnNc6RQfO6/Vz\nTwas\r\n=gTCa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"1c97739f09c897e1ec81b03f3e845c68e492c0a3","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.bb538c.0_1602197039619_0.3340223878267594","host":"s3://npm-registry-packages"}},"2.0.2-alpha.74117.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.74117.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.74117.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"5bd28f81726a33a7389abb5a9623c4e377361abd","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.74117.0.tgz","fileCount":13,"integrity":"sha512-86vE3FKe5AT5IKmLNJhA7d7+Oeg+1yZ8eUlgm+6YcBCUhw1+lloCFE4x3VToZcQNzbeWWB0dXhd7iOpmHdcY+g==","signatures":[{"sig":"MEUCIQC0EG8ZJOADKFsTLlYetj+eBmEzWW4BnJpl+TKs1MWy7wIgaIXCriE36HKBigSl6gzPopXcW6Fmc0BYOuXu8PSpzsE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26533,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff6m5CRA9TVsSAnZWagAAcToQAJBzjFynmbDvAMu35Nor\niEw0A2M0BFwD104FZmzTxJuu3KdvicfMCS8BXqPAGFrkgo6k5naJPaymZchH\nbIZaY9ZKY0d7M9tFoGsN9D82KCooavwSMQeTyJ1uZLvZwEpGaGRx4J/OurwV\nDLsLCsu8xawj1zJDSJ40JWntytYasXyom59bKGXoOmBzqIyiOMIWwlvIYnTB\nK0t1SYrWhpd2VG+hRD8w0LpRW4nI03wpPqbqZ8n5qphnD834vm/3mrkPwUnY\nHYGhIPanCTuY6VyEOoK6mY2G713MsRFhb+PgakIRgZC8GIqKKWFM/Gy1sKBD\nGwVyzqPp/I33LbmQ+QFKybAfFQhgiS1WgERPp9rnJaiz2i7EoBHrR/OtPtfX\nO+uA9I5Bgqc9uhms6kEWBZn8I1+BF0YqHDh54HfaKi/giR1GRW9hcjL66ndj\nGFswKv3lJu4YAVPgDMA5DqLXWi13cCYjgbcG3wMc78aWnHPp5z6R1aSqKU1P\nLz1lhg2dzN8O+hmTT/suQbO19yWUVM50rvYnroQdHSnVjFEZjvFYRYMDifBd\ntiJGEo1Nk/PuZCjNHgjFtVFzr6oN6zeb39BMW8Hhdv40jDygHnksmwVAf9oL\nkcwiBeYXTqobLOeYb8On3dS0HUTocB84DYIIMeB+xcP7b9QL+EGMTOtuGubJ\nfwQE\r\n=V/nP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"53f67df62bc4afb6308effb64f6b5b44d1023a0b","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.74117.0_1602202041145_0.7493015086690895","host":"s3://npm-registry-packages"}},"2.0.2-alpha.9897c4.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.9897c4.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.9897c4.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"afaa9a1313443cab88edc0431207ad3de37ba59a","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.9897c4.0.tgz","fileCount":13,"integrity":"sha512-OzdKTbmAjDtnGhrjcK83iK1X3DFUczLw8qrRj4KKXXm3bBVjy5X4k7hsan+DZqFjbTGIYThIQHGAB3Nux6YTgQ==","signatures":[{"sig":"MEUCIGbg65hsIxB3Qpkoi8wFJJRIV66JYHa74qWNGNfVozWeAiEAvqxIhURvJdbwuZrT6hewv5T4irAgzIeUzAZ16p9WToI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff6w8CRA9TVsSAnZWagAA9Y0P/RUyRPoI+DmKs19OdmV5\nlrt4mNQB7OQyWPKa4/iPOkVoHQz213qfJLFZV9jGaNrV9tUTFN5dPIL2QwRL\nBEmdK6wElHJp2svyidTC8xAdD7pnpnRsDELNH3q5kjDcg00KKGXRjDAeqiUO\ntKMxKhKbqvKUOijXX8upu+73/Cdl8GNDdHqehiL7T3ajbMHnTbFfj8XdgpFT\nw3wDDb1ImdLTRKkqCOKaeo8PB3lawYovX4CgXSALj7QAIVPJAGysJxh7G6f6\n79g2WHidDX46AwhTV1mS1yqlmdoFLRNQ2N512LEiKsyFyrn+jUD43MrsjbaS\nI4nNb0wmzlDTpbz6sXzzzDXzS90thKHRu8krlyXHVE6joCcrLwVOJfX+IghB\nhl71cRZ4ZkmewmVpUS6g0WH20OARLvNsd1LxViJ45jefT3ppjofmgzM5LLeo\nZCijCaN2XCT2CSGGh4vOyfqHGcgDVItqzcYkBSw0ubZbOPEBOJKbnCBByExH\nFlq9AXFWAn0iUCPYSBfRm19bB4RdvvVH/3san7QlZQUpvO6AsP/Tmxhh8fHj\nA2+cqAJo4EDUeSwQEC91fO5D6Kzpx9jcQYW2brSZV+eb1kUelxlZE7REMIpI\ntdvQBNRUeC5tc9vVWfPMLIw4XKOsdHYMGupXh7I/vLjNqGpUfXLbPA2C8ega\n+Gcd\r\n=skzM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"c59f527ceb677ca18daeeb346ccff7ffe2f236cf","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.9897c4.0_1602202684367_0.5087210301453091","host":"s3://npm-registry-packages"}},"2.0.2-alpha.72452e.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.72452e.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.72452e.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"52be11fa1159b03cc1d1c6c32585e9b71d75897d","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.72452e.0.tgz","fileCount":13,"integrity":"sha512-EQ0AWUcKBd3vf9Stbm2var1MEn/KaNGodnXEw3OQuryhOXU3IqYkbYZS7HgBkXN0OTdL5EYoE+3kW8yHIZDoeQ==","signatures":[{"sig":"MEQCICDGQX2czDpKZ3NsHCrX8ajkpPGTeyv9P5m1Hai4ZegvAiASyvU8k6miB0W7ANH+6gPmQpssJFNWF0ftU3keyzyojg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff617CRA9TVsSAnZWagAAcfcQAIQHj10MxnjaDkBsp5Vl\n2msXXj8vAK+ZU7pveC/aAcOx2W24zD/GevhK4SI/sjZnYTjoRFXQXw2VtrM+\n5hyA8pOmIS4ma5wlFuGXfK+HL0W6vGOKzm84TydNknRug9FRWtJ7F7N8b3gV\n9U4G1lcMBETX9M03bqRq1FAU68YFyFuObkOAtXH/vn7L3tNtoyDdPYz2bJlg\nT6BUlqiBlKgvnVqtgtPk3wCRRWORja0wvTMS8cYRQdjnK2R7wysPIwBc7/5S\nKMqO5uHi72D5zXxQVdKmsmn816xjFGqZd1bxk0EI6Y2gmp68bPrhFx/+sW33\n6FJ+NoSx3dZL+885uW2li58jrD5nCdgsyXNW4vWaHXLLiioVu1PFToPZAiBH\nMgCveSkzuAMmKm/QJ4+vDq9dDFLuOaflf31/wFuOAaEZnrHeqDPAcaK4UM3J\nAPjqHPEHZ6nKLv0jLlTQ2vKEQlj2Nd50N/mfhDQNf27ixL8m3BhBISTi2zkF\nrtEuI+kZdpMm6IAXwL1YtgYO9zesdXeWo8JYoz4Hlr7UQCClIlvK2b5PBzSg\nSqKo6tDJntmAAZM2PoEpdCZh8IdEDy8Ly7u6xoY0vJYliAILPS/y4PmhD5q4\nNCszRgCeO1YZnqUx0nloHZmej48Bz8GjM3UeKfFhgnEIGTJNapmvNBohw3J0\n4pC9\r\n=4QfC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"fe0d3720a25f4ac9912ec5b1ff52bd3f34d31f71","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.72452e.0_1602203003053_0.8831236588250881","host":"s3://npm-registry-packages"}},"2.0.2-alpha.a5ae4c.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.a5ae4c.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.a5ae4c.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"010e51737b7f7698d6e98221062eea8258f1e09c","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.a5ae4c.0.tgz","fileCount":13,"integrity":"sha512-xiJVtGkE90AxPIGr1ZPNKIywYPDH/BW4t8ksxkY3A/gSGljAfYxsHZbqEKaXY98lKQ9FvWuynhO6Z8RXropx0A==","signatures":[{"sig":"MEUCIQCeHvgsXJ4r6xZwP2nKl/PpE75byw6PyKUhdVdd6m0KKgIgVPBsDGSFeCo2DW/v6fiw8NSp7WolCg7fQq0EoMe6Wng=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff696CRA9TVsSAnZWagAAzZoP/A33yPDG5/sV57oj1ht9\n8sGDV3BAPoU4l8nsiqJlwYqgmwYOLVlJd4oxPgpW2Z797LHkGzDgFle+HYw4\nSW3rOmdh//Eadoe1ivrq/1HTbiDNrg31SWJmZxfq+en23IMBy3HCEPHqxjtc\nITgWzc/lKqfNGnxN0WAOWcgN/kcHFg9u9nBGa/EiCFc3wpeBQ3NUWR66rtqa\nYfyvoQBKCVPzyseZQSJTmFjnf1+27Fg2iE/asZ0GG8hHVmkL0+611PKf5stE\nr/YhQ/bLvSznUyTZTeLj/PoafJb5ug8bSgixRPXhyKQy02XYEwiGKM7kjFBH\nGSBMB5Amsac/zOkKZTD1S/0m3t10Wx+MJ+jFsD/BUrcbuYVwWQe5EcWT6Wpv\nlfo8qYH/Jhq865lwbMEl07pCXH5RG5Je8h4PibK0AcvlPxaeaFiTleDIbwCz\nr1h+Sj3Kb5A9x2FyBc/+hoc9ldy6n1wgj/nqDEI885bSqc1oobJ2TppsvaDO\nL+Hrk4dqnNYbBRLo5tssfn/6r85dBW8kH+QPp7joO0hDmQ8JQD090mQfvu8P\n1e/2coZ0QzRRMDjXxPkbzm4loF0DF4OFDkTMJvTevNlGDZiMCSjcjH5jI/9z\nvHSZriXF/zPONuTEk9vmOnS1SpOrgKwg1Jwu8+Eti8337ofrlWPNLpn1HpFQ\nUMPv\r\n=Prun\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"bf00a4113ebdfb961568f4f5e55911ebbb3273dd","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.a5ae4c.0_1602203513606_0.8988637725055835","host":"s3://npm-registry-packages"}},"2.0.2-alpha.c8fe5d.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.c8fe5d.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.c8fe5d.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"0b4c67a791e24318fe2a153366dceff8d38ace0a","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.c8fe5d.0.tgz","fileCount":13,"integrity":"sha512-SpLNDFYOcZnRr93cRjcNvv2giovbpwF7EZRpW4O2PXfgvuoNCYTsNHrW1FGXGaqu9XBGxUw+j04PPqCzTwbdQA==","signatures":[{"sig":"MEUCIFmPxuC0ilsaBXHJTwh8w/AIYaElcBCvNLK9kEywfkNIAiEAsrkIGxhapHO5dvz8Vmj0CdoZha0FJ8qOS+Qx3840IME=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff7B0CRA9TVsSAnZWagAARrEP/0G8VLgoWwBITNtgOXkv\nSVRHvT8XmRHWXe4pwltozIDQ1M00HbNyMf4TBc0A3ZTlVOqDePN0THxDQqGA\ng3glbUtOMpw84lmE0OEvy3TWY0rpfaPwq2mjDdD+WHl7jEkjgvn/B/rbhj6X\np7l+StAcslOHg3ESOXHixsWcgSflpmUmF8U/g2wpOm7+GdltEts96oZ/jzMu\nVhmTUJdWgsTagj260edWp8UpOuZvlP0NQs+4oEru9dtCLjliw1P/uSIPwZZM\nR1EK9qi2HbUsf713RJlYiHkGRqeQ0euRnROzqQISpUnS9IP5lAIohgpm6Q7p\nAQdaZk0uMYhNLwjmKYhVxGtUt0cVIaLfUL5Yazb2Cj1GZaR8lpaswK81ABaI\n/gw4w2i3CybGJdCJMP2ULBeLOoenclFSHcRxpZ/Q6F7sdG6R7jWtrI232L7u\ncK6smU71UGEjvyCbwMPLJr6BN+YUXVwCsWtV21TLr5TRZC1yUZOTtpHvrVhJ\nP1RmIApImnz14bw8R5cfvueREZHX4zPMf/FV4/iHR7PcFIiYHElOcX5bUWjC\n+SLJogbR50kAeYmvdeOHZlROqycwQunzdEQIuMEgUR0jy+TIHC1NH64W5B6L\nyRnWH8wRaBVyMZvCynTq0uA3F0XffwQAQqenrFpzFIg+71KcESPakzz3M8gW\nsZaX\r\n=Hjk5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"d81f36c78e642481eedf9188ce8c2a9879956c8f","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.c8fe5d.0_1602203764425_0.10476287015153463","host":"s3://npm-registry-packages"}},"2.0.2-alpha.6a6c9e.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.6a6c9e.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.6a6c9e.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"070198d2d3eeb2f5414eaf5ef12d2d6935ef24ca","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.6a6c9e.0.tgz","fileCount":13,"integrity":"sha512-UYJjukNIdiuymMNxxt9H2DEqwRfli1fhR85QdKMWW2Iv1CldGI57KZ7T1StaoZMovADkuBjQtn7Y46SbNu8+IA==","signatures":[{"sig":"MEQCICM1Gea0nqOI+LU0LZcfmGAtQ2y01If66o5pKCe+4cJ9AiAWSUvxMDovl1SzoOPtBRKBHCpDstLLHc79ZU7FEAD8Ww==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff7EbCRA9TVsSAnZWagAA7lAQAJLLO5y3W7X5nZakJ2DL\n0ghmLbUIQjAGsl3enX8enzDk9IR/Ui04gKTF5U9ogb/FSOxeo+GA3drqZJ1+\nJcb4WH7tOvV/iFoSacnYzRqhiE/ueyekzLF2bVmSKbtxhp5zn3sEMbEKyoqZ\nctT6RVPHcBdV64+gwhXcul+gDLqfuH23uuG7qSRaysD1Qhp1tnlEF2EBUwDw\nn6EOb04koKknCL+gr0qtcJfqP+YEIs8geeUTq3flgt9VK4frX7Iw229xYytC\nwAM34CnBiKEWCge5ed5/7NUcrb3PGWsmnKTgI0AiXxdwN4na6XnjsV+Z5i+3\nHYlOl4MwxMYVfZLdzEt1jL3/TkQ7DcIX5ODQgdreUTBAXtdSIZEFT97Z3hQD\n+vJ2RrWo0kIFfz15F/B1eg9RxKibCX2zjFn0+POYq8/L+pDefWbLsdDoUni8\nmRnAxMUowUUsexDt413fTGOpGmIGRUCm62mpX5D01CLDrI1QeRPgwZAj+Xe7\nhA1rSfEZW5J7445Sw0RuRkvI8CNz87rfF47VHvGMNDB+GEKELG5e0j0HmDOS\nCxVpPQm1RNDGgkbqYgv9d5TLlQSNvvoPOHbIst9Y3hNh+yase5ymVSuUppYa\nDIzQ5xQuUx+c5qyhHCzUQYPi3Cg3cchSX6LnEifZGFnJq3Gbs7Hu3iGdK7NH\nPdJ/\r\n=gcdN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"6e0f1bc6177732da8a892797288fe2199f4a6077","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.6a6c9e.0_1602203930678_0.27224432030540036","host":"s3://npm-registry-packages"}},"2.0.2-alpha.71e549.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.71e549.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.71e549.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"b189f7a434182a579b9ec22bc139e9f9fb26e520","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.71e549.0.tgz","fileCount":13,"integrity":"sha512-QnKeBFB46hWcNcsRit5/hfcncHJrZr8AbL5+YwHL9+oOK/qWyD8atZHdL3dx1IH4udOrnD/cs7OpOCla0mgrAA==","signatures":[{"sig":"MEUCIQCR9Yl8gna3w0lTum5aPhakYIk00iT8BG+AZo4L2nlXngIgVB+/0Ep9agbLoMwNS6nOW9TIjYyowMo1GH2sJTp7YnU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff7MoCRA9TVsSAnZWagAAApgP/3I1TLL8HxUWsXZXcobk\n6Prl/xAx9EIQ6L2Ti8u5sOVzwKNIXAvjNJFY7/QIgVx4FdMv75zEVsGDHio/\n/iWAJbkh6VVAbxB62EHNblRO3vja1RwejupbctcGiz67XdW9W2/92wAhLAxi\nmGmzsoKzhFdkQsi1tbRpeL8+WXGfBWJxtom1eLQWqG3pBu54YV+qqC3Zmg3E\n3EuNW3dce9o3uta90gS5sJ6ekdwv2seHJop0P6i+v4ruquw9iA8G3QsSKpCW\nkwQKsuOvzIezxvE2lb4DsqJh6d3XrqkZag8skjmO0GHWEcr/lxrugSTmPZV3\nXY5DpsIrdKvFte8PTp+0TdWtRBfrwtgU2US2bpDCUPWShNb1IaO9hV3mqEDj\n/2EZuZ5AEfdTQnhhDbIf28+HkcsWVsk+iDW+oZfVPD36Dzazg9D0TD6Xafsq\nYGJYlW+GzC1G9CEpUGnS37k3/v5mBEFVami5gKVtxEOVQwQq8C3PAi5H27ac\nTaUY/+d5A8sPkPJxyMR99DW5j/37rklsXA79mHBHrAS1qKku6TZcb+klby7U\niOkOG82QxxlEmh6M/nBb9iFJYk3Q3/1zxoPYvrxXp6ixuqKnCej5JQx5G3gn\nrHsNesCnEskEZjBGcAX2xcz7MYaqs+dE9vFdu3RR0PqSAJ6XykqN/W2a75lB\n9whq\r\n=MlbU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"10560c9e70cab11583c859ae28c5e9d553195f3d","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.71e549.0_1602204456286_0.8172299886967578","host":"s3://npm-registry-packages"}},"2.0.2-alpha.c8b49a.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.c8b49a.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.c8b49a.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"ae9bf6ab02c94a8326f525b4f964e094ac6e0fa1","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.c8b49a.0.tgz","fileCount":13,"integrity":"sha512-UXbZRXRLDpT/oE3h0XYjQYJH6036iIwikMkkgBrvLqNaGoj09ZLWo7BsUeuJGyO30E3XCvLlttfnIPUWt+AiOw==","signatures":[{"sig":"MEYCIQCrxSWb+zbM9B7Y9oZIywSQOhxox/HuH5K7WDkQGexVWAIhAJdwzFVDYFSnrqM8wR4uslu0xCdiEJcZZQ3ywbPqrBti","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff7MtCRA9TVsSAnZWagAAgaAQAIpA8Syteg1gNlXErDly\nXxVakbVM92MJrBnfWEtuajez2cDk7Q0lb8uySLyLGVHw2LSBC5V49nokOM6P\nKdcmW3HJvr13Q9OCay6/Sx2YUKpOtcnqypCVF97UR7g6dNoSgHTPvJ0zBsG4\nXf24OO3Ww94rGbiu7Rlv64dgZFL0vHggqt0FzBSdBBaPpprAmQmqaGJz0xjo\nPm+9OFKMF7XB2IPyRtpUp7V1BxojcxFWQxKlyg7LledKhOoBQNqZwU30viBz\n1yatiVa0fIjdl1u2/3+0ES6vlIjdwohQzmX+eYLBuCJijEQEQ/FdBsFI4gHu\nUSqtUzTb+JJSdoplnzxHP8VhFV4gdu8qKlRfVOz4wsqlNvyHNQMAVXKgwc0L\nWtYDkeOqfa5PVg1Wr9qlHyPwEJc+X5G317vktB7FHh6uojSB0m1De2gjhWRV\n94ocQBvoVUVs3YAaY/896+H+yWDTt//GY6TnYGjbt+2Som6SN+axE6lGy2d8\nqU/ppBDe0RanMBeB9G/vaWGUXoTuKhXsswWiJEYJ7umr9h6h9SAlnirhSlcm\n0Julvh9F9LpAtj/8Ntf9bavzKyfbmfNBBiG/erQUAOMzQUywpI433t0CpQ7q\nhmfzrEsfkSwgiE+hAkahzr4JThKReewXLyS0CXkFFUCElow3h9C2TR3ujIo9\nZSE8\r\n=H17S\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"e33848f4caa1dfc80aafa1633436759acd1b3579","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.c8b49a.0_1602204461344_0.9274204867084122","host":"s3://npm-registry-packages"}},"2.0.2-alpha.59c588.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.59c588.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.59c588.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"f7192dfd66902143f922fede4f25372e08e52ac3","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.59c588.0.tgz","fileCount":13,"integrity":"sha512-qCtEweylUT55p+F2M7gnk7iNg4YYVHtZw5QpilrOtHTtTKSeEjA6ekAq0y6BAAymL1ZV29UlBmuBIhzGQiaI/g==","signatures":[{"sig":"MEYCIQD87qNgYC6GESN9N4gAd/TXSi5h5Ak0YU9k7DGly+zmaAIhAN98hgfrwzNcNLnBpfRin4467LTluGyK0P4ndUwEJfeR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff7ddCRA9TVsSAnZWagAARE8QAKFI5u/oYGUtstK6I882\nTyPg/aq9BPdqH+IuHclJZiMjtyKryoAv92zxc2Xmk9IWPNGmRiqc1IaLSOjn\n5+tm4KOJi2ZwezK9U7m84lvRqqYNJpC6txC0oLshmjpXPZx8PwdGIy2WSLXV\nqxuCVyYP8pFJQy/IoA3AjVeuHXrpwxJTmMRk/ejbljRJ96saQGTJRGIEzU+c\nGVQDS+P5cTaaEhKVsU1vUjCDHM7UsAArMKx/Yrq0BQnziTIVQrIi75hFRToq\nROdm3UFxzKDxHAfzBPyYHcm3K4dc/LEdOIIV5e25YqkxIcJRmMfQMGax4qGW\nFbahf6qF+ViA3l6BD1JXDzupns6tX2BhbGxJ/+v2xgImV3JfBNFyJiZ06He5\n9eZHOUWxh1HDvg8hW/bK0K7LBmjAj/i9j/Kul7VlDcJECt6leyQzfZ3mREav\nx3ZqFcibL6tgvID7A9EpV2KR/JeDeABjZXla95poArbZeB1xI+3aCXJTYMHs\noeX9P2wPl7XygnPC+dGG2wDLnjFE4i0WxtlLcV/VphJy89tn69uCMAiGfMUF\nN8v7VSXWRmqcbtMCt7E+2i9pF8qmIwpL5N9FlSdi2SOZbgfZz7lhhqD6qd9m\nBDJ4qfzUmTmn+6effstX9JQ7c84Sc19uW1drFIqmLHnICBnZmBMCNDtpF6HE\nkY/5\r\n=oQLv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"403518f2ce5255a45571421dc2f976dbda9d1f74","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.59c588.0_1602205532718_0.1896875933678297","host":"s3://npm-registry-packages"}},"2.0.2-alpha.8a8933.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.8a8933.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.8a8933.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"2df28ee843d5bf1be735538515b1c28b266e15d0","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.8a8933.0.tgz","fileCount":13,"integrity":"sha512-Rf5+4rBBpfAQ1AO3bhUfZ41XWCPgrcol1dDBeJf4bTjA+TWsGP27ruCbwryzT+2rtPpLJ9oZ6AXnyC9sWKU7Pg==","signatures":[{"sig":"MEUCIBEZITLrVHIOObCzmUSTPRxwHS1jAp44oHZLgtZLsiJWAiEAguYheF+M+54v+3rj/m1zmANh2ldpxKouivsvs5XbyeI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff7kzCRA9TVsSAnZWagAArgwP/3WxrJ/vsVsCAoocTjYv\nMgpD98qcfi27zuSqfAWfHdXek6Nzsn9GYCnsNToJLpc5Uz2RVpQx657YvROz\nP/zdOWaXjRw9a2vj6TIn7VUioMa5HssjnaeWZj8eGkjpDBIGzp5K7tvyxJVC\nTnfuXaemRaudJajwpEIkeHuiTGvHHGWF62UQ2JwggV01Rhj9YsdJqf0CTkNo\n/3SWAaT8w9VQsuAElZYBJLdFEGzO+jgEnrp4anWrU3qnn81Ez35BOD26pnCm\nGqe/Uac92gJ7IEihsfANteZsxvX0OyWLb1yNRGR2gnYuNdO+wGKcLdzxpXwZ\ncz32Q/DGmtFsjDXl7KTB6xpXruGxBqiX0BL8iN0Gx/8Hlbz4xsesP4BDXOhv\nTwHNCEgYqWnGgrfR8GMSknLuWCEDuMWMUzg68b0pdvUH42OYLjhrLAKu7Sa/\nsSgCaHeyORDuUwX4bx0pFdohOxNsrRfnO+RMHHzhfCh3OfjeTz8yFv8UEbM0\niVUHwoEgthS2R/cygDfNjXzQeUTlSdTunoJuAKOjJJ9UwfsJTMiD9ksnx0fp\niA1aumOzLI1Acvu3jchYzg8gG3TF/a+WB7e5awlp35hiLKqYAx5q02A2b97G\nbcqboHTa2aibcA+sJKslG5KbI9GGL4R4nr0HYcsbMmIjo8RHebU8Hnsnfziw\nYaG6\r\n=YzRp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"3a85b0828806863256ffd7422c8ffff2f1b28833","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.8a8933.0_1602206003120_0.5013374458332209","host":"s3://npm-registry-packages"}},"2.0.2-alpha.57949c.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.57949c.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.57949c.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"10f77b3fe9b460ceb8a851368ceabb4e34ba7f04","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.57949c.0.tgz","fileCount":13,"integrity":"sha512-XGeHyw+B/grPsCZmPmkM+H9nsWtMP6meiw17HQDnvwI+NVWJcSRALYDOBEqe1qzkpQGp3buaRPWbQAZcFaDt/Q==","signatures":[{"sig":"MEUCIQDcUacKomxcp0Is9WJlHyneR2QCHf2d0NfyKdi6atl0SQIgbSaGJr6UVbBVYXmLynkDmuIzf7sT9Oj6PX27v7jd2GM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff9HeCRA9TVsSAnZWagAAVxcP/jCG0wlaT4MnuzS8/I14\n+0on0vvsJAzkdiYNZFzrTPvoLnTaZTdXTxDpF/cPJMh0nr5A7nF8JjvjEWAp\nA85wj2wFQlkvE1LgbDLQamK9Q5/Wvi8uF2tv6BkpshZfh2/HpPbeQB4qH3Ec\n5gUblt/byBHlBs5hnjLAmIsJr1rS7pAXOvoLEbFFYRprit8k2VDLxLl7FXLq\nApQxcE4QqcsAIbst2A3Pkiqi2yILArg1GZTXK109ocTU4hXRD1fe04qzzf/8\n83N+UcfO+cXFxeFue8TVh4YX82zAls7LJY985zvtqZJMOS48Muck5AmsZx6Y\n8WX8wqx695RJ8ul/RoJalVgXGcOYzddgxjHbUnIyubPs+eZMVxnC1K6ZczCM\nV9/mdY0aTgQTHk0pMYTC8jbwp5WgZir44q7HbFxpwMUsFSkan+T2sqxkKIVa\nrIQNBWFw0n3aJVURTG7KUbVgExijiXN4AuhR0e+3SqdeAy1GrzawT4nx2m2o\nTEO8jnddCY1TEjPm8sGGTGbXb3xkkyKiyUBtV6oQ/O7llc4yFpa9AXq5SPmu\ng6KiXiWAIu9w5PczmAKg8dTU0wXLw9fRPWyTt6akyO6migBvphsgdV2Jqqp+\nKteK02nc12sU71KvpcnOohLNSkgTB0JObZnUb99F0wGBrOcefKd+AbnReMCB\nX6ZH\r\n=DSAy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"c1fd12eee1fef5b55aa774f2aa29c622f66ed5ff","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.57949c.0_1602212317627_0.7997415948999655","host":"s3://npm-registry-packages"}},"2.0.2-alpha.aa0849.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.aa0849.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.aa0849.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"081f7c0f7a5dd0f29f1026fa4c1b255a1589bd94","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.aa0849.0.tgz","fileCount":13,"integrity":"sha512-ojWymp53pzGM7ldsKTKQ31sJmM1tqecNd36MiWO8N4ccQvfX90/YwOU+d3e4COxJeqeElBwJRCyJvlq1S2uaaQ==","signatures":[{"sig":"MEUCIQDMT0L/2I8gS3JcdGhQ72rkZhGQ8Tg7eJ4c8IgO6D61uAIgDXBFk8IQfn+tJfaWFINkBr7fAt4ZMAtg9er/ZYh1Y/4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff9PcCRA9TVsSAnZWagAAtQUP/jMdX9lw2DJTS+POPWQW\nyecQth/V21YjgYZtSt4uVaAx8aHqmTpwC/YF9D7X3vLpOhrcn6nTIT8ky5/O\ncFBJ8/cko0g48QZdUBI9xGXdOL2gbZ56hHgfo5kJ5cmLEVpGfxSZRGtZWhGr\nKrbdDdv2dx91Xx0fPpD9DFBSUDoHvGWT2pHoUJhNtQy1Gb1SbEr/itrY5wez\nLjc4BSxWu350+VCrHSILojaAnQ0hoy9ZFp5iHVjYD2UlzN0ZZPEq+FhcUNR4\nKV8i9ZEv10IDT7lLjtnOvtdAmjWTJwJAGMy2jozJ7gPJQMf1VJHMIc+3ukk6\nGwNJ4jBj5E6OSJc1eZjPp9oyb74vn48Ft3HtZG8G8lRIIhzjFSkfmAHtSCZj\n1hAx6kRVpAmsb32LJ0cnP1XslGC/ypmbhpgRI48bCbjflVVSGLlIrO72qeWh\nnF2UU88HVDk4yVZ+9MBEMfJtq34YAiEkKbZYQ5clgZxAF6PHKk5+yB/yTgS/\n4PR78q0rqQc22hn4x13k4rjKf3tv+g4EICZNXD5AEpQaF+OkAa5yHMBUeal/\n6dmcd4X06shFJhgr+q2wKgmPzT1mXbur1rwgE6KPSe8ElyxqLEL6uqaspalA\nZyO2nc4ZReg3m+Eo66CWwishWF4LBheFtsr7EPruYrW5irjlddIJ+YreVBfm\nhoGH\r\n=mWK8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"d752bc77b7210b1dc556d700dbd7b2238971bd15","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.aa0849.0_1602212827623_0.5396863496197595","host":"s3://npm-registry-packages"}},"2.0.2-alpha.14bd6b.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.14bd6b.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.14bd6b.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"1f750ae55385ea3da65a564cc4c598a40550a52f","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.14bd6b.0.tgz","fileCount":13,"integrity":"sha512-rvw4XFYoDO8MRz+CeZhjmw2hgmzyu7xcTCjH88BxOiSXG97TDY6Zp6wbbuzEqBvDeokhYrnQUN/b3vqlGvnFJA==","signatures":[{"sig":"MEQCICnYW7YSeo9JzAsTRG8h/KgnXUZcsK9Ut1D5pD0zKcN0AiBR954ZDaY0FB7ZWZkbf/sliHhqUNJXrl0qsjN1zo3pZQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff9hVCRA9TVsSAnZWagAAo+oP/015GWx2clmiHISfwHOz\nXfyrBargQW/7/WlWbW6MNO5M9cmbLp0lIRwN8sxcz9Z/kHvw2keyDKpDzSDl\n6V+OJeujnNJaq5HSEmKNONr7vpHNN/codWo6TY8nQGr+/oDjMVl+HxeZqr/N\nebX0OY4w/4jbllQnwtoTHRMmNmmyjrxjlq65Yc8OfkmChEEk9JbL0p/NcIgq\notIywG6oyN/9GQkrx/si9pPKgt5RLSqJilalW9ZY6XoK/ItdIRRjbl1uZQh5\nGsU3800EIegEzdzJ314CzfHJaoonpKUun1dYrGXEKrYv2uj6d0o/M2z2lzaU\nrU4c3HVdWt/086JYqKApoA6Vf7mO/zUoi44oS7CDuIZQ1mnCKdKyq9btZfHJ\nAU6uoP5wgtgzMDFAT4hx+w4vgdJ55WEwZSTqDt8WJ6tNR23bEfPou3l0/OFW\nql4Il1wP5DnX3QorE6bK6pSwdV0mu1HOa+j5ne8ZKOjmsEY0taXBUHtO7gw8\nYdGizn1abDgFUmts6K0QJ7w4y7Ig2FcwfDIH0egM5Aez/Vy9bHOUCr6GrJGL\nOyetg5gQ1h84O74DNyOXG6C+IVOkmmP3kwzS5k9GJHPHIcXGU+4vdgFd+XFo\nk7qkhLh0HHK70igjOGTH+OjrEZHZT+Sd7v+Z+s/pTO4rCqNDzsnjkykmaVZ4\noFJl\r\n=aSe9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"e9ce75d34887deb019492bb195ee8f57ec5a8932","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.14bd6b.0_1602213972838_0.5478766983535499","host":"s3://npm-registry-packages"}},"2.0.2-alpha.b8149e.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.b8149e.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.b8149e.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"b7e9a4c90f341a07ad63a4274033631eeda4b994","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.b8149e.0.tgz","fileCount":13,"integrity":"sha512-4pQzkT3kp2Gqjji5rqXBaTXOK0B5gVHypybJa4ZjFYmDtENwYRxqZUPv4nAc2ThyLwnEs81EZX7wOarFdcKehA==","signatures":[{"sig":"MEQCIG3syxJUU2/oTyyl4cbl1rCqf0VGyM+1l7CYG6OWGe9wAiBnivnEnt7E3xfnc578mOGORM7TGcKohFOABTJzo0wFCA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff9ouCRA9TVsSAnZWagAAQCsP/ibvMxRtmACm92rcXLWM\nnKTkfmGXdk6z3Vfpeiqc1WAW5xKXZtuJQH2XM6VuqvQWx7CYf4ZSAiPuQvas\nyBOjtD+G4j8ZezejkrfR9SXBCeMF8BnbVLX9lTuHVxzTUvRpsR6BSh3FsAof\npjbSrznDRvrJ3ZrFGQ1HfpX4m6xMD5nKjcJqgACdHZH5n7faCzMWWWaB916G\npuld01IblRKLQeK2kZc/F4yINxm3tAeR6Bj0kIq/Zql2sxYY2X4DOovAJQ91\nHV+7X444VSEN1ix/ZIPP0Q37DYoakmYEiGcKHUV1v4iG6ECg7sBe8muES92q\nxQR35+/Q2QJjZZEifpUtN/F3jxh7YConkFxDcHeRSePoEIzTZzSS98cakz22\nC8xN76mOkpqmly9u0WA2esVddtRNIxN5iTipBesGYzwYv1qq83aPyXI8sKqb\ngchtRgGGsodCVMreJUbDOFSYiRepulJrMFSGlkxdM2XVNOTqZkr4STC8eJ9d\nE9gqTbf2+sc9ZOGCsN9ynJuAcVFj4klvPu7udGvzD3m15orT/XahjQuj8l+g\ndXBmyaaj01c7HJ6+bTdwUt0i3glIXm1vFvVek9bTVw9hd48SPEGjnXuZgJaI\nk2Uyss/GZkML09lbfhuifaP/jKPC9r0XfAFGxmBVcu6x2mScQlT6nuYt7/FR\nop53\r\n=SN6T\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"3aaa3bce0376a003b6d4c60c00be9e1448f0a0e4","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"1.19.4","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.b8149e.0_1602214446015_0.1890085233197456","host":"s3://npm-registry-packages"}},"2.0.2-alpha.339f72.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.339f72.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.339f72.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"0d9d908a39b0f6f8721b55422b8f77efe4e2399b","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.339f72.0.tgz","fileCount":13,"integrity":"sha512-0QoPZJ+K+2MZLuciZPKDS2LueqAfAn92zOwyJ9Z4WNLaqBV42ziyqJ6zvVU2rtngMIz7aVaep7VHbZSj5iEOrQ==","signatures":[{"sig":"MEUCIFAk8BcT/QjYuPZG8PKf/TqwwQRGg2/xp7o8vAB4HfJ8AiEAlfDfYSwkCiLMdQ4wkCtKYFQfRvkqvcsrWXR8KKnjyTA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27304,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgEZJCRA9TVsSAnZWagAA3J8P+QFQwLBdwVqsy+m8PRD4\nPcKozcsNlD7RSoMbIHXBU6DzSNI4hvkuAvNVWmLbYdsipGyIBr/F5RK5suZI\nkrdDQr+2eulQ960+h4/iRtArJPabuECWZpn2uFKWbghIEeKmIhMiYpmJHZNa\nX276dn6yb/k3AKmOLaeMA6HteGTWM4p6GA1acwRqS+F/MOnO/bZliWhEK235\nCMYVaXSM70icWzWu31Bb15RRGX/sQfnDHLh+++whKrHtDwDuiuQ+OtFNkvoO\n3DpwJnn0NC6cY4+IbKMyAq1/ijUwpPFcWHxAT1bzZEnql7MUuc8dfxzJWE4E\nSGehEoHoXj4qIf033i+TncPyulzyTv8bmRC3DqccE5xvG+l7dTskrfqtrRdT\n6jKfJAKhjYjUMIzYHuSUY4v8K5zyV2TE1nq6R+rvLutd4WiY/os4sM6eUOAG\nXpEClKok6vhwbjv2IALmmNILZ58mOVhL5CBZRlAEP13/Sfgb4eDWGGH+5MMT\nR7qlibIGdTbfgQQ/79RCOP8l2cOM/qCrtGcOVMoIglSMZiHShBN8SOyrrBZe\nqPZmj9cyCXU7nLOzzu8gL/T+687Tx69OCD6S2F6Urj8JJlTIeJ3+t71L2+BD\nLrvTRSLDByswBLRp5/TrJ5DB8rIFz6I12qJo10A00eETKytIj6NTi4hDX+Ul\nsQn9\r\n=Mof6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"4f05b2ad5389b88ca0dc66efd135b42a5423109c","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.339f72.0_1602242120870_0.34667958898395534","host":"s3://npm-registry-packages"}},"2.0.2-alpha.e22d85.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.e22d85.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.e22d85.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"2325234885688031cf4a5d30fffd47ef3d0a3c40","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.e22d85.0.tgz","fileCount":13,"integrity":"sha512-0vbSCs9FgZmxzNP+5MJjvW5azD1OWn4SUUBFq/wNHWVXJbS5gHuwBQEJewGcV7zCIrBUJ61PhKq2GCh8alJTcg==","signatures":[{"sig":"MEUCIQClMLVXq3Ms6y6ijYue/q11jWKNGFq5urtFbwWDlfuIMgIgJDeK8v1QfuttS72k0Xjq4WELm9As06HSZu9LYa19l+w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgEgYCRA9TVsSAnZWagAAtBIP/0AP5szKatEMLB2eXa9r\n27OYHJ916QLqdauvG+TNqqM1du5JcK/7gQV7p8w9sZdBereeo6Vm56vAN1zZ\nuJvehxf0dACDy5A9zHQrWjML7Pj6xHDTB9wlAfifbAaP5s8yWS1cHmAl8DOz\nv+6fKNcVjKGXAxq9a10Wyh/e2zRmq1V9KqhAr8ncAH+majTvrR2XZnDcqnPJ\nMYqy/c0a3QSbZZr1G5dDZgiX+Mtn7bKdnMHyDeLIGP61p7CCFW7KWWqqfppu\nuCwLFpnU7qcU1/N1VSNDAgk+C5LMDT8CHyWI1vHkxyb4CUruXta5XI54wz2K\nZp2V+SR1SCNKHySuY4nFXHUBQM3i7fHIefPYPD8W2Pns9M6eONG7m0Tz3LhG\nnRPUufM2UAIWbTb8YKUypOIrZn5gQY/W3ha2FmT2kSCd6wtI3Ke2DbrPiW2I\nR44jNZunVkReTAEGB5AHCiwKhfbQOqsAY8OfZ+tSS1fEoUsxXuj6qfpYDyRO\nv2Bh8ss6P1eE3/YyO7sS7RzYaYmhoIsxzAD4ldFFrxFFS77qU4hRoqDZ00bE\n560M3dr7YOaEFEKd48UuJ1UgI5+6neh5kO4lmqO9uSK5RzDiBgpn+Rl5iouF\nROao+ukYmv6sop+/7cOc0j+57S/FQmgS5evf4LIMHxJ4BrBeTwqOlYVmqiV9\n8j/V\r\n=yMkC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"ffd5fa2e2dd9aa3daef90610113d8d4d6efd26ca","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.e22d85.0_1602242584261_0.09573067113668698","host":"s3://npm-registry-packages"}},"2.0.2-alpha.271f19.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.271f19.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.271f19.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"b7642ea971262c7f71732d50a5e75a7751e56c9a","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.271f19.0.tgz","fileCount":13,"integrity":"sha512-ARdEChYIYJtBQrAThvmoPAm0Kr+0o/a+/ugLo3S2nhQa+FbokUc9KGJu/YWWEKRVbaWbWsjwJYPj4VEBnvQBLA==","signatures":[{"sig":"MEUCIHXwazS5vMi0rdiW44hskre++V17mFxjLVdu0V2pUyrHAiEAm0l+IgP0QAkocgw2bUDI8TGLBD3UzVHz8KOL+777Zzs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgOYoCRA9TVsSAnZWagAAj5gP/j72Xh/qSHamusFXaxsK\npt8MM5kpZEDcZULFa9UoDPN+4fHZL0vCwwuvwezwQ7Tf7NFLbyCVAig306Ne\nMnTnXff36VEtu9xz+s6QTDbTaHlj0eV9BO2ME05ZECEoE0EEz8eeN8ynXcIS\n8Ddztc+GzXS/9XAao/IULRgCYXAiGXfCogP6+ELaVjWTpBYF9pRXH8JzwjsS\nnSOMun7LWhoTzh8aLsa0I/A8c6fYs5Ty0WxVToV68F/dgUki1p97AGZ/XJgC\nJAmUGxOXC0o0jhdQslSMQfxuTFF0sIb+6HJgqIkhlfL86TUMIOgoA7FdbSbU\n5bVLogJpWRnTWLAyHd2lSvHAB7Qri4aS7RM0iKqN3zKP7j0L1FDaKtEXQfxF\nsDJ8jUzGToeN+Tu6ydTCjlVOBRLhZf0yj2sf4PTntKJeUYwTvPc3MRrC9U/e\nFghRQjm9cGrhwg4H4bsHBDTKCxTEYAX87TNgUYkG5+HsCIx/fByDj6ohCWBq\nrQ/rdLI4artQjX6zkxMTNn7OKZpznpecXgAYY9WUojuEfGIxExnFzsztbSF+\nTkA+KUD8WFlpsLvkavpHPUAzHhLIgtF5p5n+zshQNpieuEFAfyFmJU3GmMB2\n2Z4/dgV3JcmvKFbdaPClWgGfw3I9sTvAjGHSTG8hQPpUn8I24bQIBRAkexb1\nuaev\r\n=kOR4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"a53c9f3aeee32fec2c6d34ff514026bbe2ebc3d0","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.271f19.0_1602283047667_0.010098669000991656","host":"s3://npm-registry-packages"}},"2.0.2-alpha.9f6022.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.9f6022.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.9f6022.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"b60bc7174b3caeb651a47f758045533e0624e708","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.9f6022.0.tgz","fileCount":13,"integrity":"sha512-2w8ENEkufSJEdr55KaSDXqN6Hyk6YQJWlPDtfDnS0ApuMoj7ViR27BPXK9kJmLWwO+ssnqD9tlVFhjS0Xd+MJQ==","signatures":[{"sig":"MEYCIQDZIN0h9w7zCwRIOrPLOc34U3tjUycyuUB4G5OyRhvXjQIhAKqrLwrM6zUYwofLHpw3b7BlGPN2IlQq78PE4SIbsWCk","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgOixCRA9TVsSAnZWagAAoN4P/jM8yB8Kr6GumviDBPi2\nNVfnzEw+Ss+/0iNAdsAotJihbpRRpO8TeWeNW/amKMvFwtZ2vuz+VA967e2J\nP2Zi4v/2cTaa6VFmysETmoXZ+KoaU/BThWLnqwVQ0fLUHyz5myHbcu0jS/Bx\nKVI3WjG4xhfqgI9lAN3z0XgtFY1CSwvl1wxkWapwAuCl9xXNfXb/qMdVpn4g\nIl/zy8X1KCXK68DO3jnw/VR2oBfgATLTMAavlpKOUWAkXBw+v7s01t5875qf\n2GNBZox/0h27mdwC54N+GDNv6i1ZjrWR+GAHyuddHVRsEn9OYssmrhlrBkSy\nAB1dZK2J5ySTbK/rwjzx1S/6T+isY6mT8gzhcintX6Epo8S5GktFN7Pv5Wo5\n/YP4nnOfW2KYI0DpuDebathouPbGXCoVR2uWU6zjQR/xqTjrE0AS2e6qgkA4\nc+5xtVxB7O8kZk8Ik7m4pOmcR/iquDNhQQo4E8hyPIstI+z9G8FEJyCHL5d1\ngezuJb+2uAJhWWJZQ8qw0cPEuJUeimnnNyc5zBbnsEFaAWJ3itJIBnCEfv1U\nqatbskvZqr7Agqwm9Jrc2Fe+PVOB61SSeR0Pz+faMoYrHqUg18eASN4mre3y\nPeSgMLijG62IENRcSlwZsobDYWEKKqdUG0KLfs6Tlp2HNQOGm+5Z+d3TsoRg\nYsM2\r\n=L8Gy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"debcf3ff3f606efc34c726870a5eb11830d8b36b","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.9f6022.0_1602283696686_0.4668751499917483","host":"s3://npm-registry-packages"}},"2.0.2-alpha.17727e.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.17727e.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.17727e.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"e2f20bb980d573416daca97efb5dfb6e9ad3bf4d","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.17727e.0.tgz","fileCount":13,"integrity":"sha512-72MUoYXKg0d9kqu3pCMOWO7LJHm027v2gBkC1eZivaSfFohE3bFMjhDkucXjGmXIOr+Te5xj1ndGXsPlN2JjKQ==","signatures":[{"sig":"MEQCIAQgREX8gArwBdUBb66WQv00DCVnzkTjBy5GRpr1x6e/AiATtTRHCAfWJH68oQMIMpCRxSFzJbicCc3lVL2bugZ8kw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgPVvCRA9TVsSAnZWagAAqnUP/jStmDrARtTVlxkFs1zG\ntEiSxL0R25/1vFFbGeoj4q93oDwqiPC5KZC99spaYEkZDlyNMnax7EN4mH5i\nMtDnz2rHvtCGcrclZnLo2TKvlp2ExYrpZjFQWD83JftwJM7UqSIZEB/hsjQ8\nyAKLHfeCrLbQ4mHO7AcseTXhX0j3Vr1SmNJ0eh0EA0nQqiT3T+i0fRdH2oNx\nhAlRaHf+wRYc22putlfjJqrBnLOzGqVOp9yLFMi5zPB7gTBFNcb0p6gHShTl\nrV6APaoxyV1CtsvN+c7wwS9Ve29qP+bUuPcLIN1e9VzL4eghyTOlNA49RRuw\nfItfzTEvYGapIWPrAnojfet6eJ3WV/LbNi0UZqSqrY9jvhyX/FP5ckZqAc4Y\nuAyvJTj7wgvyld/zCjqFWDp+WOq/NWf6d3GFPTrEx6zfKJBWg6EkCy0fSqdF\n3oylJQJpXoHgWKUOin9HugPrRpYsfs7tuES5fzAXbcwTWsoGXTf3dsyhIGpE\nMoRPyNfZHuys00mz1iyzfjhCxjkt/5T//8XqjxVmqB3UCUrz775SwmEU6IiY\nKJQdCT3FElpdqP2ZDn68PtZJczJcNrwEUlPy5llhWuxAapl4Bop/xafcn/u2\n1IQsu0sqbGxb+51DDLIT6PQcRzvGa0Um2qu4MV7AfEdM+taYOBf0DdfRJkwp\nVVBS\r\n=V+oA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"4ff0795b77381a2a3e790d530330f67b9a23e3d0","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.17727e.0_1602286959135_0.5044146301127812","host":"s3://npm-registry-packages"}},"2.0.2-alpha.30fc29.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.30fc29.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.30fc29.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"3db05b7b9bc64f62923ff11dc00d79f6d349cf75","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.30fc29.0.tgz","fileCount":13,"integrity":"sha512-SIqJcq2fJhxBznLBfYqO66cHV+DYPKAhF0RWBIJ0F2t1Il4WTh6LXZLurLhc5LRTeBopF7qBaz/r12rfA0SxPA==","signatures":[{"sig":"MEUCIQC+3vr8hbe49i/8vaDKsLkDStiJqzWRo10HD3TC8yGSBQIgTwCwOUJOZouAOk59eH73yFEI4804r1tZnidyQOP76IU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgPapCRA9TVsSAnZWagAA84AP/3i2VRsgBsdATBdTomr4\nBV1QlY2P7GbnprEH9IRalaopWdbd5WJRgzaiSu6B73/tQdYYY8dtUC++nV0M\nAl1HvICo3iDCXtC1vatIJeG29nUGjv4L4zzzXtm7sqfvauejVWOZA1Mt6l17\npmv5j7dCCqp8x6NOZc+YxYErXGjZPm5tV09W6sUl9WBvS1LZscnfdA99gpNa\nB+cTUeTBmaZZr5BgldpvngDgaLDZ4vIv4/+BdmHBxPPMWpl+AQlYj91Oz/uZ\nE1+9QjqXHvHYiO3N9RnD6+MiT89Et5fT3SRyb3btCYdZe4wAtE2b80u5o6Ty\nKeFXRSSUvHdVhNUlLQW+UBRTlJ2D+UaCQ7wpZY2SJLkXg0E2ld6PyWQXqeVc\n/9HdrICaKJu07QR4c2Q3IqhuNtL9VMVYhmqKn0oFT1eTyu9s3pLxAuTyBfw2\ny4MUA2rXHbP+mdFrkEISncFXoeQ+IFGed3fKnSgCgsvmDtlutFCTuvDd5OkX\n+BJ0fU5UIi1ty+PIDVlL3dWPyyvz/W5qAKqomHtgfKRmrI2fbjoYyynX9ugu\nOvU4N+oHePz+1CgGcO4g6LgDh1ZmQbafQZJEMq5FCnJElHO66/Znc69ew2uh\nqsLGQI1S9Z3EM/uZ/JBBAwe/QHB+MqcfLeZ6X4+xOvqcobGrrJjKdtcbjbW7\nW8Ab\r\n=LYo5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"2c6f589fc420041246658b537ab10b0419ef2929","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.30fc29.0_1602287272964_0.3744300954770925","host":"s3://npm-registry-packages"}},"2.0.2-alpha.46c426.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.46c426.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.46c426.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"6edcae48aef7ba14139bd35c3cb1f528309faaf9","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.46c426.0.tgz","fileCount":13,"integrity":"sha512-Ppt8Nkn65zUXm0fwA0AsOCtO9MsBTTRl+gq9LgLuBPBNsVFZJ9LaRDvsZXwqMz/JRWFPzPezhUqlOgt7615/GQ==","signatures":[{"sig":"MEQCIHLJUb8gyKY7sSv24v5+Yph5PRcJnywCeG5POJcS3pWOAiAawUsHEyIf+mdANvkQIRmjzpjE38NrZn5WUiArFZj+Kg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgPbHCRA9TVsSAnZWagAAxrwQAJqL/Mv2Lu21Xfmo8Wjh\n+2gBJZArDBFPmWQhh52srlfotR+4cwW0z7EQYcHfljR5CzWPN9aianR22lDQ\nuN2+s/aR2+QJUwqXgAEC6EqAoyZG8JZCynuNckGwmO+/r9fkrSlER7uDwwSr\nBUJaY5F2X9Vl6OLPpMQTxm53PaLicLc7iWw1b5Cqw8Z6w1dJOZbulVzbRrH7\nfFrA0dH9WQFVxINfe13IXrB0234TtD0kfN5C2gvTdq9M/vFWS6QaeO557/st\nHDBGWPT4r+Vz23hllZqfnAY+FkAllIQjpTYhXkwI/t7iluZvZHCXBt80ISrw\nJW+4JaQ9vK5+Sn5hJ0DxOsy/lzIW2jZVlY5e7NsmSXIOMTvifklXoSyhRBin\nRQeqiZxqwCiw11xV7A6C9wiP9VlRT6GwEteJURZQ7XChZoijLvkAsls+pHcZ\nA8stdpl2o/NUAlZUezJc4Nz8+hmpX570ZG5/C9CmHv3TjcBrBl8SdEJAPZlO\noFeC8s37241vGaL0CQsho2qWZlpEDHrHHvMsl2MpQYGJWGJC5tku1zEyhfy4\nlIWAD5AcRaH/1rGT3ijCmUlSqGfZZ3Xt1zC+hlA4586DIcxUl7o0sGQgUM6Y\nCaz+Snbyz9FSjR0E7AhiDso5UYQ7WuBMGvOhCDZzOSyzTZh1dNlbzggn3SEr\nJ3pA\r\n=2E2Q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"2e6345e62a2e0b85bd7199261445681ba8857808","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.46c426.0_1602287303515_0.36961611534581285","host":"s3://npm-registry-packages"}},"2.0.2-alpha.bdbec1.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.bdbec1.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.bdbec1.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"4b0358c803b80aef711ab6a1e28357e73a07c15e","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.bdbec1.0.tgz","fileCount":13,"integrity":"sha512-zuuRitLlDocZJ3AgrUbMXnrvoBlXNhUXntKU9dkVOGKa86JallnqGlSd5E9NvZ65oo/vOeMax/+WlL0/CIiVuQ==","signatures":[{"sig":"MEQCIDD5k4p7g7nhI10gg2KOHSPtAFXhUVJJrnng8+//mP9yAiBqcBU990MCW+TL9fFCr2gEHhuNuHmG1vfwZT7pBXuk9A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgPcCCRA9TVsSAnZWagAAUIYP+wZq2JiaK+DcI8jsbAdG\nSasrbBDCXmCud6Iqztqx+Xg43bY0/TXFQWyAFZz3wSh6N89mptirCJIZYks1\n3kxHh++0rpoglpHi+uqm4VffmqHG+yttooabCQl7TF4F/RH6dFjkPT+OnlWz\n4+MErNZ2uCwcmPCNAiOrAU1rjtPyUloBIjLS5Orvr8Hj2xWApclnXGbOekZN\n/BaQ9pw3NBLncXowNtH90XNDXI9R3YBINlwT87rLXPwcS79qIfvp3iEdxJ6j\nabL7DGhZaAISTi1GBNlW+Zsk9dMPJFzqh8rtVSEJeBeO3yCRmXRx9rFKzhry\nX3dpBfFU1mA4p36Sq+Gzf74GDv5njTX2lIdgi46sSuSahqxRQKwFDDUxCJG7\nmVjElO9A8qHCtidJzOHlr3TQbXBitkk3psGhpL9OMcex6ouDO7sak7gyclQ4\nbQ8vMXnSb6J6SXHqQ7T3kFj+mZ4EwGr4UtqAn2lvoUqjjypbdyUXoSPF+l32\nNrL27eWvVVCtn//gQm85pQ2fQTWUfDbBuhdpLq4pD+ZK0rFllP3YhLW1wmyL\nB2PfHLDLxqc7nmjWNoOKLZCqLNT818Xex7UPvGu4e7jtUwVlAJ2K3HM9MryG\nIrLkdK7CdEqrV+Stpc2AvDlk+8BgMFA/JMIiXDSEOSfCqIwX8UEmOUce3ykt\nfHFZ\r\n=gvis\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"2a9a0c0596d5a94b3e6290fcd02763202adcb4e5","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.bdbec1.0_1602287361864_0.17455552415257114","host":"s3://npm-registry-packages"}},"2.0.2-alpha.70f229.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.70f229.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.70f229.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"7ad18348258313c37ab2536d70dd69a3ddd1c193","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.70f229.0.tgz","fileCount":13,"integrity":"sha512-jl9NhSLyJiVRdbwVSTHP8EvfyGJKmC3Mt+mNJxe9NeAJyvRiN1HhDaZauZM0o3zvztZ1+G5FAfCyCUZwcYekQw==","signatures":[{"sig":"MEUCIQCxSMBscGawIrJNV3NfjpwOXhms+BlPdGThXEx6nEI2ZAIgVd2cJTiu6kDhZ+p4Pmy1o5MkdRhPFKyJU63ZGw8lw9I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgPdyCRA9TVsSAnZWagAAXk0QAIQMllEpB6Zq4BtaSd2Z\nVlLXQ0Fwnpo30QfddNlLOnMZXb+nUf3GwgYPsxyfLqYwVlk6FZxEZ34ubi9w\nvzuYG++0Zv7g8X3HnIxcfNzMUzqPTniootfIDXrLY/dd7V8zCD7l248gF/eT\nJLg7WwnlFWVgR44Iv6kVLm3WMgzVskyC8xH3IcxtcfJpnXTFCifM433DeMyG\nLspFZ39KMgXQwJeM/aBbXbGcYwMry/gykk5ChgDNQsIs2zXsBtvSxxuOJ51E\nKhPvPs0I4A6XorEZ/xTdrpDtflvjcWWytVYtovfcy2kdjhf764hnpGYq2Al4\nIQdKhqE5cLHoLW6X3ubTzyOpTbBTgiQykbo09yhVFXzUGHP3Oid2bP25MNJj\nbTj7Qc9elqdoxHa+FkVgDhejNmH3uksJ9SElyWx3t1u+oeD3cNPJzeAGGFZJ\n6jNFhMgBPis4rdvkjGqotnfq43T7pi/xaT77NMO6qgChkZvoQ5lxZshj8RHc\neSl346ek0c4Vl14/CSZ38H2m3Ohojp3GIrc8RiC6Wdm7VOATSlPuBj4vkkxl\nqm/lU1yqkPQQaDXD0yfgdS9bedJNevpMrUruBrLaFrpfe5oz1apSlrk2akgx\nAqoA1+MQDUjiKHklpmnHeVRg9pq9Jwn0p82F8PzTAWukFI6fcwl2yy2BzHuQ\npyj+\r\n=bt9I\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"c6447b545012cb64370f1b4a256702fbf63d0ecb","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.70f229.0_1602287474518_0.5117951841699566","host":"s3://npm-registry-packages"}},"2.0.2-alpha.0fb592.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.0fb592.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.0fb592.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"f86ceabe0094947ad8ce385580a6be5f7960fcac","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.0fb592.0.tgz","fileCount":13,"integrity":"sha512-JKiIpgVZPhUiQx8kWzbo71+E/NvuTRl9ObRDGUoHTd0S5653aBcxv8CpAVkvGUEA4bvlR5JdNHZ2oYXwwDDCPQ==","signatures":[{"sig":"MEYCIQC0A6LLsWevPY8EeZv2eSVDNqDjzxggoEtwPclRuXGPcAIhAKW+SmtndL54+ebJpJAtdRj/Dim9A/+agYQkVQq3T/Hf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgPhECRA9TVsSAnZWagAAE0sP/jWnDuf5CcHJU6FA0Ufe\n4RslooUIhRDTff2OBTq0lsjAkUhiSKWbM1Z2Rf0eqfPxhARfL2x50ekonOU9\nU2TK8/7UQjPxI8XdUXjZNecBarR/wjp8U2K6LTmJAqHWZgOnTdMxSIcB8kec\nu21CSFAi4DQ1q6GqN0wdAXSZ/L0sg7YB8EYF3tiXzCaqqxpXwl7k9qXvzOoJ\nhRBhrhOoEZdNKAArMTspLTcnvAbu2ZChTtcKxVEYkDpIh6JOlonfPPM+A7gJ\ncQbXwdxXIuweJHUqfhdGvVxRRDZRSzZxJbg5oQdw/r1fXzxra1IOPwWgBlbn\n5VXXVEWgSPZ7FvXs3IwLO3/pl7JhOsWO0Gq505Wu9vdMZzcr5K4vgQ87agpr\nqxJznuB7AOR82tRJxz7ab3fqv9kIGid6qWbG0KFuC5uSernFOPHVDLNV6JaR\n9AyrkUmk4TzmnXDA9snHMvUF2cbV1yr001LcOt6tWR0faNZNabue68nhLvOR\ncUm/5WSFCiv4po+0P5glz0Vo3Ekac5w734jE/Khm6JdhOL9tn+19UUqeXffO\nfIVcoTwLsFt7hbtTN45NQjv5vY6+d76JkJgXQsLijMUVHN85kos/pnnOJJgF\ne7XvrO/QbuSJImyzYJ06G3yQ0abEmU9evVcpinj+0lIc94hOmMwXwBjHFWDH\nJYYT\r\n=daZ0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"79fb289f58a2bced8dfb353258483e503f5d1e93","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.0fb592.0_1602287684094_0.08707343429584946","host":"s3://npm-registry-packages"}},"2.0.2-alpha.5570d6.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.5570d6.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.5570d6.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"d7a4db09a25ded9d67c6e72131d73f09f724603d","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.5570d6.0.tgz","fileCount":13,"integrity":"sha512-wT8Bk33XRi6DYFATa7Frm8gngEhbSxnHGfpp/y2UWKVr5e3Jo78jsr37s6kO4jG3hLCXNlDVkZ0jX7Hhv4hvYA==","signatures":[{"sig":"MEQCIHu2tEPfTIn+DwtWobHQik0tWCwgxaMVDck8illNCW71AiBL4xcJQLQ4S+2Fu4cDScmBCB/krKHRmbJ4ueW2BXBq9g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgPhZCRA9TVsSAnZWagAAOCkP/iG27LyWkPxq9iy+Kqat\nh7Cl4hpBgIkA7Y84TWHMIa4QH/hHSG+aH3QL7kb+EQNi3vwOuJuNC6+KZL1H\nDovjH161YV3L5VdOChMPSn03QNdocUbeMhYnFr2WQn0jLADvBifrn0+U5ACH\nNb+beVSjqLwgpC98NEY7gxJz8ZYWeDulST5Ta8bk1byxNstnwqFHusi3cFvA\nzgss++PDGgAzcQgxLSIKXHaWAkjA8HTeupLCyKPX/l4VqTghECNcQQ5QETwq\nJ3lIeO0LkGG9ObxVALs+4rh84aWAB/iCBs5vXpGMTsED1J7zOCwXI2MJiVKw\nZS5NkDgS1PcbQSPe938IHBmV+hcl8wqyvaCUk4sbhj3oCgFWLFvwbvfd2CCI\ntQki7iVnfaP1hYQj17xOvl4wkDypuqjLHjuqk1KEzy2DHVtlcfiy8ROcrdvH\nojH1l3KbMFOxl/Zr3oVVJsRKgS5yLLieSFWqx7qyK5MBl5O+TeB/RMZDRbmf\nY0Oq2696H3NQ/VzclZ9HJLCwghmMt944PTYhqsn2+oEoLDe4gfrilFax/mlS\njERSbGm6JeUeACMsofybrxpZpW5LQrW6JOlx78hInbEWR1pg6KoKbz6KDqxK\nufj8A2sijwya22vHnLPJiqzetcOaefF8zCrhPfApKd+9Ba58GLV9kG6ijg5f\n9r11\r\n=e2jL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"1a1b3cb78c878783f1082f9c8958406ca7c4d599","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.5570d6.0_1602287704926_0.4586317536385083","host":"s3://npm-registry-packages"}},"2.0.2-alpha.5a8136.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.5a8136.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.5a8136.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"45d6683a1004bdd1b91b881810db49a23be2b883","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.5a8136.0.tgz","fileCount":13,"integrity":"sha512-K/NpeHy2palfGKvDbsgvg0gGaKujXDLnfZJnco7h8ZpDqJBolDdB3WE8m19/tHyLOW6JpZeE0ActXsJ8CWtomw==","signatures":[{"sig":"MEYCIQDcEIhjTHMw511RtpHtRwKItnw+GBiPWdm9zNtPv++sXwIhAP8B11pdZJ05bzGkYilvF6tgNx7MmZH+k/00mqFyPGYp","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgPibCRA9TVsSAnZWagAAFdwQAJmYQCtr2aaWXb7rE9Ag\nmkrFkT1UMIiRFTtXWSSsOM0XDS8XEVvlOtlmerJwGOUiNk3H+OWgYsK6SyhB\ndHvEWbw8e065+uF8SFH7Zw43E8+FP9cF00jJQ4R9QXshgrJY3BMhX3H1KpSx\nmq5dB3DoFKqbw+h3CmrMvB65h4qe9aDdT53f+lWHQSy5i1N1oQpvhp7dp+Ei\n0v79jX8DErIq6nSc4m6GN1p5a/anQjMczZmndTaiZpV12I0dEe99HoCFZH4R\nUr+FjkMhVcIE/40RvIGDT7WbgoXo0b5hlzKc7NBl9gkh8jl/9RXaqzODsjc0\nO8kqQRDep2EqTxBwGmxpJufmZJJ/qtEkPmk75sSQouhe29MO9pv/i35CeJJA\nqrgOvcQIO/DsHLCUEIUV1z9Zfc8loZnPTLoXolrbYuc7qdSP3LOn/s3vPfe+\n/ZdNiRk+45sKex4TIxBpcelyf/VTO7LSTEi55oV5k5poqnjnr3drLPR9BlPA\nnCtYyTOXQH5EVb14kXX/kgAypJj4bfDhEN8Vy2Zr4dkSokUqN0w2C8SCfkDw\nSAkiFTcpc03gVv2p7/3hXCO6CGTm8oqn7Nk0rkES/wo5xLuzW8+bVicS+MfK\nZyjYUa56iSRYaa0/NI+CLulGdUFdo6VfwAWanDQvhkl1cgUndvb4IQA0jnyj\nDCop\r\n=GUPt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"5ff721b9d36b1e95f949b7ca3a370ca1e71db68e","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.5a8136.0_1602287770920_0.06861738851822263","host":"s3://npm-registry-packages"}},"2.0.2-alpha.f85409.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.f85409.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.f85409.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"56ead82187786a6d7a3f0cbab06086131de9e875","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.f85409.0.tgz","fileCount":13,"integrity":"sha512-W+Gm/HZG9J5VZworcXuYFZnWFh+TOV6I3tlRm7Kqb1U6xDs3oQNFurlmhWqkLcWDM0p0vnbuAfYqnu3T3UZrew==","signatures":[{"sig":"MEQCIHuM9YEDVTNsj93s5ivFTcx0jSLK8Lf2gt4tg2jF4NsbAiAsCVq931HZXn812c1bY26D3qCK1tgJROkR5eI44X6yCA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgPjwCRA9TVsSAnZWagAAJIYP/2bkwNQCJKJpr9YIt/9T\nogxne/20kGQLkAm/yb0w7J1e2euhbWRx3rEnj56A/VTr70qldALsFa+x2It3\n3ydTv0p4/iwzYCPV8XV6KZQZ5iRJkEQiyB+CtzgY751lJFuo8Ak3qoJAlQ9a\nSZZ4HaWHRkklXxaxwsjKFXC0TmZg34IOCe8xDQyZ+22hSrc/sl+aWBhJJ5AB\nmcNJK0VXV3VVZCVe8wjFE5YDD70i5j8ysJ1NSJIGlANudr94Xkb/fQGbJaSB\nez48z2VFF+ivUgV4P+sD6kIlQpG4szosRJHcKc67N8niV79NvBv7KJz/kMcV\nJggX0oAM1+tgJYh08fIUkyDHJ+BBySQrJgXaXl6SpYgGXY9id0AQAlxyCdwX\ndAO3skV/a/A62uiGLva7BoHavvqLok3jEgF+MXJ/FVQb8xR5KignL/o4G/tK\nzg2aSWvN3t61C04XyUqH6Yj40y3AXFDY7JlDF1YysK0nZBpwW37vJBGFAZd1\n54FQ7h8p5v1mBQaVE9VJ21oLn6O0aLXa3NDipQuW8QaZOD9dGP8ds4Q/9zp6\nYb1cJN5qPTnrZ9ex3XYZ1lHOuAYRuzSP4q6ajmA5NzB6DgKouKWG7GZCKLsv\nSGx9PJUCXq7eptXqeU68FkXCx/hAbxEdaTmT6HPghrzPty9UL2tPtUd4mZ2j\nlVNc\r\n=kAm+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"76755a2f09234c20e33dd30be9f49f795b66de56","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.f85409.0_1602287855594_0.5845330493048939","host":"s3://npm-registry-packages"}},"2.0.2-alpha.716d3c.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.716d3c.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.716d3c.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"256546886bc58fb6f7af84cf199ae0930c628d93","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.716d3c.0.tgz","fileCount":13,"integrity":"sha512-WgMMiFh8t9Ux8RAUVsrcJ6Tc035u70aliBrKSf3s0Xv+XzfX1GpXdIQ554S1CbqWLjKnyQtlWHmGmqQMgAvJkw==","signatures":[{"sig":"MEYCIQCMFtwKDT6CxdCKXAPntNJuon7vu0QTd1L78ooUyNpNpgIhAPH42P5qdgybhM8JcB2jfQsziCcZ4Yb8JaJkcfenHRC2","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgPknCRA9TVsSAnZWagAAzzoP/0WDbDzwIXsWhjyczfdA\njqc3uNVSJzBz+Obi50Z9DehZfU2PiP49BZVfWEBSak3DIuQ0GoTm9n5jNzLZ\nSb79WFzg6FWC8bylf7gNzCGMs+IWGLemUKsHMR7O92XNEokB7ZyBGoDFp55L\nddXcGEdlYo1nNOlkPisRyr6tnPe6BK206QDhc+eFe8f1VrFQwre6oWDzO+VG\nhafhsU6W/eSJcMNTVhgu73zLboyfrSJBjve7XsPqKHFmfG7tY7E+Aks210j/\nlnPKaNZXiAnbSu0TsosGg1yq9OEUHPriP2nOajWvaSVkK8WhjABWFrhemYWw\nc1cnus0a4oVZRjEsi7o8VnFhuYrTbETA7pWdMzGZB3N3UM9A275R3mCM7MrA\n8cVGjWcBOF2TcIrCpjnpD3W66a3DY1tkVGRtXeTG42kN314y4iftRNZIpg4p\ny674k+teNYgWC74CSXwsbyoDhOUtqmqbxuk/fZTB9mnoOQhpM8R/YxDB243B\nNmAIPUkP+XSDt8YL3NUFenO2TihaJTrJo0awSxBOJxZk8NEvda9zRi8o/drS\nmC3dSlS2+zYHskN5b7Cc2d42ZAsYlMktYMzn48m7r/fev+rBPQwPoMTUnICO\n72pRYSvhsOgjb/uHcaNeWZXSqd6uli7E2dotNhGyWs2BgIAaCGkbv2D2Axmk\nPuV+\r\n=P0Ii\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"c2d7830b251fa1a431b1f989dc643c697b4079b9","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.716d3c.0_1602287911379_0.6051589281610861","host":"s3://npm-registry-packages"}},"2.0.2-alpha.002fcf.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.002fcf.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.002fcf.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"8f771db2455a9370c83237a712dbfc514067600e","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.002fcf.0.tgz","fileCount":13,"integrity":"sha512-x+q+HG60h5cnFLIRRWCUQo7BLMK7nuIfdJBk8qK/s3q2xPWrwepoLGhWHlqg6KHETXulZcsDMU8N0DmQIS3LAQ==","signatures":[{"sig":"MEQCICK7ANbEPYlxniKvhYPOMo79B44APQBSKuMgR3bp8oSKAiAVr05fNRKzz47dXkiRs2QxU+JKqpQkxhMWuJ9S1iJAKA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgPlJCRA9TVsSAnZWagAA35MP/0YVIdP4YV3667pkdvC1\nlVShnkA05LVN/8lg74OnoiOqqPJifsJvrRKmYXtBfAtIol2nSwaqOHxeIN5W\nh3znRYNodepf1KC5Cnets9e+boBzEDWv+XfD0ffdOmLO54TTBMki6fTTqt1U\nCEIXlj6jdEQVyKqZ1owDgibl7Az7crUOr37eUp3uKG3nLrTRrQIZWkTM3QN1\n0LA56JSlsSn6a6IMhYAryH7BbDsSxuYDIIyMaElQv6haksiBk7iGCNAz8zzq\npFEkAX6ZjJl8RsYL/4jG3/Dc9AhEa5PenB/47tTot6kKf+tBeDmZV+F0lsuU\neUQMAQ8BUjIWzc6f3PFpQMgoPSxuTDnWdzElqJaiFHcnP+5tGp5pk07p/soX\nHEiY4gLJPBMzNeyFOBeVL+UsxiTvT4LlVtP+DF26hH13etKZT0UZ6vmh2AhF\nmyV8A+lo7IvYDXzEAppmeMn+e6UjAOzzmEyj5MzxPACgSsuI/YpZm2rwfZXx\nokobFjiVJA/Pch6fPZlG4IpUkc73eSd434cSgf5sdIL46g/xmfWcxzQ3TJd9\noXm7GVl5z4qiH7wl+FJ27o4OqdhHbjbcmAc/pEjdPvqWaQ7K05G9p1rHmAsO\nQUMJlavTG9WpGLSq56GNgCTEcUX/Qtt8H9Hd6RpXlnoil5Wc40poXhj5ld3a\neeJk\r\n=4Y7y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"21f200e1bc512c79444f67643fa61a137624e6fe","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.002fcf.0_1602287945489_0.42916823265500303","host":"s3://npm-registry-packages"}},"2.0.2-alpha.bf1932.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.bf1932.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.bf1932.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"09040edd04d4a97b8b040156f0e28efa3dc779dd","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.bf1932.0.tgz","fileCount":13,"integrity":"sha512-laIzfXgEn01MmxTWV34vazv30BFbYwS9+FGCKMjsW/b1ZPQqGfUqll/ldAYDXCH/fr34ejBzIw3UxOC/C8dHiQ==","signatures":[{"sig":"MEQCIBJa/ymBL3B4mxOOC4Lm7j30x2ALBikx9w3lnrIQ4ScXAiBg5XimWbD22+0TYn+gxsF/+1b14heAKjuCElPWUrZqxQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgPlfCRA9TVsSAnZWagAAbpgP/jpvpxklaW7cg6U5uKaX\n4uYD6IUIo195AJKX1jVjqOAPBZlgvEsJ0X+8kmUPnJOhSwWmCgfMOy4DaaPu\nKua6dL2WoZNL3I0Mep/A1ESWK46m2PIvYq/P6Jux/sJw+EGacLlQS0gYbjyn\nuHAYMFeyIuPXGydB61YiwthMqWTKLm6OBs3dGPynjIv+N7qYmMhCBB2YmaJ6\nmUjzEDegd86Zx0RHzMXnEdBnTXZU2syl3Qsax8nbH1d2z4zhodtnIfIsbgvQ\n8KBoHmghmGbwSiBp90ard4chrkH88y7FPzS1b1932U3zNTg6WiRFCC8TQtOS\nswTr4laOdcFyKm7YrIGrwVXkHndXa7j+RbzpDNfRC4wNA8FJ5k6EoHREX0Pv\nEpH3SJGbLeG35gACpbtUIQfGykmW3f9bw5+2HO+Uc4SgQU6zOZ7Xrg8gnQOX\nkdT1Hdbc62zM8sRXKLTxtH8vx7cIBFa+X/GXiwVREHkg2kbOJwofPZ4MyAMg\nb6aCOLbUwaBkDIirngF763jHXzJX8SOrGVY4wa2KNTVVksuNpYQFtUNIo7AH\n0fF30GfC018YKIegIU+ndQ8e4eTgHJLQJXLFDBVSfkT/6Tw2wR3bqUfeskQD\nlYtgisK1PqjKEDePxdt9qGFWDpDEcTi6Fbraaq7IqsLCi90sJUh4G1V8MSXH\nUbcT\r\n=cav2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"72fa44cb834782aa814f47bc07077c26131d317b","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.bf1932.0_1602287967038_0.047376154171629326","host":"s3://npm-registry-packages"}},"2.0.2-alpha.a7a862.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.a7a862.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.a7a862.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"23338c8ab304a90cf392d6255f2fb9c7fa737ead","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.a7a862.0.tgz","fileCount":13,"integrity":"sha512-j+m98OuqQtk1sZ3roMASfQIXEdrknWsVEGS4WC4L71dkzW3P+bbF/bcG/h8vPS1mGCj1oUsnO/sEFpc44drBzw==","signatures":[{"sig":"MEUCIQC/7gxLwJheDbRICau5ksqZc+QPtN1nR2U28fBpNuf8OQIgJYnVUX+uz2+Y++fUGqcWub6Rj7P6EeX3TmDEPqFGJW4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgPl0CRA9TVsSAnZWagAAS0UQAKPaLP036/FVmN0hWgwC\nLd03cw4BVkEk8cIrFU/mSSNNK7Vi9OfZcBdsCV3LUgAHgFAUK7xjYMwT+Kw2\nWHhED0z1zD1hu68oATZrCqhhoOns215pOggNnQAEjf8yjs4d+k7xmpnGrdYG\n8YLkQvHFicl4nTnQBXzvtjFSa5eQoMGkCRPMu6oPXSmgISrSSetiZ8Hqnp1X\nf6libLssxIOUsP9u26OydNV/VtNKhEyyjaJJ6NxP9mctT0EFC0yGXW8pLlHF\nEiM1XjR4SjiucUsgMLoUgWuPACu2FRgsQmnxuLRR7nhskTxvo63zfmcZy3zT\nYX3Nfu8sCjIXQaQwdNT6DlGgDwb4Et4reUJ6yRccmdFrfxc47Ti+2FmK+As1\nPy/8fx4aNn92VONKw4QHxgtIzd/DqGEAStmSC3p/Sm7wRNGPlTUm2IowyJa3\nwTehFNBXkt8PSdU7C5KY1ZwA/PIj5EA859ZLsV9qv/RKXO6No7UrQiCHSGMQ\nbvYGYpuhKbBl2BZHDoTCLEc16opFqHeihq4FGLscZDQCgsIQXqN5BDdGzlFp\nxAFVinyE2b1Q/uEjX5Xz0La0CKIGJRDntpbyJjbOu94Tgz/B05wcwPOxuUvK\nAmcVSekRRyLVY+oJiQ+qFO/F6KzbxAsGtlCBidw+JWTQ2c5mYYfB6vLFomGA\n2gbr\r\n=u9DC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"d7d64a20ab2c094a0135de0ec3b6d16f4939067e","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.a7a862.0_1602287988295_0.5100656842175251","host":"s3://npm-registry-packages"}},"2.0.2-alpha.4ff238.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.4ff238.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.4ff238.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"bc6801f88670529ad5191842b16553348087905d","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.4ff238.0.tgz","fileCount":13,"integrity":"sha512-GNw0tZVn8xFkE+47yDCz6flnHzfrWu0/owiRlft6qAbbHFiq0/ZSzmaB6/HFPu92q+LaCndZcocFgSiAp3JSvQ==","signatures":[{"sig":"MEYCIQCsFK0bml5MysaBTjeoJT1xfs1E0fAgogoLl9Ctxr2JeAIhAIeMS6iZ1HtoutWVZB+mLa4yWuRCQLBp+m4yFBa4vuEp","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgPoCCRA9TVsSAnZWagAAEAsP/RLsl4Xc67l/vecZqoTo\nuOyvwqJdOs8UlWmo+i5TwXO5w1n91rcLRxM7dh1ngKy2ToWnsZdkwkNuKYoe\nsSCAtqGSCre6v6NOzlQBwnE744+g7laZsVhVQLn042RFqBvp8smeOsDtHQjD\n7gUnSJ17m+hmjWiVpzuF2l8/8tFiWzHbGiRktB//vz1saelk+z6ZKwT7dZUc\nJRp/lsEggZcNVDJXhO/CVBl6X0tayqL6LfcVme4GWoN6O5xeYttobex6We8a\nUqlax/JR/fiaJg1g+rjzu8cqFjNST5lmTQEy+rapuiyalW32MCNUTG//Tz5s\nT8WemfDQa6CjsoJ93Rj4I8vtvY+DUMoN358GgRSQDmYhASCKJenNopSi/zv0\niaS6f3D5iVJUJmQowdRTBDz42aptQ88Ba7o5HMXQSjok5yfy3qtd21PGWe1T\n2X4Y+8Y+bySnYfuq3iX/rEhPYrZcUON6QM5rzWEpiqJCZPqhj554z/L6onML\nU5vuL5ksTlquDuWzc7Jt5DggQeefpzPt1yZpN99UtSZpla0Nuh1kvpPRX0bT\nbP7xgT0kDB9hwuiG1BCzdzTyJ2ZG3XkxfGOA8J8Av1Of/ifwWHR5MfGSax3t\nPH1z6Reyr04RKNt+/Vw3vQfh67zkbMV44CaDHKx0cfyhxIcpjIgqjW94/f28\nwrYL\r\n=2Slz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"0757793f0ce460d38e3a84c12354901b4134bcda","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.4ff238.0_1602288130008_0.5703426606810371","host":"s3://npm-registry-packages"}},"2.0.2-alpha.4339c0.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.4339c0.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.4339c0.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"f8d5fa268dc485a173d45261156327da59179964","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.4339c0.0.tgz","fileCount":13,"integrity":"sha512-Zh5tNH2mp8Ikh9RM5x7w4M+PNX2A/2ZeOgrnDBlUeGreKnAFHz8+tgqnio8x1zLIH6fr6tI26ReCevBlURF9XQ==","signatures":[{"sig":"MEQCIFlw6cOFtAyNf0ZWXQbhyjGRC4gk7ZsAkbI07IF1uL9jAiBtsjaVGmRszO/ni7R7rQsCNQAxG6ZyYrzBfgb6rekDiw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgPovCRA9TVsSAnZWagAAcG4P/A9qRKgHXUDh7I9oG9ah\njkR8y6PuP3JjqLB5euBgcn+9AOOyj/E2/terge8eR6qFB9gTtydT3Wk+tosi\nK8hJLwJgIuGr+2g6lkq9SCpQPJf5SPANVabDisfxzC0UyHPC6eX7T4cBJzpj\ndrNiZPj4ZPeWVhscN0j+lNmZlz/+oVfppb6iwMbW9IF1HdtUr7+bcx2ArNKE\n0G5plxK2V6+IRJJohoxOJuHLKbtmzm4KIs3JtMc6EAerIkhvj9eqJlZepwo6\n5VgbkNY2exp9OirGReWxKBnQMcjKPNH4uUjkDVvgeU+juvtrowyS2Xm+QLpc\nsY1a1eYsJuP6LnRem+/qVT5oLO0Xwq+WnYO4xPMZcRIf54T6yhsznAFSY2yR\njCHeF4xSQL9sQvg4KmAoShXcTKRRaTIe2d8Sv1iPpu1LAwsI5nzAfk2XD75Z\nE8DDKslSBL90qt3UvY+/w1yu6W4JShlEvgW31xJtmhmMMZekp2iQMjFseeZA\nbBIqMhzW+wDTY5/ydzGYdbtcS7Als/HU/LNHp2Ae9UVucSW74Tlluik44YeI\nMtQThFCuTkEeWUmO/dL02EYqB9zsAdVFgRaO0nkg0NwbUVH2hfXBvuXjVeW6\nyt27zzxnlB7bBS+Te9nT+Wa6RIgSI+fGdbGVICv+vrUcAJx1jOOIoAgyp5rF\nVSbd\r\n=icE6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"f033aa423745474566de5f76835e646ee45ff300","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.4339c0.0_1602288175200_0.7872615646981811","host":"s3://npm-registry-packages"}},"2.0.2-alpha.7b1a8c.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.7b1a8c.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.7b1a8c.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"1801b75edcdfd1d4fd157b728725aa126162ee78","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.7b1a8c.0.tgz","fileCount":13,"integrity":"sha512-tg8zV6wCHy58jrFsNxqBWegj1TW92GbtFW2EhLgoFTRLrb29/veyrurSh2jK8eAx1mXZV6xOTKhWSO8AsNAKmQ==","signatures":[{"sig":"MEYCIQCAmc0D8LyQ0tmhErzT7OSJlbRIsXZDCV7m+9strfh1CwIhAOPoXbKM6A0KiW+DuOQqV8pOnwtLz6NJMtI0ldbSVX2u","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgPq8CRA9TVsSAnZWagAAKBMQAIW54Jlj8G0OEGQX5ulP\nsl0pw54RYOyaEapYK2jhCqZQCO3vFZT87kMOo8SpW4GTEIB5Q0MhaiD3Pcwp\nklOmQMHxNumOD3/VgYM5gfYoGP4fb/UiMLzKsgL5ZdrcvusZM5f/OtkuHehH\n3L1gioJ2a+zJrYGCEsP0/yOWHeYtB+nephrhn5zBqwu9LTJzeIWnKnbzNZWW\nyO2UEbTqDTnjGtCf33FkuOTh27vOkIDbJ31qgLlvpiFB7YbwXpHC/tAGn3ah\nW3c1eFBq50tTKIdIK4XmlAURX4PaCSy5+/6TysZ5bO/yi7ztn4qfkSRbdVqF\nj6n/w1UGz72lSr/a0ptaSE65tpcEKVFP8so1ZqdI4jT+SFlbEPQl8n7doZoR\nb3b94KklqEr9NmCrvylUTA9fdBnTgq+xc1GmgWwOgYSyLUgKzsfWcxLlkSml\nU9rcqO5c4e+BzNLv3uKdM+ITkL2W4SVW/aFCP7d+EoD/9lbwYTMw34mAGW4n\nhbj/K0iCXD+ImPHJtbXCYftFrOZ9TpPqp54u35ft8ySRTzvGYdymlYbxZ7SF\nuiFk77agNTV1di/UlBYTjdPrkh0ptLhLZaCAJOqWwAm7RIEWVXlBfQfCIwED\nCK7SOvbGqHd8fOI3sP9Oha50+I6x4rpwDMHlZ3/Iz8JLsD3Mpmd6lbKk9AM3\nQLwP\r\n=KZcg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"4c263cb0ee484fe7a1cd35a3a139ae52b824360d","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.7b1a8c.0_1602288315669_0.004247697196206879","host":"s3://npm-registry-packages"}},"2.0.2-alpha.941c2c.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.941c2c.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.941c2c.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"51e5b6211f0633a1d4884407b8e51ef367d91fa7","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.941c2c.0.tgz","fileCount":13,"integrity":"sha512-siNyRtiEH++cE3VY2tzS5C4d7KdYI2NaN7uQwRjZUyOrODSBnmpERWscc1J2uQaY2KpiHSAcDyhtqeGw1A5BgQ==","signatures":[{"sig":"MEYCIQCUSns0X3UV5Y7zhm/uRAy18JmkoDEgyd43QhzG0/mNUAIhAMd00eFiHY9jIPc07tjn427DiJQSRYJ06KGWyQiDOLyT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgPulCRA9TVsSAnZWagAABfUP/2FmY4C2pC+xTus45Ffd\nqUFE/spP3PpuSyhbHkAnF91tqh2a83SbksTS+RwALdksfjR39pmg5WiLZWTA\nceOpm0YDT+XlIDFIqkCdfSZcpRoVwzBsTkKX/8QY3HkD5u9ejCseLfBANwKk\niMTHE9X2wR+6ffA22IJCgdmbEmJ7/j+lKnsQ31kKfWs+wwddXsLPlqXHwJW8\nTeHvXdujxfn0rfNiAmVjPjJwKNPGV6PHgifM551DJaDTfEkQ3OImGx+I5bVd\noyL4DOUKmY8XGHcwCwM07g9PK58pFrewrgA92670QlwkdulckNgB74Jcjzil\n7if/QPqi3vj0mxf0D9E/vZjQeFtqd1wKOKrYtb3lgt6qmK1Znp6tLhuZ8tvX\nmxMn7uWfGE43U33Z/thmXD3vZUOcFvfufX1Ha6wkajF2h1dmUHbsebBqPmPB\nCra5MVDhxow6tO6AS0k+dkfUh/hMSv9cJOCZzyJ7YpyFEOZ58QPFTzwn1GwC\nAb2bvzyfxXj/EMSlePC55/nPoK938IsABESFltVueG+buN+U2JmvjZEvV5EX\n0q3kHlRrh9/S3U0kXaFyPO5Atvow2L/CITxi20prBZX+7ASrxfQmUbyehAQS\n+AuwFPBit4au1p0xS4rly4gV4xsvx8fRnrm5ia4AyV+f4TImctWoJnAOBeZ5\nS/4E\r\n=siVK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"48888123373761581f7eb676ace6b8c5bb5f577d","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.941c2c.0_1602288549057_0.22550728469204118","host":"s3://npm-registry-packages"}},"2.0.2-alpha.0885ff.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.0885ff.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.0885ff.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"1cc1b3428d0375feefe02f010477eef7c4f8650f","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.0885ff.0.tgz","fileCount":13,"integrity":"sha512-N1rMi3FeQPygTFso+EPVGW+mEc1k8z7xuRmQNIEMpuT8NSgcSRX5mARvKdB97ogkyK4K1hh84Gb4z2fiFYpgnA==","signatures":[{"sig":"MEYCIQDzB9vLSYjlkpVzpNwiJD0FH64S5uVVTcE0WPVe4QeMEAIhAPZFV8drY6xmFTRyjE42Z0/N+BCtVCw07Nj+jLtnLXjB","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgTtFCRA9TVsSAnZWagAAU0UP/RPIeQ3I5LCQ7gtqkPDJ\ntrq20MokUAPoszKeuKnCIaeE2Hexv6G0E6NmNbfzGWWYOUmZqblo8+bGGbLB\ne5+dwBeJpgEmGg7wGBvMidOAYBpeUu1SIBAWK7rm8sc4+FIJoCSVhQSrkMmw\nzvqp9B3s2hKCthV4fGQunrhZkVawkwOttBqmQbxBVLNT1oU+DCJATosUtzXL\nnL0DkWwZ6NRni7g/SYaHod/4skj8aDUlARMa8OkUrDFdfJ6Wu06w/v9cL3js\nMkXx5S9/YsE+kNZvYK9VMGYeoQqENxnCK+UX9T0JwbCew3OnLGPT6pbhFy08\nesIkjTqOW6NanrvL4TBglXVYHQ+c/laAaFsFjJop9Hutjt8dlPZwSlgGHB5U\nT+YVn/pAjNRjst6k5ugjFiogNqzpUAIjcJg/1KtSonn7nOqN2AEHQndzajmv\nSlNAHBt9kZ0ndfnJXFR2Md5wMzJXgSNIXlLppETtUaBvHuqoTITZLjSs3Scc\nnUfQJrrGMGOs5djtCsCjIAfigtPHL9eiEhy4eG4NdpTzw3RLXNMKfw1yoLUS\nD4kK0RHZZqS/nZ/Xhaq3jmBY/LaUM1MxcooXFzBm9yavRfMUcNadXgQtx9JH\nc6R4N2Jat6/Qm5kxpgtveLd6EbyOH1lTOW8DsYQlAFlZeexpVHCaAtaBEohA\n+ukT\r\n=AbFr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"d6b7593d91d7b050f0a8c27530d7667e53f8b02d","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.0885ff.0_1602304837486_0.475647057122077","host":"s3://npm-registry-packages"}},"2.0.2-alpha.56d55e.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.56d55e.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.56d55e.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"8a5b75c49f695735aadce83f2d927bfb8ce11527","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.56d55e.0.tgz","fileCount":13,"integrity":"sha512-EDR0sRAX3Hfa8x/xCdZGIbxxhbMh2isMVIvKhqHCFxW8PWNhpCzdA0RvylxEVXGZ0Rko5oqon1TRZE3TWVDJ9g==","signatures":[{"sig":"MEUCIFSg1oHGKRPWTCDYpSX5qk0WIIstiA6WjuOuOHMSdtDYAiEAq0B4bgqkvVxeEu7XimkyvgASDsvlwQIiFH4vHcqN9zs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgT2CCRA9TVsSAnZWagAAKnkP/jSf5IE3N5lqGZYtHjdH\n7jlnsIug+C1fOmASpzHf085VtdZBSifTaM15bClJ+ld/eQIq1HUX56eCXXni\n7+5gy/t5UnFXgPSunoRBs6q7LhWFKmNvgdLfbxV089R7hCh5FbuKClv17pY4\nk40bIiyCdy5R0pi+SrjRBr7UiitHcMgvpLlYy6vIuxQZacN27GYQDUJh0kcw\nFDws5HjzM825ZQXaxtuDvaLBhup0Ct0EAJJNE3JwhyGxwB0If3QuwMNrnjmn\nQ/0HV/2CmNgNZMLEk3AG13d2p3JbgW5GNQBdfPLd77nd6j9N0NpIyhRVvNXL\nLPk6+XQCM42IbhzFbB6qwk/Oz4DY4URJqA77mnuuE43Synejlpsgpojr4geO\nXEcek4HelUWUjlkPup7ILftuevXHQueVRAZ8RqFE1JQTVGk7YTGOyT1Ga8cE\nuTaz8s31j3oY3pL7aiAMAAjkdA3nDwGarCK2Pj90VXIwPb6jTHiswlgzHH5N\nEmfW5/NekeuU2CUimd246NNlqxrzfX0ezXBGgyuQYIEuTvFrjoJAw8eGLKUY\nFUzk0O8EXsXhNJ8VkWMxLjg0nR+dntk3BLgGPc8GSOSlvjVr5Q4z0gUj0AML\n7LPij7hZtlLvu3QktqvGdskq+cdVYso5z+Qy8Uy9ABHKT8RbHvwazne1gB/W\npWvm\r\n=8MaI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"ec66ee8e76fd2a8eed9f83f8f7108507c48fb377","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.56d55e.0_1602305410228_0.9659341398050398","host":"s3://npm-registry-packages"}},"2.0.2-alpha.aefcd4.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.aefcd4.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.aefcd4.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"ca669e707339953fbab825451e9dda7911d1dc4e","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.aefcd4.0.tgz","fileCount":13,"integrity":"sha512-92jIG88gUHbUbf5Ho3pnvFVdNeD5Bm+2nCKnHIKZ/0K4onQQiikJEg1E0oK6HvMk7vnR46ZarGspqLKYIT1vCw==","signatures":[{"sig":"MEYCIQCFZT3+zc3Q2auWAouhNvGw5mT34HMH741cxkpPjAFZ7wIhAIpXHCyf2x6L6A+4ITa5TObxhC7g/eCj64ZJV8w34umo","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgUWiCRA9TVsSAnZWagAAQ/4QAIigYS9/4js8mxxYCdKH\nS+SCB//8Wc+trUm8qroBw+egTuTKBKXYMd2jIWKOJSU4FiQkJtBsBA31y286\n4gUk5P3NjRlPmgrnMRMmIRlsyrNPNrYHNGZr0wpuNJpH/eHqWhH0b7BJKozR\nhyhvxn1NIlLh781KZY/xEsAVG2SOMDguUxIpasBGgp4gDSgkOWTMuOchPQmM\nxGtcfHnx/e7u8o+kW/NlP7BAtKC7K28tyICb/9Kh+uc5IXD8BzCwHN7/rQda\nKVwsLmCUtrGMpb7KSIEJ8LX+e468YBSwaZq9eDaOCuxOG23nvJZqO71/GNyW\nZpbXp/GjlA3JEsKoKxth3fTKmycgeSsCsSi0qmL8b7mgRx2W/ZpYMwevVNb7\nBYaBGqiWlNkZhUhGksSBW6IKwBEYyh9Tv/NqSVXUdHtMokfR6+85DjztADfI\nbiOR0LBsscr5y1fSgVlpXJGDzWmS6NLKNuzpchcL/Yan8mrHisSsvPyo/KFV\nYcMiNT8sZzQukWocPW8GGgGoVhvhRnToG9Iq3gx4N0kz3vw0w0rNKXqAzcIi\nyRYWu1wWN0GQLsYXs7RLNFV2W83qcY2qB3jVkoxnNAZ8c7ekIwjGkFacjYfA\nk7FWINedG6BA/MISVhWisvMY3i08to3JjPUCkAlLJkLAzFei/AuFMjXWwfcP\npRBD\r\n=EVMM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"79295e7adadb1f6ecf244acb16f3d74683032b5b","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.aefcd4.0_1602307489861_0.38242829458000305","host":"s3://npm-registry-packages"}},"2.0.2-alpha.b54a0a.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.b54a0a.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.b54a0a.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"4825b92ffa4702b067c93e246b728827506882fc","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.b54a0a.0.tgz","fileCount":13,"integrity":"sha512-UWdDSGqPC57UqCjxfw+qsvv6nJGHkbt5nZsmizol+9Z4gLItx/cuH0RnUN07/ZnhtoCErr84DYceE98r8CgMkQ==","signatures":[{"sig":"MEUCIBTPFttzXvsQCpog7a9Q+rd7tZI68UNYvLIXZYfwaOrjAiEA8KnZ/QoNCqiLdHFWnLFYhQNF679QBgsbpNGhdZNJrB4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgUbACRA9TVsSAnZWagAAXLAP/R0WzCqWYoBbXaeizel3\nBOGPU9vYl24re5K15VhjzI/pEBBUV/0ZAAUotAOK0nCRDn9FqT4PeG53EcWY\nI2emhbz51LjiMz5Gy/T9D6+7JHq7SJrWUhC62Q6rzONEN/p3t0bT8VUSwfmy\nViL8DD0ICsEHVKE32pTD/ySykKG5prXP8Ez5VGEk5a5eZuV7+R1LXN+9WxNV\n16l8TPtg+K1ePVYcWSMvqpRArUE7XbEpJovS2K5f76SuAGssc3iSoR34l1CF\nCmVJ59UTSubpGxUUD0V/8h7ulVGG14yJkEXH8uY/7IyjkOZAxK+tT7sz09fo\nJSeRxXFFVIVxmKD4s5IMxJ22GKHYgVmcL7dqXG2PmUbbJwj6SpZWDrwES47o\nxoFRpNakb3LCcK3xJJ7ZvmhJc7/N8Gcm/EGvC7CWS4WZ3yBCDpzA8D8XdziR\n/PHvWsYA58oCo9UxIVx/hZ+sSJstrOt5FBOhW5sxP9AdTPD2Mjcz6UC690Uz\nlP/GTX0+iSG77h8p4ze5qkjc79UiTRIwb4YRhFSaAoofQCJ15R7VsUlythyn\nYuQ5+wIZiFgRZ5NuFW4esLQj4XUWGtdJIF25vihzMLaRtC9NzDzuAHsZn5TZ\ndzxIA544vWL+Zor0q7ovWmk7k21blyZGNHlaDqkf1VMnF827YrxIHTMBWekJ\nhlob\r\n=BoXs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"17f78adc86dd7650774d0c1a0fa78c070bf89810","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.b54a0a.0_1602307776380_0.767108004233289","host":"s3://npm-registry-packages"}},"2.0.2-alpha.73ae6b.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.73ae6b.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.73ae6b.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"4a01f9ffd5e2196993de8c934ae3623366e966e6","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.73ae6b.0.tgz","fileCount":13,"integrity":"sha512-o9h/WT0BxcEjd6XtXzLnse1RxOfmlXXWY8yR9BquNBtSADdC1ibFZxpk3/aQync/q93kyVVlQNxCcMtdA5JKcA==","signatures":[{"sig":"MEYCIQDtA0AI2IfAfoZdbwtFDVRNx586rtDnxJnrKKFf1Pn1LgIhALC30TOP63IrLAp7Eu2P9EVxRQ3ml8D+5lPK8SouF+Ql","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgUbcCRA9TVsSAnZWagAAYioQAIutPl26qZRRkBA1BPY8\ns1gR4zNYfoqV6pwS7lF81hKHBZeurUnxbBsiVfL6F/Y2lgMO2zS6H+PCL48h\ny7mNb3NPNos6g6jr9aZmH/HFEj5H0GO1W1eAxK0YZKVTX1fuZr9+N88Oq+SO\nOrIH9Fp8VuztqCJ4jlTGNlxz+K9KzPuuDQtjNlNCAc41v4F1j9qJmakT9B2v\nrGij4ggZ38JnFvaVSUlVtrNyCYpSlkeimgLyVR+yZzbEHqbpFyqeUnz0LS01\n7Hn7vPAmkNm2Qn6dk534qVNowLpQIOHwyj1PqBmY67lfBbtIA7qet4XoyDgH\nIBKR+FQU4dXXL6TOgYoliydOhfWQUAwQ7wwoH+tanTLHqDOQgaXabTMb9OIM\n3sbUg+mcCCK0fAM7MRm8K/ofZmBAYzbfZRTBmYCfITkvt8JBj8OaYnVTuzPo\n0XBYj5HgNrlUJtLOWmcfsCL6owZguVpZ178xu3BN6fveeU2Mlf2F2dyjtAtt\nDmIWMZwBAa1tNH0/VUGxy033Rq2JL5uKVfDODU5WnnWlL+OFvWFhv2xalvV/\nchW/xaxo9qwck+uvK19lJP1ftqqMiTlK0EkiGO7y3FkMJueI9JxIPbGiwlKY\nmHZ8/I5qIkIojjxcFyewxx5PgyPXl9STUtKoI2SD4IJbUuGYNS4gpKv7dUiw\ncQsJ\r\n=lWvD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"e9e5a64bbac2d2df1efeb7bcec74f653d2791ab3","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.73ae6b.0_1602307804521_0.26559757006173124","host":"s3://npm-registry-packages"}},"2.0.2-alpha.994e8d.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.994e8d.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.994e8d.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"c2347731bc9fead291ecdc91d162fcf79d30a28d","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.994e8d.0.tgz","fileCount":13,"integrity":"sha512-8i780QJAlkCRcJ1DZj/1Xa+0+um60A9DjcXifljHiCeRvR9yL3RnqXBs7cREtvOt6UXYb3NW3iuwlkN9L5TAAg==","signatures":[{"sig":"MEQCIEOnbqsD37Cv9nq51Ee15pbcc1X0s7xQvasL+yDKqmKIAiAgdNpDGH46u1Wqq3Tx0SSQ9yoJMpLEpnttzyVsSnJRaQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgUdjCRA9TVsSAnZWagAAg8UP/1+csTN04bE3YjHZINGW\nTlt33+Gp3jFWJF5h0y/9p0hSGfkqp2xYafDpWWJJ8VXZ6FtoP3I9+DqjZmAA\na8+5mU7IQghu1d4bHkMQ32mUwk0lQy8bCiyVX2EyPe46yc+/RjI/xWiIiHMJ\nY6T6hafpOeTp+cUPk7/pBLMQbxFeE3e5BGIfqdSLmujC1/65oEcAQbBiLxZ0\nQdruWFYJ8BZrZPCXO0eLpMNQXukx0hJTOLGKtWW+cANkqWkg8kAgv8S04O7i\n/k5hYbokCPIuF3U3c7NsjLxZiCDJMrLyzUy+0udwUUNs+qgX1nCJDejBnDvN\nFDtIwgh5UZUrQzUtxpzY0T1F5hDiC2qwPE95LhMQa81TX4VX3J12AUhxL4yw\nRk6mRAcGACAW9AGP4zUu20pEQFGhQyDn+BAs+qOdTZh1JDw4F/S/qu0mn0KG\n2o2+SyihAoH3u7iHVEE52K9iHGvmDYPRA48PJ6ozdrbku37/a1Kq93fMKBTh\nnOfPlH2R+GNeXHEUpXdq7QFtyirHLS6O15C+oq9uZ0Qxz2Ov9axDfYC11dMs\nceVHZutyILcSxnt78D7OhkUZ4iyBVb8V+ejY71ZqQcdjrIXSb4tr0F2cm3Nc\nYguS1w0yfWL7OtdRlGtgr6xLCnpHhU93oFlRQrc6KYEeDe+W870JN70HIkB1\nLXbK\r\n=6aEP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"6f7806cd795c5fddb3a6cb5182a51e13059da44d","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.994e8d.0_1602307939525_0.7305974914826712","host":"s3://npm-registry-packages"}},"2.0.2-alpha.07067c.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.07067c.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.07067c.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"7f0402f33e1de8f6c534b2ec989fbfa2dd167b1b","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.07067c.0.tgz","fileCount":13,"integrity":"sha512-hC+ovot58cwKuGFgG3w1Vvy/AjPU4I7IJaJjH97yKW7Utyil7Igg4eI7ag22l9z6EGN4wtpi2cLM3MSFBTbdNw==","signatures":[{"sig":"MEUCIQCDLQdhlngWqf83qNqSQmVvDgZKiuz3QRmpFF/1zgpifAIgKN35YM6u/GWAwSU3hnnfN9CCSdYDxNYm3EOF1MU/YLo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgUd6CRA9TVsSAnZWagAARKMP/A317XL9PBR6xglC1JxZ\nZ+QHehlp163C9IJYgjV8eMWUGz2EEPC8vBk4jw6y+CpEc5d7n1RO6W0nN01l\nrizvHU3VPVdUf+fN6Z6xDgGih8Xf+gElGeL4yVzTpsgsQUZst0MV/uIS/7YY\neLGJlNgagPndn5AhbacwQlseJEhSNG+Bid2EYgGcfXkCoKYaC+/OF9xdn94E\nNX95Q0nnCwAWdBvCNUvdXc8cvaOCE8OH6ebvO/8rMotSwXF859rKkW7lFm4z\nmdv4fU2FdVqslI08WRkeQBCHWDQZx5LLowf620Tk70SKFpWCGPo+73pdr2CC\nlSb1Mu/6Wkh/Kzqjvx5e7h0FKufFA9kcghMqUw/uzb9Vbtu4mnvKSoB63+d3\na9GM+vQXGSqeTsHbWWFhSKFWV8mTtPInfT3N/+DSSl2ZSM1hob7AUfMsg+1x\nuF4oI9veZHREbePiq322bx9LBVWpYhxtWuDiBf+49r748L2+KKqxSnZuTYni\nThWDBf0NopcJ2ow38Kjw8KVdTwkCXiECNxxKkNN2mP6Xea+9cIxeHWpoBZbA\n18lhDdfncnbQqD25BsVbcI/hux3FE9ePwnGfUXcFP9ZEsHeCxwgtYQ9m7tIE\nw39BTpLexOh2Eosulj7rVavoydB1Dx0+mCxurFK3YU43sKpaD8GHg5n9dfsK\niwQj\r\n=DIxC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"8df8fdd35fc09725b33d1ee70252c27d77ca7598","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.07067c.0_1602307962364_0.4795792003187014","host":"s3://npm-registry-packages"}},"2.0.2-alpha.f5bb63.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.f5bb63.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.f5bb63.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"2c3459a13ca28c7bf5af89bf54ba04f31311d12e","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.f5bb63.0.tgz","fileCount":13,"integrity":"sha512-tIR8WtSwn5ne7o705bDw2ctElPN4qIyYe4ru2x6ZzXqbQzsKbP4BRmQjACVLZfZflU4ru+wk+B06jLfCGPDFuQ==","signatures":[{"sig":"MEUCIF6Audk0ru7/K38/zrpiFwHRIgBZJuGLoywhmPG5HJ7LAiEAtAAWJ4KkYdxSRUhAN1M4pFNbxRrH4oOm+VjdD0TmNZk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgUhGCRA9TVsSAnZWagAAde8QAIG5KVq/kpcgnhDuv9Cg\nv99Lzl4huAhmpnRVrO8VDUF34YFF7wMU4LaKmsDp3CFv/NbltCWwRKORB8ih\n42RGOrpHN3kZ+YWTq4CsSK84ILhMlA6eTZQn5CeuJGBF3zKCK1uP/U0HuLSQ\nK0HELcWAh5pApQoR5usKuCi9pBAEZM7HHNiIKD3y67FjZlVzc3S4MV0iHULk\nMCzgLqeCMmg0P96/Jr+SSMrWBxk4K5OUXrHyN7jBL5RKrVKTAoyRgew0QZDD\n81pkoCchIKcbtwIqZwrTzvObgUf7V8RNGGxBfWbEwCGnHPJHsOpWLb5ygR0Y\nnsiRamd0MRCEomeXshkiccNBC/WAzde8cfLwPR0knuEK+jSGLrYhdU6KEpQq\noogeO+iDmuKreeWycG8tev1Tcw/pyO0Ae/R/1Y6wqbAZMvJboGaEECZ4qxw1\noRMuNXwsza47Qk2nwAYfR9RMw4DdyCaFk7GtmGS5rTzMeo7FD1obPVKfHb6L\nk+nCcESA0NCxZ0KO4sePIRtE3voMy4UUsThR/1PGa9vEIxeG9wVJ1/emChG8\nfnmXn2fb3n7TryEk+2tyI4IXh2nJDLppC+0NTc1HXgh7ujOPYRSol5HZLMzI\nNt57QDdz5WC4sWqb4txIw1d1siq0ERwiVrUKYMzvUzmGaqbEXd/j2FH876zF\n4QGj\r\n=qLgn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"36ea3e528a61ce9048b34d41ab16e79976172127","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.f5bb63.0_1602308166392_0.6387463124309489","host":"s3://npm-registry-packages"}},"2.0.2-alpha.e5d785.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.e5d785.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.e5d785.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"6ea323395b258fd35534a3f045124f659f7e8a92","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.e5d785.0.tgz","fileCount":13,"integrity":"sha512-R+mt3W1Nh9xn1sgp61mPIdCjEU0/YdbCq/iMHoaOLGnN+YOdC8eyool28wZtMbwG+KmQtCucK1J0JzI96FLCTg==","signatures":[{"sig":"MEUCIA/V/CMr2IflBbBsfP1WbykOYTsoABRlj4clEKPSzqklAiEAhPW3Pfctwv+qZ4R6Qvu42tIcUZp85kNZQpNawp7+qhM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgUlYCRA9TVsSAnZWagAA8rcP/1z1jW0a1QsZwhAbdAUd\nWBAUUVaK+c9uFW4T0UvZ9kxpYUD749bljmHW2q4+/HNwq/WrfR+75/QWP/6H\navdV3a2D1G3v4BOSrp8vWxm7HInZCpC1faeQ/NqrrHaWU7cM7rS5k5y+N8WM\naXyN8O7eW/pa0cn6X6sszyjt7pAbuE4ip2El3FlOPwzw/5iRTRqvmBisOW+5\nF+s8bXAVA9GLWKyMUe5WUKz0oMuBxjqpHWgV4foA5DL5uC5sNykxeNr/WLzF\nEvCJve4A+wkRwU3QcVLRDfjzY3ucvWPiz4qqEl19UzcAwKFcgoybwMIQud/E\nRLYB+QrOSpBJ3YPXGmf2B//o6Grys83FWjd3jKqXJbmcenl3yikLLsnN+nNx\nKpH1SimDFvcfFFtEcEvZ8qxR0lZZvTM6HTuCQlDtwaPSQ5S3K36cWMyoZMcd\ntwVy9CKh1tVh3uszFHGBV2OdA9cwFT7iDzis6F2aeoMppBds2JR2BArx7h60\n3jVf6yaJEfhuIRgpd+KgJon4DraNn2o32EIpjAVaTaHtgPjowjp8lC12OWKo\nP8VwfDTNldp68NXpliW5gREoQEIAA8l2079iDoAwFqk5e2YCCC7/DcvXd9oX\n3/eh/03O0SrG60FNHgjKh9OgoqxyAAPhgMZn0kxCda8i4Zwg0IGcpFwFk/+U\nvaTl\r\n=1zoV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"2f3f50336afe2c2446836390a7f3755078f9aeea","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.e5d785.0_1602308439889_0.6540939286212322","host":"s3://npm-registry-packages"}},"2.0.2-alpha.d0185e.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.d0185e.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.d0185e.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"ffd33858d03f345755a2bdb9beae146aaee24502","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.d0185e.0.tgz","fileCount":13,"integrity":"sha512-B1t1acBySY+DKztNgmV2fMWvbqMTacw2r7gm5WdsUW8yDtZNjthAyZQzaCNUm7Zjhgpl437zp77A9KK+xo6wmw==","signatures":[{"sig":"MEUCIQDz/RSqnRhSypj3AodZGdHpgapu7lvBeEmk/j4/dl+5QAIgJV3a1uYEAg4CNbAiHDRzQCoqFwv4nFyYtqLjxytwAV8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27414,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgUmaCRA9TVsSAnZWagAAGbsP/3cMY88WF+5uKqIoTUdL\nEFwQwbTuqmrNp+SuJG9IPNkdXJxKh6ZhhG1OQ5EqmEIrbV7fj5mv89QgOkmF\nWsW/8C9QwAP8vrwjosCox4e4xNmL8jRYJtVsFYfgKqI0SM3wTIpJLmEgTZp0\ngdoUb93t6bvEcOewLBGBPafZmM/KaDv9UcEkDshYL5ZR7rNLTQh2zBLcyRky\nSFGlTkbDNpVFuRfqpWsrcru0OlJBa2kwfKNPe/e4VBBXrkCDy1cBmHFZx2S/\ne19Zvn2d/FWN3q4y/E18VItJCDrvsCpj6OEhPHeeb/Dci+LoGfNhACt+nGzG\nkx51aumafpdyFu02JieWC1PsKqRTs6xq68Um8wgecMZaln0ETsh1zCtwwX9n\nJtLLo3LHWK9iOF3iK+TDtKhZW0Jjsvz5CYqTOx196rI4+Yb8nU0Zy+ZT2ihv\n1t1RvGyBoaJu1tOwi1LNXCxm+xsetls1hEq2tw8Vli+M3GYD72W3ZRLyhDjz\n2ghK6SXkAq+y7hPtI4gf9hrnpuSNDLtBYC0Xap4rwpksCagfBGBPKJqItDkZ\nVTQKKxlETuh2OJFPZ0/2jrjcaE+h1ian8/C9EEcRLmjljHnkkG5RDGDwIP3H\neP8bnP8gETURsf6Y+g0rVfSYhzbxtSvTgZ8zD7nWEJZ+8vjAf888Bn0ERE9l\n0ABm\r\n=F2oI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"9ce38c5429e4fb714559ce81ca9a9f303965fcb5","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.d0185e.0_1602308505828_0.187330817154713","host":"s3://npm-registry-packages"}},"2.0.2-alpha.46ee78.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.46ee78.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.46ee78.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"422f7bee12e53820d3475a67481230cf9539c8f8","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.46ee78.0.tgz","fileCount":13,"integrity":"sha512-f1pvs4POVCetkLaZ8UR9C6io33XYLyjm3VBZGBKelj6JVOTI99K8z/Cwh+5FB67aMbKlzVLqOHBcOkDdWS+7qQ==","signatures":[{"sig":"MEQCIH+30VFsD7TdyRW+x/CYKlSUW9onV6rbA/0ZNklo4fkFAiBGgekX7XJF8uLt4P/jADpQ9AIT9/HAdwENOMhZINx1qg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgUpMCRA9TVsSAnZWagAA65gP/1NCU1IE9AFT9LWBcmVh\ne1DjjmDwIV5AicHriecsjgqpH9OO/ActqxMtsGaUasWC76f8GaLopb2UbVk1\nOPTuZNeYG2MTFkkSv7MMe4XoQ66fPlIa7BscULfFsydnIP0MqNvMzsmeQ2PI\n2BIYhwm0AaCMSyrbWWlH3kszedgWQtoPoBDIq0MQo91Kqep46HIKmlQE3/4M\n3SP4e/bCn75f7zsTRnKr5EYe62bhllGmYue8UD1izPEdQnDdpW8/pzm52lj8\n6UldsazOE8Ld+LpSh1MeFtGPtI7uSDaD2UIufGdxzW5ziFmOIvULftWVNWCJ\n1XLFnZ/JcTKYRKzO31X4oeOmP3jRFqsORVxH1Go5zkO3AszYIRiPtWZg/3Ge\ne+OtqFEnweZqVR6y80AtvSebKTP0CD6sS9hVADVmlD6v8z7OUJ4xxFTDo12f\nLOZXgphPhIq7wQQ2RaWDeomkKCbEjtVaYT8B796EgYFtBmmboB3oU93GFAwq\nq6OA7idDtKgwHPBq8TwpckZuexmckzC04XAUuEuMG3sDDPHqRrVrbKtmQ/OM\nCVxLFAED3P0zQ3Mp9KtI+jTk/mG7QWB4QznxF2U6Sb2eu/egF8vCuGfRKy65\nwWO1WmGqBbhA+tN3QSXGw0bIAw809C7YkvQdQVScqpf6mBj6bdk9sSErVSGi\nABmy\r\n=jfSv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"dd18543dd1ea031a6aabb2f1b941a7696be46d57","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.46ee78.0_1602308683919_0.9380887677955578","host":"s3://npm-registry-packages"}},"2.0.2-alpha.9a33c4.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.9a33c4.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.9a33c4.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"89ccf0f96f9dbc33cf0cba6e19bad575d99f76d2","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.9a33c4.0.tgz","fileCount":13,"integrity":"sha512-WJazTH2Kmi0AgMFfHuNT955xWuLPei7ty7MW0zdL6Kf/PoRgGab8tX84/W9G+1yoUgejNzQGF8MIK53XUTQS/w==","signatures":[{"sig":"MEUCIFJKlf9/T5K+/7RFIGrp4Jj3vf2Cx+nMa/etQpUkxfxEAiEA2EY4A32TmpVyTPLX46202GMxr9UloTK756sRHDH5ItU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgYX4CRA9TVsSAnZWagAAa+wP/RZ9VhMBw1MQjB9eT97Z\npjAL8OzPUBxc3AkzKqws+ayIduFCNcSuGxvxVPt/m26/+YgBTIXs/y8UeCBa\nTABdTl1OgzQ/4ScXaEcivGw60TU5XqUx1y9DEh9hT8FG1H/KHGcbSOt/Zryo\nILRDz3DKePfeTqp9zCgB1H/a5SspX1IM7b+h77q/NY9zLlue4yshmoKyueqw\njG9nQ3bYXtiu3I5B1psrHhog07aOgrM9M+FJ3+6UVSEXBnY+9m3aEuHXA9/C\n9OyqVoyAnkeGsHFsHJtLy0D3stYEOnYLkbbf3XthupYvBOMiFImKuNLFLAOg\n52sEKAdCC/cFbv0AbfDwmo8fkKyurmvc4Ub1tRH9ro8n8aw5JFWQbkQgu3O2\n1TY0qbdODvqPJNgYVZG2TjQUGRtT8Tk2VMuP+YbwAuos5g8eVHA6MH+i1Xzn\nN/WMRS4kzhgZgjdaALnWvmDVCQd02xgwOVKGDnIqIwGf+HyyIeKuO5TTaoak\nd3+KmmtdMf6h917vxcTJG9XX7vT5888K5Xtf/FwLaSA1QUv4Az6RN5EcpZNG\nC3cxUDlR1DKENx8GWkXVxAsr1iHnrU1KhPx5c+W3AfuYbIt9UoRr0Mur6ens\nxNrP8ixW/NNBIaz1re0DUsP2Nc+qp4MEZlKYUHApxgo9vncs+lxXKQfSN1rh\nZA+q\r\n=aQ72\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"6c64db52bee68547bbb4b709170c05446b8441d2","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.9a33c4.0_1602323960184_0.7149289091083761","host":"s3://npm-registry-packages"}},"2.0.2-alpha.a28522.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.a28522.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.a28522.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"4eacfdcfd939dc8aaed106e2fca7b6dcafe3c4d7","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.a28522.0.tgz","fileCount":13,"integrity":"sha512-ERf36AmaZgYghohTUYtYAcgw/ym1o+xlaDaUG47dlVoqiwl4OQX6vM6RpHqFRuSYpjiVTnI904UGSYobd2CFkw==","signatures":[{"sig":"MEUCIQCCb1KW3QWCP3FFjnxaeOHDog2ZBSYihW5/HvV2pqVasQIgNBtJL//aRyp6shUi9dzvDBmlGGqL2pzI4FjKt284VVA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgYfZCRA9TVsSAnZWagAAV+wQAJQE8xm4HF9q8qyCz8dC\nlxwCfOiGCs7QQHLFzipdrQ5A0w456d91nRTJwD3MrD4GY63ZEuAW9GjCARlJ\nv01REEN7Z2L3iE6dQlSZofvXe2LfN4c1avqyBeNm7bMKUkrnW9MOjdTdZStX\nr62j2DdIQXe2/kThN1QdfIpFEXyqSbxbElO7FzPMBewXxIfyUdhLU1qy22PU\nbwy/y+tJ6UTnofmqC6AIDAAzQTZIOTO9uNy9/Y3qrzL47ItaXPNQ/WqXeC2i\nd63A/LHNbpz1j1K0kQhzMJGN3BntzuCekJhGZa20LIYEr5DAjOGzpFNw6Z+Y\n530jkz1D2YA7IHY4rvzCrRMSrom3gpC8nwW22iprd6/1iuIbAo0Kk9YSzR0N\niaiHlBCllLjUrQEbGE4IRcD6vgXnS/ujZ0MZpba/yKMo7HcgzAtBqMr/UDWy\ngwuDJl0ULk/yeJAD0z/5RDbAtcQJtYhKUknFleuRqADy5aIBCyE/B0MhwkS0\nfkTcimLU3D3F+QvNZKnlKZmB+pc/lEfWS909BhH7CikTnVgBIYRnF/loJs8F\n+TRni+MSBiQnSaQe9ENVUy+upMBl8sSqJGl5CgvYKi9n3AHWFoLVmhKDvluB\nWzhj69oKSVodf2zd1lT8VApmBGebbon2m8GaL6QMoV0hq+2TLq1o85V7tFz+\n6I2w\r\n=ZJvG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"de8074971e3de8e6663524bf138d90084af2d291","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.a28522.0_1602324440825_0.5934732258936097","host":"s3://npm-registry-packages"}},"2.0.2-alpha.33c570.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.33c570.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.33c570.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"f80c2de07252ff37fb42c2178a1a7090ccd44e6b","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.33c570.0.tgz","fileCount":13,"integrity":"sha512-8uwtRBUkuiDhs/rxD+aFrGIem1yqaB/wnVBBdKBtegm/VYkVyzP28hkWD/AOtV+b3bcnbWWTBPCrtxOLVz68Ng==","signatures":[{"sig":"MEUCIQDuWtP6pmondvwn2O9dm+OCdzbb5jurbtRLm29MUk2h4gIgFqy2zhHEI4hUA3HZ7Dg4oDcTPwl9ece2a8YWJ7poa9g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgjN2CRA9TVsSAnZWagAARz0P/3NozT06SdpjoYWJJGWG\nGmfhrjGM+zcMrUl3+e4x8L2nlwBcOKzHOGw36Rt2kzywfiwbOHRvi9CGmaeX\nAnU0NR2CmjX9NXU826yxP8OuSnS34K5Hd+mIOvJqHFJMw6Am/Y3q/bdcX+Zl\nxI7IzeVox9vJ2R4mokKuMIyz8/v7V2q7dLQoOxu8rIdCEUSJhtIw++doV4CB\nPMJQIDLzfZhlihd3dohOzBL+ztObmjnELSQzgFgsTNQyitqKKanMXObkdZJu\nuRdl7tBpqKD4K5Bjx0z7Y218WF3tYe8BS9xMeT42vUA9/1GlsRMyBgSBIcfe\nMOvwuwIY9N3Z29jhStC3sGjxVRrgcznkYOEdG2m563DaOTnMQ9ds6qDzbW3k\nSqwy/DeX4EexhoRdZ981hfvJsEairIauEQtB5HvZjEdxZGB4NTV/w7KOO2Ah\nGivVxQSCNvnE9scNuwsLbR+VsIybDNldJlnNqGMyVrqExK00B6//VNTR64oO\nQrVkIutSzOgwEVf986FlJbau5/8oGxIeMsiZ8SKptazu0f7V5+Yd0ftShtWt\nULjHzhwkI089XYs+m7kS/lafG9BYwvTxeWFJKg+bF1wO4Z8PdmLZtaTA3XWM\nVfk9jATqqW1KWbdDrpIhQDa86Xbv3vk2g9f82Cw2ybIkGBWrTQM8GsPIv41/\n5y5u\r\n=aqm8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"b2a67fa3941346cddb0c6ef2acc7752cd4b41063","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.33c570.0_1602368374215_0.26154529784990443","host":"s3://npm-registry-packages"}},"2.0.2-alpha.4cbb6b.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.4cbb6b.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.4cbb6b.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"0da144acd68c26943b065bb111d043a6298bbd65","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.4cbb6b.0.tgz","fileCount":13,"integrity":"sha512-h8JQuqDJX+XKhSRzUr7bElgWKPywlglzwa5LCLntnWhmN54TkTEp67OfcimsRKoM/Z0yNMA93TnfJBDWjZfHzg==","signatures":[{"sig":"MEUCICtWfE/iIT26OJTEwUUK3HOXBrffgKezWIAQlWzgreclAiEA6gEvDsJZbp8MGUSe7TpdzyIIoL2UyOO27dvY0At49yc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgjUuCRA9TVsSAnZWagAAT9AP/iXlDgRd8nT7HNFHaJnF\n6kdOlHc7G+rNLYMCLYnd4MNJnQbZNBF0P6pvO3ZAPMfLLasxaiSevbrMMEoR\nY7/FmPm2wYiqXxGuBx2wm/AvrwXkyiB8B72tKC6UYAl1TEj8MJ1DPkQUrduA\nvxkdOwuwIoB8vop7qu7N6MkeDy78S8/wAv9PaC7Q6AXiKpH8eqkzLXzBZz3D\nXg+vhGpLOzxHd6I/UQGkcXoi8vobrlD62P8jZJ78AlkQHoBq6mAFNPMtyLaV\nJ5VeOnTRiBpezDXnvjJgTq/YulGVtIERKzkoO0HK8WM1fpV9epiVVUcnbA6K\nibFHZ3Db+DNooCP8d+td4jMjJ1p43Rj5ZWUBboRocjYf6FKVleRcyMcYDgxK\nlWRXtAZrNt2RFMzpjbLGgM+9AmQo1q8AwnLmnP9l2fstAKqGpY3obXW/4+Bw\nfGr4tr4L9Gw48l+kQzu7RhfYE9rwqXqIqPttYx7yKGp9Uf+bP+iOBB8hiyGr\nxUNDZlSwb1l8/O7vEWsnSWb5T0uxFJqIRraVDHEVrems+o71yOGn1DeEN2uc\nmEajt0H7oGTEUz5M6TLiCewId/OTMBQ8oYniTXehzWe6nsJP6eYSf53WtYnT\nXnlzD4vEr2EXqmwIGNvi+/WGUQhHagya8Vklufq5XKb3V/276Vo30qjT2kpa\n4Ul1\r\n=6Qe3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"5d0c8b1eaa3c8b51d936fc9bd20cf2e39949d13b","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.4cbb6b.0_1602368814478_0.9376649774100962","host":"s3://npm-registry-packages"}},"2.0.2-alpha.eeed95.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.eeed95.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.eeed95.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"d3d4e38801afb0649df1bf3b01d409bc297a22a4","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.eeed95.0.tgz","fileCount":13,"integrity":"sha512-+8KXZqe2qscgxQhS9MywcUkuhnXGEt6LmM9i3BMFoHj9IBwCu5+ejkRL1kOGHcqG/YwOiTeBhQw/kzMvrgzmVQ==","signatures":[{"sig":"MEUCIEt62qwMnkIoxslP25xs3p8i8GNPpoK7Sr68YaVMu+LPAiEAouM2lmqXUkUeGuDaFfF3EwYfbp1E1oY12aumI5Q/9eM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgjVpCRA9TVsSAnZWagAAeFoP/AkBsTCIXJ00ZH8+BSme\nGyDa2YUOFk8pj4CBCkTK8WUlAB6LOO+uFY0W1zkmo5uqvrhyWN0QC7QYwrhF\n/NAuetSREy/Wh/S91oVsMBin0KA7k7pi9bEV6x4Mv6vfx8Z6oCbqx9Lgbx4J\nSKKujl/ay7r9p+xbHTQKryCPy2q2cEA1siPavd8CtWHSCweWB4dXNzfjdYij\nH2MEFyL2Xurs0K/YRTOlgjrGgTSMX9GCgvJBoMLTRq5KN9MYRalo/8ZEUqka\nmLaxrE6DMqSaHG14eNWMcjFAxzTQSEpBCp3Kzy9LV0fYMKlEGIALSCbhLjU1\nr+l7ufLfn1Nn1JJVVyk16wzGJ8sZb90D437c2tjANJeoyfd1FUUxLxDTK88t\nOT4amK3h48w0j7GDWsakJmGHmiOUY1DFmx/UFl3hAOmL2gqx5lJHS5kB5JkR\n0VnVP7dR7Zey1mvrGvnSInXhKtFzV8NvFhrtGEUkUqEOecmSHwVrwlUHh4DQ\nFKLlvtHqF/3dl2ueFg2qFjlZnGnn8xZCnCJbN/oGy+19I/zpkCCPhr96+eRM\noZmilqKhFUJXuPAL2p5w8pozOyAvpCBcinNwlbkX4mBsIqOMKeSpY0KyxaAw\nnFSYogRowPMsGpAsFjqH3f5E+gDQelGhAsz92m7MHt5IGTmjrVcZ49BB6t8o\nHah1\r\n=5cib\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"87c2fe0ad4e063995c9c05a5c71935b0a9d2d157","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.eeed95.0_1602368873569_0.7710007406082284","host":"s3://npm-registry-packages"}},"2.0.2-alpha.d04cbc.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.d04cbc.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.d04cbc.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"fab12594a8a748cdc21d6a4d1d44f0eb231fe623","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.d04cbc.0.tgz","fileCount":13,"integrity":"sha512-DAlZySNuqbYWMWOIWpCt2JQR3LBSk4NDXAbukbBy0JcfOtaTjtNESFfwwxxPtCxDBQ3vVUJkEprHFALiV3jlfg==","signatures":[{"sig":"MEYCIQCW7pmk+0kc+uzlcVEKtJDyTGtWmgsxxGDaXTthYSEOhQIhAPO9xozRdXOG6+zJepoE32OiaknDhvxiVb98Hp7wRq/Z","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgjWNCRA9TVsSAnZWagAATe4P/2QZUG2p83QcI507WYe1\nEGozh/51hE9sUfHbAxciCgqL6sJ3F7+CgTzhHhdcriBCkaQtQ7s03pM858Yr\n3AtiW1mKhpN/h00sZX644OoZ7Rk2mgO7vs2vCBq8lUiD8N1J0uOuBWCmNZzI\nRC1VmbWeUvCpc2E2VTmSvetkfPQ7KduthA0mjZvgc0xx5nLyV31B0yRHWgH1\nEzlWfR5KkvjVoVV4WcUASe4k2b57lo6SzhDHjqtK3fEDLpokb0lp3trhK7j6\nhg3q0GvIZoaXUUV/VsTujIs72cV4oRw1zm+d3IBlF/kJtEwwc5/VUlZVj5lh\nWWl7nIUss4IWKu2alZ8A1sgrD9mYhPq1WxpXL9L5iDGTJ0YWH0Dtxjtny50Q\nornynSoqaFrUvIueLe44FKc6vQMUgQQyngss8bS6amLnFHs4/Nye1woAW0MZ\nGv0AptWuOlj9cWFQXKySxXAM2DZgEo0XCvCVGcNzNgcQVriaRh54DodXuOba\nFqPyiGPn9duM3IFFuxpr55LgGXpebctKnQqrUbeYRwxNDiGXNCaE/is4WoQr\ni8uT94srtYhtNz5BJd/zo1r4B83g1QYyPYz3+OKJHL6eKqzShFfLbH96z5v3\nTuRzadmoOhWkyTfezZeeRjka0Agzxn2QHuyYjPqn/TCadhB6sqCouqVsEeT2\nXjgX\r\n=8p4g\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"70c202847c76a647cfa742e36a610d1b06a2326a","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.d04cbc.0_1602368908624_0.16237863321626844","host":"s3://npm-registry-packages"}},"2.0.2-alpha.3df899.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.3df899.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.3df899.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"3a5bfba3b441620935f88da7d786b1a87f935dea","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.3df899.0.tgz","fileCount":13,"integrity":"sha512-KgB0fk6HacUVx4WnK7B7sLit7Rew0FRH4ESrArhg2Fn0aNYjZGev4y3L4ArDoeVm3BBFapaa/kM8Rtj+ipAEvg==","signatures":[{"sig":"MEYCIQDYsi1nTQZkBjw9zl4+J4hPZRhzCYHbKB2r1g0Ygcr4eAIhAPPwcJsnf5rXCCPFe7ZQXcBVKI7PwZrrGrTBBgJrFmf2","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgog4CRA9TVsSAnZWagAAaCkQAJiWMr4v9DN2Thz/F+Wb\nCFnRLT0MDFCfVY8cfsNwe2I01JQTv/CA1lQwlddpA456TFcDUqVtPrUml0Za\nciAvO8QmU+0DuqMImUH3qZAXaC02eLZBbQVM1roTX98IK2gSxGscklRMvpaz\nxzv8p12CuMPgCuOwvY4KR4OkMu1mNXMVqqrZtdHpkU4TeeD2UneTPA0nxxPD\n+GQbHMoVSGB34l9mEe/07HY1TCdqf7eU3pfSOLE9SMufV2fMwl4mM10X+Mew\nunacuzKSwf5ob+yFDboiinSywAtQM9cdJWEozlPtWDMRpjyJwD97lAwwzTnq\na0OqMRjSSk/VqVexn5P3xDLrimqqhPpUuF22xAslQCiwOEZnfH+qg0xFIJ45\n5fEe27k+kfByorVAaQnubLTRCE/9k1dUBRPNk7GBdnfXfuo0Ouscoufi5onX\niNSilv7t8Wv6pq0Zl5Cfx+0hMVvWysMMnNXwWbzQUvvROPWmrhoGyYR9jQVa\nY0oUay6nfmlqD1L1/P8BbJH1YqLdnojDWZeurBtcIwteWtixXhomGkVBbR2g\nE5Am/VWvmUMnVUMmxAsxgavFaEoZ+Jg/RkSfDVOedDWoek/PRukgLCwbDgBp\nH9SZdcJQie0/gHW0IwLCaP1qk3F7Ou9nfoJ+PpBjLy8juYqmxoYUft+feAmb\nxPUQ\r\n=oSKb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"04efc1b80a5de57d5df6f86c6aab5015dd6d1cef","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.3df899.0_1602390072135_0.27806986744368833","host":"s3://npm-registry-packages"}},"2.0.2-alpha.6bc470.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.6bc470.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.6bc470.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"fa0e4847f4e031b9278001f15ccc8b127032fb14","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.6bc470.0.tgz","fileCount":13,"integrity":"sha512-v9QjmR5NdnYwvhmtmuUft6RGxJAGXrJVfyH/r3yXVSP/WwGo2Q7Mu2TLdh32VLiItBx2QfYuJuJnndg7vpBqxw==","signatures":[{"sig":"MEQCIEqhN+9jr/eohNsZpFyvLfyMd5dCSJ38zpR34+6B4Bp2AiA25XDoicIWPasvKDf0Z8CtWgxcdvJqf/ydtYkXQB2i9w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgongCRA9TVsSAnZWagAAv+EP/jrGPOZ9gG+JseQ1xbBK\nNapxi/nsxKL4vFNyvO3Px39N9ZkdXHgWA40ms57v6kgycUWGqdJy85N0nO19\nsvz8nf4BxP5biPsxXK6ZSlHGSCOc9wJxzk83cBSTjp8UBKsI1CMAfRts+Y3z\nesruhd+Dm/DQtbiV10omcQFZqL16y36prIY61n6XFwHmg8VRq6SZzrVwqN9x\n5iHkuitendkfa5WXPSXjfPyoWvByEEwaGTm6qwqteCCRzh8AFyg9UI0GIBka\nVKFxgASraSNjnYwFveem1bW86pGbCH0mG5mkfVOO+40dYSsIRcIVzCO1BMfs\neU6Jk5sMDcsDVnc7cgrbg+H3R+TKT4opKl+uH4nHDCfeRM/LcNxnDUzyWZxC\n6fx35zMkzeOpAMfsYYfD51zJaMZJ90QyVaJXCUT8gJCSm29sJ2uVW4FxaF5X\nywBLcDWE1LzuTotbl7enUwH4uailzRDhx1iiDnV20Qbu8HzdT+Z7/HD+59iF\no+FlwJ5TEGIHeK0yCqP+GqAWaC42MjtI7qetcsXiilfjNauJM8Rsj5vJ52nI\n6fMeaD+/ZfPgbyGMtUPBV4bBMof3BtCxp87A/PNb97AZzUUqovXAg88GYoYW\nKLU9sHVoldBgm6GHcCHN3df9O6MeEdwF/2GtpuZI17EeIeZUbG1Zcn1xZ0LX\nPSrf\r\n=/eWz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"def59d68ddf037a1b19b578343aac6192820420e","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.6bc470.0_1602390495832_0.09372227801508792","host":"s3://npm-registry-packages"}},"2.0.2-alpha.b038bc.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.b038bc.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.b038bc.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"c6d6e869ab5bd1e452ba967e85c828dce6be02f2","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.b038bc.0.tgz","fileCount":13,"integrity":"sha512-6idCjrMQ4WliHx8MJ1cvosuuIejnmSB/Jz8cXHxs4J0YU3nip4nNQUr6T7QRkxRE5Kvn31x0oDZKajpMFcr5wA==","signatures":[{"sig":"MEUCID+duXWaA2CAuvsPxhayQFqGXOkMDKhr4xr6kwOHy9v7AiEA0cW034q1vqLwgG2QK7R418UtsWswQY6MdK+FQgFBXOQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgopqCRA9TVsSAnZWagAAcNUP/00akpxBGFF2XgHypbzq\nFiAH6BHd+XsroY0Pc+HC8YrTH1FjpcNw6a4kbW/EMPqKjjVPayAl2fSnzOfX\nlmaMc59xqXdR7SkkYsTmAkspNmPtZRVW9TxEoUF7+HvDdgE9RfQQCl42/udP\n0Q8mnqM/a729NHlryzKhaRVWj9O9JEy+zXfPR4EGA6HDiwQUlsUj3wNA1iw/\n2ggxgMw1Sw9+3dd7osCZdQfkbmbiVia3qNmnwr97oeE8NnX0HOQ+soNgUSv0\nwRSIJGhNGLWlvdLkvCDI0x+DBoLiq1/6JGfnYN3VmKSTx/gjPbQL2orgoX+9\n4oX4syA4DZIf5ykyfQLa+P+/hyLItx3Z75EaOyaFG66KU8/afMVkIMc7XrrF\naadnC2a0wQ2tuAuxI30MJRcRB4JoHAnB8szmrf34Ejp4IdSGjdBP/LoagV84\nX0FqYFnf0H0J0RbVhBywJpWwL/yWQqmFrq9DbcBipHArVGUYjV+1hRmqENdh\nzeHvpSu2JzghzePHghpTws28xHPYaGolBMDq8SDrtrKjpZQ6CH7Go1l6APeD\nnwboyKN4WInxwd4+o/VoTlHyqHYuuZIXYo93k068j4jOVfNC8H6h2q1Bb9gb\nmq/W23E1LILe+jY8lOd432TROK09pZ1oCP6j/xccePFdY1MP5XLV/vwkiGcc\nzgas\r\n=ERpk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"5d5e918459887d4aad52909f9237aedf8081859d","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.b038bc.0_1602390634384_0.8080913354375852","host":"s3://npm-registry-packages"}},"2.0.2-alpha.03df2d.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.03df2d.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.03df2d.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"5427736f5aeb4662979b0579a287982f1a5340e5","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.03df2d.0.tgz","fileCount":13,"integrity":"sha512-aLT9V1EIwt87sym5wLUpPgHVYkvnKrxJLGLfd6y9n1XMyx5IyYcmKx37fSJSTdiQvV5gf5f1e4y+k1DJ6OTCzA==","signatures":[{"sig":"MEQCIDQm89Si+Tj3vGjfQWHIUaPYTZ5mn+D8xLF1nKR4trlDAiASIAiqaWjjZcMF+1IIgVZW/4pzr7TUIE3jpd8uUU4crg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgov7CRA9TVsSAnZWagAAzmUQAJR7AvJW2kHmepUv+rEQ\nrLcyCkcfqSE//g+KUvdfsNV4fC/Aajj37QpEOM9JV+1C9FUSSqj44V+KCRd1\nJCk2BW9UZB5DI/UzUA3jj47H8NjAAxAhOQuvBNDGUUX1sboa9KTs2HktUvEs\ntIGTqRUlLQ2XOS6XgB35JdJZEEFmLgpWJUHvMOFoC8Df4CQaejkQLEvyb7Ij\nY3jooOV0hyuIltofAztJvI5bX8sIpTBuAoG0YloIB5snX90tm/is1pB10tyv\ntoT4tRyZtjko1iH7bTklfujZqvy2Gn4LPzXAmipnzy2x60JWtApBeo89U3BO\nLwg3C4ezjwDXkvM0Ncy0lTIL334lkmiTNV+cAFERk8Br7H8+7XLEB7+kvNkM\nuAUPw+cSHD71Ary0aDHyRhaaZ/GO2TfMCk3HJsMEu3IDwWya1xJcrX1Zj3VK\nRyAqSyMITc4kqd00fz3G980ovXjBcYgiN/pMrvRlQ4SLmfg7mRBQ4TpZtEAD\nYGOMnX9olV/QUHy0sU6H7EgDdJ3LpPOEixC4C78s0NuiNrs5A9QnD1elxBap\nug1TcufLDg5iu+smMPdQi0zwsbfOJPvwBjWjfxxYU9ijuvnDldcMMMbvuX9I\nRPeGF0ws9TA80PonNFPytly5nYzeEYoGBRi4xZvrP9RLen2UNy0ziNElBhRB\nKWMr\r\n=p8XS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"d190d34655abc634bd59cc1ab7afb9a5f90acb48","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.03df2d.0_1602391035139_0.6377250826508316","host":"s3://npm-registry-packages"}},"2.0.2-alpha.52ee79.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.52ee79.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.52ee79.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"bfc25369632d0c8e97e0376bb954407e8f31702a","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.52ee79.0.tgz","fileCount":13,"integrity":"sha512-gKQVrkQOOMwYZsACOz+A8WZcwSzj6COKdLk1JIYN9LEh7J3fKiO5Wd+sBWEtMOF/gbURQXigaGqZdCn4ma5W+A==","signatures":[{"sig":"MEUCICvwZ4otnyFC2riwnA/rsbyRt0nTCwdHnArbQE9/j0kEAiEA+WYPmF2BqzFa5v8NHWKSB13KJoodTRqdIjZPYo2xp1E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgowOCRA9TVsSAnZWagAA2FIP/RsDBMq1fjqkKu2Qihno\nDgbmzbH1z5vNB9RlNTO/c+WupTDFnFctoOKirsv6lg9ko2FpMMnozG07relo\nWgn6tJNTdbF8ogfu2eHdYI5onG8ykKUyoE6DH7ZOZwCzxLuL9OyhUJAx8DLy\njtewsiPzEsApuZAFdSJQpLKW8aiOvRlpSElLynrf4xAtJeXCPkI5ADGKKjVB\n6Y2+bkM6uFpg09H2xpGXxv/OWFWQonUZwVMVcsX58i1/BokjTPBxfaBW2afg\nZa/aC7w+NFHRirVyJdGuUJBXIO4nGOL6GUzTaU6TERrSwnhMnAbDhGVHn2vb\n1xjILzuXEWjRCdvS+95YZPukdYktHu5t22ecqgAu3LU6035Gge7mERlCpdw2\n09IlK0see43BUKGRwa9iFV0HuJR9ofZJy3wNeqFGloY96Bk+bTXG1CURBofk\ndaikqPWyfe/bd52IXECc4mj5v0adl2Oog8ciXyeY0+9dS7t32Q8SwzEn3SXh\nWzuLH8S1eQ1Kjrvu6yAA7t5yggMD1v3ylaJySUlYqUsWc9uGKYcBjKsL9oum\nz64GzcVJbnGsz0FzHs7RsytdqmSpblpszjqs4V0CnQmCkIR3ozJZci5PSPwT\nYu1cPUV6dh8QyuiTTB2uzat7032WhcCQ+Q4GUaeIOAWW7+gbgPRtKwipfKMt\nEYJm\r\n=VD30\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"6531b38acfffc7129b954a8a4cdc1c6e4d3ab3b8","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.52ee79.0_1602391054347_0.5663606916550308","host":"s3://npm-registry-packages"}},"2.0.2-alpha.a825f4.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.a825f4.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.a825f4.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"6fef735121a33018577cea384a9287df702c6563","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.a825f4.0.tgz","fileCount":13,"integrity":"sha512-7h8A8w/C+51oMmTeyx931Jqzc6UDkfTg1YrlIWXr++AJtZNmg1jScRRGYGp5JC9MTUQf1+mupR7yYcEDY8Muaw==","signatures":[{"sig":"MEQCICGdwguLPHmCJa4XV419En2cfnkOySWt/GJpgIJXqJ/AAiBevFg+y+8AlTaEhhV3JEjjT0U29gjHaRu9CxwM95lkfA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgwQGCRA9TVsSAnZWagAABLoP+gNPAgWs1lA182FJQhiY\nQiz+szAPGGYtxdSZ2X7lyy2gjYYk18slBIjXGnHrrYcS8ig2dQt5YIuSrHcX\nCg+LK3y0nParGmnB5O8+Eq0ph+zNApOXuNJrWt3KtE97C5g6b/68TI2T6mZd\nqHJpJxBNWH8uWJAyABWttQrfqZGsJqadnnL6FuIot2Frbz7DupLZH7LUzHJ8\n6fMeLL8jmWEQm/YqqOH7GRV/zZlDDE4ImBXpTSfocLP1TihzPNwJdhGLEFuh\nTn35GPHQmoPGiG/+YxoMnN5afALdQtW6ahh7I8ydpQKOn0CYcdcF4rvtIGBp\nQbkPL23KppQ0RGIjqZ7wxfObI5HmMLNiaFWA0mNOibRp6CQQCLoJm1RiCLx6\nEu8wwI5puM8ytK7Wn5GMpgmB3xl8zqjgpYhyjp3a05wUUk2obUCiZ3RCW89T\nLlCxAnIM9AU8Cmdsr6GgS+hRGmvhaJXYrpmMXs5wzeiRjFErA10s+cpk05k+\nYrqVO5FpP+nH8nx8I2fef1gFbD3ld0y6eYIzJdrmzmt6bwU5GwRb/X8C91f7\nBQfROfJ4neBQv+KseJoSgQva8qsMAZJss1nw/zqWz3jU7k89SjBDCqKSqzud\nq/urQ3LkfAaj/6w+NbX88ZaCdrsVaVlTpDbUO44ku043aPD9lo+4a7yi3jdT\nOkmv\r\n=SaxS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"0727c2ce8c7b13c24fadfd04bb6eb72cb731a359","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.a825f4.0_1602421765585_0.9617919306403868","host":"s3://npm-registry-packages"}},"2.0.2-alpha.0b9e7b.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.0b9e7b.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.0b9e7b.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"4013d390c8716879bc5c0ab67787a48703485a72","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.0b9e7b.0.tgz","fileCount":13,"integrity":"sha512-qDYlwvCGI06ehSFoidHPt86r9T5amoM3wGD22Z3RDMAZrDTyyL7NOo1fKNK6N0J3vto+T+U/wXzAxbvo2xOnpA==","signatures":[{"sig":"MEQCIGsLk3xjUUGVV3G5QCvm3PsomPW6gUpBntnGudthF+26AiAKzOSRa8wX70G7apMFRjuE7Sn6NmkxlolkEp9x+bnJdQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27414,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgweQCRA9TVsSAnZWagAAgtcQAIrl0iyPpDYlscZ+DPp2\nMT9EJzN3pPoP9u6iqWH8WOtAhjV3qaKQI+Z67I7gXyLagwu6Ot2qvoMeUuvB\nG9wQnQIGThXtT+gbHIdcsdWg0J0S3Q9Tpaz+nYeHOluf3citXt6YF27nJUm2\n+VyBgJImI3qwx/LNU/np+Rk7hyK03tYQLauXKmVHpwsRdKfXCbyuTLyBZpe6\nIfMiSb/inNr/YgmsIMPQSux8h5Ve+kLIXD0KgcNy/SbjjS7CmS87cEMYWsli\nNUdG6XMV4wd0Qcx97nC3b7ElusfsV/nqcKUTjA0isR9SEpv6SKsICknNyupm\nuSnAf6Bl1PAkb2WwEOlZJ6QRvklA/0FatbH+4zgQo3mrPY01AR0kv1Q8FUk8\noSdB0ybLTBuNx5Sv5+735k8+kxVGQ7B/jwx6PSK0MABpeRcZcqYuW+RvL5JK\nBAUN3QWCg9KRxkrQ2QnFVAuth/pa2Hb0I+3AlBbC/EiRg3eLbt1QQa/C6Ku+\ncJdZOebx37qebdFoV7cAbHAFHTNdfsGiDKnfaLivKIs0Pij4fSf0py+J6tie\ndCmHW8LbrwIrk80Fxt2QSiRtiUuZg7iX6OmB/bG3xh6BFdaMMb6Qu2p9iMvY\n4TDzYP9hCljV5xttiSa2L7m7He5/ZeZF5p+RWWUp6/58lYl0mT4D3m3w9hhg\ng7k/\r\n=Er59\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"703932af923aaebf6484ff9f22d84049216d9ff5","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.0b9e7b.0_1602422671892_0.16908274089015185","host":"s3://npm-registry-packages"}},"2.0.2-alpha.800cdc.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.800cdc.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.800cdc.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"f332cfde960d69123c312004eb4ad3c8225394b3","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.800cdc.0.tgz","fileCount":13,"integrity":"sha512-2FlyJA2yGueEXmYKj6D4AUzo+gh0sTrDLxNdCsaN3E08AVUCfxbNbkS8uqcku45Gbcs4zh36Uo/5RckMuosSDg==","signatures":[{"sig":"MEYCIQDanT73ucWt9hkt/9Z9ilNNC2K9vOXbfA0dnMZnuWWF4gIhAKgAwu/ZZe3QI47Zc85pd7P1CdzoE6MsD5QaBgHVwx8A","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgxR3CRA9TVsSAnZWagAAzYYP/2K6OVWYWxVDdu4u6As2\nPo6WsGp8UBvaoYt/+SwaxKyu+WFkvleiGZ0TEK++S7O2QqFgJ+kTIyALtvT5\nlHXjhtiuP6362+c/HrM5sYLLyj4ee3+K02jghDQNSHPBuhTw8G7mwmoy7Odz\n10x70mYpfM6/Iprhoo5F2HuGKSvtBjWn4sFcbf5aFgV2+6f9Ko1/SPKjUxaL\nWlU98ZrdEd4QUKN0X5vtxKNo++dq5zcW0DfNhPstUlm7c5lIbZwlrUP1sCYs\ntE2IIRNO0ofpMPepMuJS+73dPdGJAF90a0JeqebsKvMSVfbU7gm0cxJiD1di\nHdhn1L4yxN/0BWa7VxI5LF+C4aaw10iJc1dF2G2qspGOwbGiOqHGN3tR1xGi\n1YY/jbTZXN3s5OB0HP7Wl9OeFU2fBL50R396MZbH6vCIYUeqHdnlfrsd7J9p\n/vrc0ikvtBGYlysxOhkah/vNqUmAlHrzc/zSWUFQGAyoZmFA/ROBI7mpCDrE\nrDcvk7+pkfrtElP6KQVzO1JUVF9Is2k1u57k3n3m3cm54hZxe8kcVrg3hIXg\ncLs1wH1av2NSDRu6V2hu6UjdAWkuTzj/tNHO8oafC5QSFgTIkdrmtE5WIJSl\n7nV4M9cCubrBeRcm9eyGogWJ4jj044BsVPCw/hSRvIqT8tYKbKXhDXHMlaTu\nIvIS\r\n=Rur7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"5fb86e8ab96e6bd931141b468a650474728cac67","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.800cdc.0_1602425975163_0.4605509023497605","host":"s3://npm-registry-packages"}},"2.0.2-alpha.720595.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.720595.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.720595.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"ce032969eb71ba9a80279e30567ca11375270d38","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.720595.0.tgz","fileCount":13,"integrity":"sha512-0nmpTfBxTtjftIwZ1ddSKAsSGudS9HaxPjJwlnA5xnZJlJIUPZGKH4aEKwIoJg4iZfwpovWGz16oNIgWXKG9ng==","signatures":[{"sig":"MEUCIFuaeKKtst4gSLJMu+pV+MkK9GbyEptunt48hwmdVY86AiEApLCjN/IVOGimjMHT/t94DTN0IdI2oYHjL59djhnVt4I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgxYMCRA9TVsSAnZWagAAjTEP/A3UcxcLG9pqH6aCk3LC\nWCwcM6RFXQcx3GS4+6If/9oxbCFXXPgO/wJcAbAMgYBakgnOmMsATQvJfCkD\nAI6Lc+p3uIgXb4ktQCU1IUlKBtivC0Yl89+cQSy2+kSAWUkYXFNarrnh2yv1\nljIkKxnR7fs3dQqsDDdBleOq/MMlWX5S8D807c1WVqY6YtyjnsjyZernIIRc\ninr0Ypwl6bV9CVWwCB1IdrqJUxKUSSbY6OvBbuUUfEsQt7uShxMfHBNMWvbW\nZgKJhYBQlb04+hFXPsD+zrb7S6DdvgYyLa3OTrlpYF36LaHAED0dMTX4Ugvg\nccILcMEZslVWhLuoJg+ylytT1jT+ToJczUHeoGPmOwiws4/6OS0jNDrdx5p5\nFRNtEAJIFI7qNnmWZ04DMXm6yGlbeir2Gx3HvVGQXyma+O9RAsVACztT6D8+\nT/ETZTggdiGjHAEczjos86lGNgYovnlAkIenxOaW1vgIIczgk3rPvHOhajrP\ncgUbx6m3HNoOKrYIWYMyjvFCD21IguBOn+JWmMI26StEyT/Ffq/APwR2valt\nsEKiGx8VnHsD708slLLG8BNLm7pU+kl0uP29beFzdvQKrnVXFr0fm/TP5bbL\nohwVQrYsxz3Qn14L2EPqF0WmiM0RS/0yA6GoNtIN50udu9dvmT+KRJfeyv0U\ndwE1\r\n=5Oci\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"721a135805aa20ff3793157da49839601ecc0f00","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.720595.0_1602426380075_0.9514541037984183","host":"s3://npm-registry-packages"}},"2.0.2-alpha.9c6775.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.9c6775.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.9c6775.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"4ffd0959515d463e7b7d9df07070fe37d010abbe","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.9c6775.0.tgz","fileCount":13,"integrity":"sha512-Ty/pg3r9tVY4RsplajxXGW61YVM7kQTNTjlZdUsyXG1OAL1uxPmG3oAuo/dvX6AaPT4c+rd1xTKFF1LULUI8vw==","signatures":[{"sig":"MEYCIQCBQDB6PWQGPXl1svF0dj8b7pfDBTuBro9KI4Udrs5lUAIhAJR3KsSbVlMUkAyxa43aXrbjhHA+SZx8iw5+J9qFqS53","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgxbmCRA9TVsSAnZWagAAkr4P/jd87GQdOjQGfqodULCj\ns4hc9YGHUFCztoxhZHoYR2f0dMZM2m0Zn/o/v5Dc4cqPn9ZwvZCZB9CQZceB\nqtZXvyhsfw83tDrFicMFGYVhZuD/WZJ3RtM2mxaSnkMBAEZzPUZkL2Z7Irxu\n5xbbXl9YTM5pYE5ZMybKTsXjciGyjROcdvPvz/b0tIS1OzWm2Wo/dvF7iyb7\n/rUU7KxoxyihyzfK4Wy6L2/QGlBt2l0YrMBkDVSK9Jq1+OlEfIIIG1m+yaXv\nTskE2mA78bcs5u8bjEyAehFQK4fB8E0IKvQF7dx+HuRR00Mx+3uoApyvmoNF\ni4VS9A8IoYWObBg2CA09hLLQNPZNajxlKEUpnz4P0Fc3gWzVDOfUeq+D3n+g\nAvsc3uvCjbda9tyMMV/zE0nxrP28ednf//KfjRE41O0TWLiuw5n5SO68J1MI\nLQ3rLBTARe40Mg2S6n/xfaMwyCbAVtsO5C2IJTSrxMJGGutmmbImXGQwq4bD\njcTosn8mXS3eDKrKgax1h+uosA1OPwoItj7SGRRXwgadlY9zCu26QPkqAfYY\ntQWXWFZSpXynrfqsU8HvhAAmraVldCE81oqNxYzks5z8PBxwDzZgN1j2BLWL\nDuCMwCpjBjnj4TQCztGMU9k7bWt6Xce+ASelgywq5PllYncRHtSKeg325ibZ\nG9Yx\r\n=Me7A\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"8d1cbd942d019076ce0c6cd8bcccd3a2b79ce133","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.9c6775.0_1602426598332_0.5005552347514801","host":"s3://npm-registry-packages"}},"2.0.2-alpha.2d370b.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.2d370b.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.2d370b.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"c305f6903b34d122643dd1ee16e22e9a728d878f","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.2d370b.0.tgz","fileCount":13,"integrity":"sha512-f46r7dMwLXkEH/YeQKPe2hZVo4CJQiJLeNTTFkKQWs0AGxm+bfx6GCL9qW7xbRDxLg2R7Fg8EJvBrtawgaw7hw==","signatures":[{"sig":"MEUCIFTyNR/nCSV52xuezV4ia1aoI4495XkqJ+B3tdQf66vqAiEA08rov2rdXt11q45xlZz9loxT0UrANVPyu6vHZpBhJgQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgxgfCRA9TVsSAnZWagAA4KoP/RA89qjMTY31VmlT592T\npxwfSCSqVIyFJ5qv8cV4ttGjmr5sZXoAMVNltPxk8og3PUE6X2tP/3KLgI8m\nLAMBhjK0lD1MclY6yh62+XS9JpXp0VOCr7CVM4AaZd9U6iu/I4hUOhn3Ges2\n8wJbQiM9Eje/lfGKvMKMuPwCYJ9X7IbZ5vBDumin/qLZRcQs9SEBIOJ8LHOU\n2kE4vT8X5dVd36ur78hfhvEqgxlNMdWtv82cckZgOgYs45+WhYI4tLWffQbR\ntWM07TDhh1Qlc4OLEYbgQwSUZZ/g+YHhuRwtoPd/ph4Is3tHmphGLAgmmq7D\nywfWYJvuQpW/Ena32NzknXjYXed3hQlcUlP/aZOIVN+AAcLuFDW5RLGDUAqV\n9rOYbZpJ1jl2UZF4CkYWtVNwk02aXFw4xFMYbHNM+pEs03stz2ammP9/X21W\ntbWmen7oRhxm2inuvraB/M4cj2XG/9Sf9Z2kbWaQp8AYHqiMUCNE/Uv7qsjC\nfm8zWk8ZlEzzfK/vGgyp/B9J0pPNqn1VlMX7vy676C6/nYWPbdaHAcv9rY28\nXnvTcZXXHXYnEmtRgVB0MDnTfwMi6T/wqnYJnPYd82c1B7THLxTfwSNVxyyC\nSCbR9C1nZ39srZn6GgJtD7ZQ8zhUZ+s1LUw+vif2OaSTNG46hYgXPOvTx3hl\nTFrW\r\n=4/QK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"d29fcee326ac7f5cd3d5a4fc7031acad6511872f","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.2d370b.0_1602426910688_0.3812870789207419","host":"s3://npm-registry-packages"}},"2.0.2-alpha.438f18.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.438f18.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.438f18.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"52b53c063fe903e22eab9d745b10a15cd0732e1b","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.438f18.0.tgz","fileCount":13,"integrity":"sha512-gjbdHDcLEW8jrSKX1Ed1ib5u9GtXbB7ltStSe9zojEF5lcOAnFHpNJbymSZYyRXIu8Bni0cAJsgY+IK4/B3RTQ==","signatures":[{"sig":"MEYCIQC79oXpgupmSGYhk5lHHCXDpnryPNXdfBBnkzdiTgmUzQIhAMmvyppv9Oe5+BEWBa0eeYcl5YKy6qNLC+TfV9bQYE2R","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgyIwCRA9TVsSAnZWagAAu6IP/Asta08q/TYk4OpdN+nK\nSWLFqLk3Vg5pNxmHHQD//T69Sp77cAV3DoULL8cQnzXTSnR5UQG/x9Vy5Rpi\nTjYCvv5chCHONHUXSeIGJc9NhONzh84QATuDm8NQ8XkaS0ay35yS00sNxk1y\nAi3SWWcLp5TeHVsvV6Ri0ozNcRhW6guQSeAAhc8XflDveKXhGP0ZqHpYK2p6\nYoHimX2LJtXXhNKD1MY0H4+NiIjPmrsAEdhW8u/EsUoizia/VWYca3GlQdL8\n3tPNpmwTBsh6AiPJuRUKcA2KlNunRU8+He6RUlhW8UADJL90X5ljnNPCFLHa\nWEsoDimRQPtxQQzVRl8s0LNYgFo+TLkYaTJ/kmv/efO94ZcmTnoLNkGaT2W4\nxrr79RWshDMrNPX8qBgJc5toqfgh7xdwr8kIHbaxkxjFAoVcslyYHPOpClMN\nrpaqm6LGnx/JIe/FJ+7Dt6x4Stpi9doDJitrHD/4bpE3E7X2kGSUqZwIXiyl\nW+uMSiIUUk9dFNiC067FUAeWUb7K/+rqRIgZoWQ5LdWs+ckJQ7FyxRT7zGWj\nRNO2zOSF5rkFo/jINytA5P1QF1qmn3vzmzlSfqrLAUVTbcosuxaocNzkVwZm\nCo/Jt0ogYPAFSF1A+wgIxyvktwz0CSYwpjyEj8L9eAAiTDMApZmuTvr4uiFL\nHvTZ\r\n=A+gG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"614bf0860a8c3c4727beabd0ca3d197ab4b5a992","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.438f18.0_1602429488409_0.18531666776904632","host":"s3://npm-registry-packages"}},"2.0.2-alpha.9db3a7.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.9db3a7.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.9db3a7.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"139978d098cdc4248368d8a9a25717ba5a6d41ec","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.9db3a7.0.tgz","fileCount":13,"integrity":"sha512-7H6KwFPET95UJ+1uxurRdtxaVPaDoU3rzHcYVHAD27hT6xfMDsvGGpYUKx31TBHY5awADdWBqg+pUnbvafGf8g==","signatures":[{"sig":"MEUCIACjMP6u6TbOhN9C0o/RVtuyeuBvPUHTZGPJ3falsU6IAiEArkxfzD2siOMuzOPfWcie8QdHjq49l6zmwfkjO9f0yQE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgyQ0CRA9TVsSAnZWagAAZ/MP/08K+rfqWegnhbckFp/O\n/sAjDJdzlzKw/jis6URP41UY2EucryxFWaRjlCCWgCDN5sIPqFoBYvEtES/M\n8+zNDtAycBUYCUnGuvj5p31sdkCRkoBLbxUP/9z0wXnBYD/7w1Hgq4alxoPi\ndpNSD7UdX/t6fpMeZwEMXP8A8Q7lPCzJFqAJlen26fDxu7QJjeSMkaky3WKp\nlmpkgSnt+raj+iei3LS/81JRReRTjpm8XhLb0LP/cF2IjXm/MKfuXr6eWiZI\nazC249bddl5VV1dmnHhi7atYuSwikJyiHe0SKJB6KjVrbvSIxMRl6FjZMzq4\nrHZsuv39c/pWNOpuKYVYG444cEQiaVbNtzCclJad2/UMbJRZUzGuu2k7cz5W\nSIbNGYF2vh6og+c64VRhmBkHtLwZofix1ziJ2g2hTZbhRqm7XNRVxSvuoeDO\nAEUUgfab/6o9G2kwzpVCbSMpkJnNht1Hjdg6oW5ypdmWMkaoiS5gLpJcszfA\nsLK1MupoUxlkeuOmf0TwXgXRgZ9keW/ookOsn2sEbOMDdMuVyyvsGyEI44M2\nni9PeXkHzRlpoU3W18u3OTN0EWACTVb1lRmIoRhO6SyTus/M1aA4AzlVkHnj\n9UvcXHboL20/nZxYLpaDAHNS8fzhrAzaMdaVfb+1wzkGsZ3dkJHlGPueSa3G\nfpNL\r\n=Oe2P\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"d890deb4e03ba37760c561564594cf22519adecf","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.9db3a7.0_1602430004267_0.15098204410922422","host":"s3://npm-registry-packages"}},"2.0.2-alpha.859128.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.859128.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.859128.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"72f37418008558a6b31b0bd5d435137337aa3235","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.859128.0.tgz","fileCount":13,"integrity":"sha512-2Hcnalq+B7T5jEkWlQsu1WlfzfFaa6nNQTmBI11jAJTIOD8/zYbIfQ3hPckO9F/tnLcBCKmrs4a+xzqH/YkrDw==","signatures":[{"sig":"MEUCIClHR2HZ8y+YTP/MmIz/rzbNRh9DbSRZAGOowEYDgxi2AiEA5KqC3EvLj1uRLx05N+GIWEDYvSEhbNfDWVJ/nfme1bs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgya0CRA9TVsSAnZWagAAJBcP/276JoP4kfNudwsg4hJZ\ny1lp7kOUKoKj4PdAdpjGpIi6zLnx43M6zDYrRPCTsLxN4H5ODcSclhQ37Kcj\nbem/prNZ3NqQvbpqoF2bSm+deB1L7LbGlLcJgFNRH5MDes5o5+8GVUeI3+Wb\n21Aa1BeU0rzd6GCm3y9jsRXeGyvvPVSbF+e2B/+VahFUz3JIMZIxn+8TjGkF\nJTZQzZsXwi2qKVOxPp9mxYUkg7jV+8QxWAit0Z2g8V9Iu1J7pgo0GlGXiKuX\nq/3iYP4ownG0ckA5u1V8MfV5BIl3zefbDW3SqPxiN69NNCguVRd5yFl6Gfa/\nAW2XeKDsa4zg6BqetyYvCqdzMc1gzbMeJXA3RlySUpABOKOXvS6iK6wK+Hkb\ndTWYFe/RHsVm7i1T3ythfLFuO0pb69j/5z/1udAhXZxVeg79yVmcKIxnG+Po\nU+ZzDTHo/qaaE8/mhoLTgSBeIBPUsT321yhDmFVnZoQSWtsPsCTm0j8G8RyY\nNygvFBjGUklt+Omwo8Sr6s2P5nL7UuoxIK0ZmuPcyz4Vrb6qJVzpuv+LHb67\n3hqOqnP/lbYkaT0lNarCkZRspKX4jnmGE7XQObqneDOa58PCelRmohD2qCjj\nD/KFRVinehTLhXgPCYA5GuFZw2FcYbc0ELml3MS169bSnqJEPBlGG5kU/Nve\nNJ+d\r\n=q3AS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"5d4f89f54cbe6c50e54c4ba4d786455434fefe02","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.859128.0_1602430644443_0.26115338481606876","host":"s3://npm-registry-packages"}},"2.0.2-alpha.04e46f.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.04e46f.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.04e46f.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"d96999a9c94895056f90c0e7f90f5a7ea36e08ac","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.04e46f.0.tgz","fileCount":13,"integrity":"sha512-e/7ILg6El0Q/zIa7P+Xbar2t/K9i+CNmDROTFTS/daDCwum9EravqVk+uwAY92YR5/LlKW7whzBs/IxMhDWb8Q==","signatures":[{"sig":"MEUCIQDeAPH6EWpsJl+Un7KMp60deHXaEr2iWDBeev6apz5+vwIgUWKhm/yEjQM34CRrhKQJofs6jfI08M0Ze5tzJnEAAFQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgzJhCRA9TVsSAnZWagAAlfEP/RwReG/p+dqlsNWRjYEe\nLlddTrxak1eJhc4QDT1eMWw3DdGOoeRnxu+ZDDu07ZKpTf4Yzh8DH8050Vnl\npFxnXTdNXBC6TVn6CRXXzIDId0RQ1eKJNqIZdcvL3ebc8U0jVthz/RAjh5pj\n6alVcITQ3V3/1VzrctQPnkxO5Fixweu1paxes+NEdS2lwWeWjXeP8TjflFP5\nRmPzfZhMaXf9aK4Wh/QCoHCuShnBKLYitdTK3vkiqerz3mYzHw4pZF4t8ojp\nptZ+sF/vf2K01KJOvRy2aQEovqRnXKsY8qhf+JsuAY597o/UZamrhgrKpuTv\nmfdIR1pQOBK08gOWfMm5Xqgc4Poe8VbEiO++F14Bt7Yyh94MDkr7d0iqSp2m\nW+lHzi/sB2oBdfuLTncPt7nbCGyfD4+a0m4DtMNgTH635G6GvNlA/cIQ2/Dm\ntG1dBz2zykBcq8KCpn17nRidmOadDXBN82y+KCSLslniPzFZr3zrAG5HFK+b\nXNkGcH8hTo80rDtSB7bet8vWxR+iah1Kb8VyNPwROYjlcYFHRJrnQOgchxdo\nFiOOa84jpeSfiu1yitjfCuWD5dplgP0KxYhG9HhtaU5YwPZ6SDWVFpuFqbXW\n4mG0+scXuc+7subqV0YnB/IrGeNq8QEjBNhdp8fx16tJfJPakc5H2ONzTkyO\nmi9H\r\n=5FA5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"b93a2b1b8899414a6d81bc9f7ef461b634fbc1c5","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.04e46f.0_1602433633122_0.6180912781831802","host":"s3://npm-registry-packages"}},"2.0.2-alpha.966535.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.966535.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.966535.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"0a9d7f02bed685fb6a75c467475decf9888332f0","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.966535.0.tgz","fileCount":13,"integrity":"sha512-K0ttF6UqjH3y72jVG44mI8kr4Qnt+TWSqIXglml003vex+K76jCXNM2DLqFzHvnBBBr4yL0DGFt+II771V9B0A==","signatures":[{"sig":"MEQCIFtMikqUrPMvJdfcU+dFjNDr5XqSTr1wT/ad89zl0Mq+AiAhAXZlTYsVu0vMEyTvuUxgqdg90dDqP/D4b5HwBcHvNA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgzQ+CRA9TVsSAnZWagAAFlgP/irfvgvn2G4w6+8YdqSt\n5tLJIXcG1lcrQn/uSKwQzlRBuewqFe80hp94Uk9ljUwAKhzIr1pxwh2/Jjkf\nkZZ62WF3yvFciODGVWCioB4J0TgjBrBhdrZK8UHTjMeC/WuQ4DQQrgKG8Q9J\n2VacgAJBmieN+WPfvWyOqjAIOL6nAFpdkFo0lzMaN4s5lqJ6acFccgkMJFbw\nrHqx7eswRxU1cHxwbI7PVKHRm0jONz3M6NCYqC6Ic0m9ssrUGrhsFCwtXrav\nZ4NlqXpqBeqyiiB9BJgdfjPs/Nyktr67Yin8EMdiaQSioMKe49DIf8TOphDS\nq1bUPG83Fukf3bO69nDp4RqpyB0r+rkI0/vTsPDKBmNDG5DbLC0CvYHE3Qdn\nCQ0uB8YokAvbefmvJ8numgxmkChmsnJT4tH4PYmv2Bf4ESTs5CE42vMwJDDv\n/3gYv9yYlhkF1xv2mCc2y2SpPQjGNy76Yel1HsNuCFYdzXYqD0ABP4HUqsq2\nm83uvU5QCT3oxbpQabFjorkvpKnyX87hDjprVrmEtHEBFHypZryD8Pmku56Y\ncR7wmGqSbJexHLZlpzJBUOG2URPQ9bIGbzP7F/lWRH4HRsk4b4GHBILvTcI/\nKbim3Zwy/lRHqFA3VKNuBgtOy28o6CTIBA/CZWtQdjf4wZZA1J4n381TJ2y+\n8LOg\r\n=CDdn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"7fe079fc837514f14f44797ded590db94fab7602","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.966535.0_1602434109562_0.9183011205623219","host":"s3://npm-registry-packages"}},"2.0.2-alpha.7e88db.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.7e88db.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.7e88db.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"3c29454ff1adc041ba67a188a1673e988d3548da","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.7e88db.0.tgz","fileCount":13,"integrity":"sha512-XBxGgbv/LFkEwrjenQAR9KJRkjDOya5ibsbgdQDnB7Dz9Lo1nkORtcSfw1KkSgm5P/Oa6rkhG/nYCSZoZAxgew==","signatures":[{"sig":"MEYCIQD4Uy94QMXYCNz7ccNdNYqN842XgHWnppdb0zfvFmj+4wIhAJVxZmSHVokhrBuXwr5dOsLhPZ3Rg4y0xNEpspVkzGSY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgzhQCRA9TVsSAnZWagAAuDIP/1H6+LbfkIJQKuDETqlR\n/13ERe0Kmnhc/KpBfPVtTzNMqnn+pXjHXwt3UxybsBKdOANNdzRv1LlIEhV0\nNlMPSTBjy+u4BhLnm4jELoWbNX0BHlN+SY7K+QrgnFbsycT/YPdib/x1ecx6\nOa7i+PrpLUvpO4wH3myufALaZd21R61LUjXGnKO9iDUToPXSvhG5to4xGZNL\nV1VJ7uzJxq3lih+txZ9sgeVJt9hrbyw4i/RfvVtjSOb04Ju6PzGmZvtjjOgG\nlAfl63ZtNDzlNqb/6+BgogQYJPQkp30cx3s0eJejm0eq35dpU3PaRQc3qhPd\nXoOPhma7tQruKIwEtqh/60TFv4JjpPmMKgjm3lqPeNJp6/IJeGVZh4yY4Z9D\n4DG25M9ifLd6WFVgtIsF/ePC15fn53gyOk664uVJZb+8zSGGzW5bBe9kJOy5\nkiI5BF2agwQGsiHVcnbpTh/kInRHf0gE59eJeUKD7jcS9SVRVpVANIauhyqw\nQdHHOEOMEmm/KCshHF3NWn6p2RcFFygEfDkfyEZEKd9LpGtRwrMaHQGvuR6F\nsYSPL6nOMfJP4Ju5TGNjQcYoG/mEc0Zau9ZC+miVGzxhsHXUzsT2cj4GpYS1\nEeg8yRRp37LE2favV3mve2BIvvUXifwyzJMYSSozX+c9gkFTxkQOKsrV2jvi\nR/TF\r\n=wVNS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"9aefb8b5dac7fce9a886358dd21579755a189937","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.7e88db.0_1602435151698_0.5392286838581302","host":"s3://npm-registry-packages"}},"2.0.2-alpha.8013f4.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.8013f4.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.8013f4.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"70a50f83cced9abacc30cd07546cb41a0765cdbc","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.8013f4.0.tgz","fileCount":13,"integrity":"sha512-gvL+BkJxB0DwyWUdIFHJfLT7I+z4Pc/yaBwPgE15rH0prH5LbUPfwOc1ugrKk4ekoblxFGdrYTgzDUApzCQ+LA==","signatures":[{"sig":"MEQCICHErUVBMgjwrY3vQk5uKhHa62tfSCGIZkYfFjcgqLXSAiAhVXQqE422ck9jYe9tXyzh9qdMPRbxN2k6IbF8+PwxGA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgzo9CRA9TVsSAnZWagAAp+QQAJ4Dz+HI0owhhqVhw7ms\nYe1I+qkHpcFa/pPc66Lk4NvYIKjGPT/iPYgJMrNdz74qgFwZIVXI4m2zs2Cx\nYMvOC3ZRZqS3KQ1wVM/LjyZzSIorRGHy+wAoB29FJbPaBogqVKj7G3OrSbBc\nExvE+6No+XtrbnFFX7dOR3K2v0BgikvKBnV5dOirLgNqs79JmeL+oVdeHTd5\n5rptgbeFDfmfFuLuyP3jod6bjqSLfTKRHcS83u8mB5Th5xUSd2pEreLPF/SK\nTxYmavLUUM3Ad0tZ2wB+zHLjiRwoCln6LdrG9SXVTGg6ncPAhjQhP5tg5Yc+\n9ovJQGfYpchpbJzqnn/He240SKzpkkOKeUlb314n/xAVpql2Qot4HI6l3R5i\nDy9++TzfrmR2OJOkBUzLwa55VitfAJNDvx12ohBXgtMb3zGkwlagqTBYSFdL\nJluJYOT06OWeY0J4JrGj27SQKel2rOq1+PLUYSD5rHLV02dXEZu4utXvXdh6\nnq62TWIq55x0x62ZVmmyQK6UbzgsWVmXcqY6zlOG5GJ+noSisjZDU7tDmJEa\njdXrVs00vrtSBznizFFoxp0DQB1YLqiz6JG6DzTPiiQMDTDMpXTfB8eAu/UV\nhr4lDHBnA3AciCORjsZ2yivH/hi2q3ghB5rZVWleET5YPNSroUHUvDR6XCmo\nFGza\r\n=OBwn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"a0472faf8ae257289195d8f0779409559a458853","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.8013f4.0_1602435644693_0.5691822384175471","host":"s3://npm-registry-packages"}},"2.0.2-alpha.b48958.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.b48958.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.b48958.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"198b1d103446e1490636afdf45c48746543c84b3","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.b48958.0.tgz","fileCount":13,"integrity":"sha512-8bDOudS+2wUr/ZFTISUk5EV5ZWpkUllV4cm3cAOsx1k4FYFJibPOwZXDTaEJonfz6jxzidHQAmP0wEpKuD8HVw==","signatures":[{"sig":"MEQCICcESS30Ltr4pgGc87VBh7y/goVulF2liekQif/uiK/iAiAUo/V6hL76dwD6YJKQcGhJpePPWwSR5/jj62tCJFnLCw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgz6OCRA9TVsSAnZWagAA58oP/jfM9Tcc+Tp20O/+yGRp\ntwyfZmuHuRWMRaIi/7dpPLCV1QI/QWOCU3K/L0gUaeCKpKGcFG4ZV65z8g36\no5vDOHtnYsdX7GpTw54REM3Z3ltD8YbNdjWq+xmwXjHw1obCsJEvOrYwIeZI\nH1owQunUTYrte8PQ4ZAoGRatIzIQzw5bgWC0KplO4tLeN8KIL/PFEp2l9cEJ\ngNnIEFJRY+dPHDs8vhulHJMiNUiBaVvKW3QUY9+KJSiyeSIKnQv4l+zHJKTY\nOKwwvoNs06+yU4y+wkyFxemiuC44aXRgYChe+oi5DhsX91WFbDbMtGKIy7dE\nFEg5qQJh5KmG8id4/CMR2EqwTE3FBau00L5wI+c2EMkyupEYswrdaA8mYgJ4\ngT973xx/wWc41DLroEqXwQJwseXYHYzkhnijbnRAqTEVFJKvcmVp5V833YSg\nSgkqFXbRYOvVAAXwtqp78phoe/ADkaeghyiDQee240IkfCLazmBeZXaKTzqd\niS+4zRp8OwNhq+kvou8/9CYQZiJdmCcfom7dTFE6P8lQdyeD9k722jJ5fL1b\nREdBlcKZsXhCY6xJ+wHqg38LSanNUhvQGg/VwFLMttU/cdzDHpBv6j6HBG/M\n9CzNmrIDaJ8J8oUbPoe0tX7Xt0d5WS2F2aFr6A4Um8Tlnxz8M39AZdTXYmxi\noP98\r\n=BHkb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"0b4137ff3da9f053116a7a3f9ad6ededf2ef439f","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.b48958.0_1602436749999_0.5026908009891327","host":"s3://npm-registry-packages"}},"2.0.2-alpha.e27b68.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.e27b68.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.e27b68.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"aadcd5875db2510d595a489e70578e70dea17823","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.e27b68.0.tgz","fileCount":13,"integrity":"sha512-3qezrMkUJDLkvuyI9cO8NSQIc8rbpPpmAISOxXWf5mtZhL/1dHge3MMqdpETG5gkvI+PdXPXGLaf4xfJEw0WPA==","signatures":[{"sig":"MEUCIQCsGJQRJAIBQpZm+f5XO4b0Fhl7Shi1sK2ZHYDEyrihwgIgSAiqzXi8GKCEg5aJT3KInIqz+ooug5znhGOCXH7N/Ug=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfg0BHCRA9TVsSAnZWagAAbpYP/3uHLC2CNkx3Umx5pJ2v\nCUsneujyLIXxJQxnesLV1yzlYVcUdbjxm8X5/bhIdM3UIL6nCSy7i0BLFDtA\n0oAlbNn+9vKUCw23p3kVMvEkFlEcn6osLVzmPIAN9HDtnLrT4ddtvcRorD0Q\nRsMv6CoxmJgZvstvph7tMBmbux3Cqlpk4E3HriIYi0dxpV7wKFq7KN/u6fW4\ntiHS5ozGG7M+JjQ0zQ9IxrRqlJk+AC7WRRy/UrI8gBDLJVA0RSrBbujXQVff\noFiDgWGUuzYnsElgAVpA5nyYqwsBubCSZIoCBXoehU8zqzGFjWQPZ83Iy4yY\nFOq/SdeLIouXNnqW/QxpoltxXszKGRGn5yoqUQfiY60cWvt2AczdYr22Yoe2\nY3q5L4njHrgFhiaCWa4MTDq9EvAPU7OYQqbluOjcCFoOcITxd8rgFJnBBG/j\nyxRxsD/mvsppnPuqvgEZPEdnqH6HLdcT28ekhYSsRuwDePX50vrE3F3Ujygy\nzQmDcZER9X5I9axF+DvcIpJ+ClME4lpi3lpfpLLGvUKhv7eoRtdqTNCfW6S/\n5H9HftsZtdi/gnb8YjvfUHQu/GwHjXRhm6kdEqTm6laA/uMJQg/ibTSpFIgZ\ne+fUP/ah+FjtRm6wd3jH8B9BxOjwyg/AQPr/JYTuvygV5v1cvhWpTOUmAdiw\naoXX\r\n=Yide\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"e7f28172a09ba442ff32eaed3906d7e62fcdfcb0","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.e27b68.0_1602437190872_0.19292581788671925","host":"s3://npm-registry-packages"}},"2.0.2-alpha.14c1bf.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.14c1bf.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.14c1bf.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"523f1b7f830edf2bbdd76eac46c660ed1087f1a0","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.14c1bf.0.tgz","fileCount":13,"integrity":"sha512-CGrYSWbVftb+bq8Jtl4vgh1OOhgAk7OrtjThrPUbPFhZHwlSt1Jekka62++7OfW8bFdwAbQLu8dOlA8aGUVP3Q==","signatures":[{"sig":"MEUCIEZYbm+Xc94q7FykbUrN0//7+BK3L5cFH0B6lGkkH08wAiEA4cNRBVHK3mzIfedFHJ6CrP0OaWrOdmfLwqwkHmEM8wU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfg097CRA9TVsSAnZWagAAGlIP/3QdQ41NDsBoivGkIhD4\nBQYr8NIDe1PuYrxaDCmRS2lopq1kxZ+oMSNF1BhViLsPNrNDSydG6xwuNKDh\nzNmO857pGQa7jIEAHCJlTiApSEW6XEdGTbb/rIrvcjoTkvDhKyDY1OD1yjl4\n1FEbP3BUtA/tuuKYeV8Ihg53IyCXune6YPtLFA8oRF+RypHa0UP3Y5frPXzj\nFCNJc7hruGiDO3+ZyOEOCKS+iLqOyd7COHz5c/MZ6Af4+N1isxsCQME67JZ8\n+gSjN1DS/Nlc9XeYn1EFXCN0p1t3dz/l0pSj0x6Iyn/9n9WaHW/X5pm20xfu\ncC7VmjX02FLfcTd32n0+woVv8Cb38A/ZhGzeuUmeMG/okZVXp+M1sP67eFB+\nBPSdvrclIAdzCoDcY1fQJstHzqF2hiKhzU6K+zs9D2A1BukWSUCUC0pWxbby\ns3i6U7szLxVrfqU8PAQ4ikltMao6BJ5ZmHwKF6aMpebcJyuM2QNcLSBPTLHh\nONfA2xyuuIQ29R0A43wLg8zfjUtAVy/V4DRquNl9BiCfP/gxfw2Txb43dTYb\ni5ZvqWJ8/Q0jfHUaDjm3TPBflmMk/SlcHQyoIe01N4lrZxp7PLYoglqf9IvY\np4/MvZ5/jyEcmJkXfnhTEqScHT02mbope1bVsPhjvlvS7oh+sba8STjLkyS0\nRM1h\r\n=ufYb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"c3419bbe94bc24e6aeb050e6a96a1c2251a024c0","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.14c1bf.0_1602441082583_0.4570094929155346","host":"s3://npm-registry-packages"}},"2.0.2-alpha.fc980a.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.fc980a.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.fc980a.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"b94553a7898d6f65302919f94073cd3d0b6e34c2","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.fc980a.0.tgz","fileCount":13,"integrity":"sha512-vE08b6xZWwx/LEe2RJdgt5MJrMb3aLDsfS+L8JLy6l0rcz5KIEnlXvPlvmvPZ3Ga/HcV6hpGEix3LpB37W0Q5Q==","signatures":[{"sig":"MEUCIQD4w4rxQitAooamMgFVQ5MBvlYFmdNLzaZ10It8VyMvqgIgJGAzcS97prpZCBow67Rs0w5loT+Hl8OdTl9QwpE1un4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfg57qCRA9TVsSAnZWagAAR5wP/iUp91dI+auh3a4if76p\n/DlXQGdawma6msFfcaLLIkrKqC0UUlVeWU+DnDpQEnVphknEmpwE4beWDqYy\nidutgW3jQrgsccsFvMObSIqIzSL7mG966yGIvt52PWuKFK+U2TDAvjJX7KYN\nie8E33Ilt84IRuyFU6hYcb7trQSeTbfDU26yJKcWfYVSbMmESwgurk298kIp\n28th1BT/zJGudodrPUs4DddOVhNNgzTqAs4SEJAANidjqU2jrK+YTbAXZ1Tq\nH5Dy3stWk/qHS7Wy5I4owr1q2O0XTyNMGo/B/NoJ0LCn6BlraMZzLoBMNabq\nhBB6eMBTd497VJYgYqwe8PLPRXxDbybm70bVa9bPjYjDJKgyQDVqAozgKgeY\nIOrZ4amEa0+VuzrE3gPSuA51u8m/VYmUULneGkbSgtm8s0m8KpTqsCHEPGn0\nEsvxoELkB6+TJpAsa/kNMjWxSI0AkmngCrbnuESTP2mhbvDhntl4N+RauwHb\n0iR47E/g4o8nPwOa9WudWg16XFcGX2IRNpgJsGRydMJDpVXFdVD8HX4VyQyB\nXABKnkkN+q+E+TlmRt6N1zvMtdfPCkiIllFzDt8Xzz0wLBCozroUugOZPrRI\nZvhWGMoyCjAgn2Sn+ROg5E+g+5HhmL4VuKvmZRk8kw//JUeQsB4e0P86IGdp\nqFDJ\r\n=1eOm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"6ac56de4824ddb93c69ce76ac0045cb87512def2","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.fc980a.0_1602461417943_0.8497778831887461","host":"s3://npm-registry-packages"}},"2.0.2-alpha.a872f0.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.a872f0.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.a872f0.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"6ff139704db63c9786ccd000098113fc2dbf8e70","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.a872f0.0.tgz","fileCount":13,"integrity":"sha512-BQHWa/gXNHflTzGR9Dmv1PdiycFaKWpHZrsazpZWpw79l8Jj7XDqnAALiuTaz/rquVscNOigmruRLlXy1/5IXQ==","signatures":[{"sig":"MEQCICYU5LRh7ddP+LNlA4ms3ARYQp1cr+249xGhNhpdNcSyAiBnlMatqvdlgHdk+I6n6F6OyPSXLUC9DOONpj5XsxzUgw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfg6DfCRA9TVsSAnZWagAAWLYP/30lqUXCmZI29RV2iwC/\n4fBuKIqbkuDWjwxGvYbfyIkKsjhDR95qkOrx50IX1aoqXTunSvl8lm9ErVgZ\nQiJhWLl+cTzGeCgf916eUgExxSI/DWTY564zBcOLkMyL57SMdfUQhj2LyPbL\nUviMbqgDMcac12Bx6AkmWXO+yWOgJE9+ew1HM1+5OtQreSTByKmPWnBtPFBx\nDqOwL+G4EUHq970t3vOWg7xjpF3r+J8wPvKUg2aZcjQbqft5mwa06++h7b+t\n8PiDhipKZq17B0x0kJ30v8ezLcvuJS/wKLtskaGo305lHbZZ7fKcdXXNBrP6\nHrrF9asx9fWhiK2NAhPFTGN4TRCRWPCeie5D2FtBe0FD0CFVjvpZ2n3baJF6\nsFVvWOIS9IK/jkZB4YHXZAZvJycqb44rOBeOubBLuyglcTqVsAKCvK0XoTdQ\nS1qreZlCGM/Ils8IAEY3iYf8znHIl6hhSiT7EgobF/OFsthClilgxvXhEeR7\nogPlxK/O+7G6WZIKTdQPIIY5AZibbElA47ixY1RvHv9vA9fX4u3muW0Y4Aks\nXAkWkdf3iO8Debv/kU3EGZpx4e16w+NqIZZMSSFMvtS3ZhE8+lyt+1IOTqBv\noMIjyTi43ou1MrWDTmRqbV9nCZkPNFiyk7iSG0nNEiazrw8162hOpJzM0cXk\nCQj+\r\n=ABw3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"d0e067f55305010eae019e629bb49fdcd7033eeb","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.a872f0.0_1602461919354_0.703980522749591","host":"s3://npm-registry-packages"}},"2.0.2-alpha.71f6a9.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.71f6a9.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.71f6a9.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"f305d03bc890fd0bd19be92daeb108f49f857338","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.71f6a9.0.tgz","fileCount":13,"integrity":"sha512-CSCqPix/ivTVUViDT4J+AXQdh3In6cNeQ7Bl/Xider8Ymt2pDqd1X/xvfBcPy06p4+Q/yNs6p3TcIOSbVDxTrg==","signatures":[{"sig":"MEYCIQDqci+qnqAl/ffJgeQl2aSXMWHcgzZFYi8P7QESMJH7NwIhAJg/keC12Zc+3wu1+ZraRieCcv0OOB6qqVyor8wnWx+4","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfg6ZQCRA9TVsSAnZWagAAq0EP/2+LrIWdPyfjm/OwXCo4\ngd9qfjHCHCveTcuQUK9lLbkghNxVOQMmEwz20KAvCVYsPHNkOu/p7fcwZPMC\nYI2JdxcAevrD0ZdKK6eGKLauQEfLedG3ZpTSIZYr2iLN7oTOyUxpyjfXJiUM\nEzbvXuzNBlBD5gsPpUKxiuYyGOSaQXGBk0TNfvL1FIvJprDgAsFRCiJX/ebc\nxPwesEsl4vH/CNa2r++2tlZqSMsya0Yp+nA8uKnif9s/qBndroTM8X9AgwKy\n6VWwF+V8eTw05H4TOU8Px8vettHmQPAiHSR4wQCGcLh3j6skUdoq0wk9IkOS\n4fmvhYBNf6wSUDf94pB1nt6b6r6kMMYbTBHOIV+82uKEHAzMWdCBr4/m742M\nU7e+viwFSUhfnQkKODzwEijHPyFWbMfgozZEx0vOVfKcN7Pvj3Vb7IlM4X6t\nC5/FJo1KlTSI9bdEF10gBsQ/gNoXQxAhF25cagHWsET3ZBF/4gYRWlglXF45\no/3pcARiI4CsJSib8uDdSucMOyR+12mNL0r/yfpkqmcrMbuN2BjkefBEbJsn\nhlynTnVNTG5mqisfM8zJPBO3EmmCfMjV00X+ZGw1xBNx+TZpZRLavHqjW0fz\njxyNfvbDxvEOQ7LV6a64Tdu/EQXj/KKV3n/D1cblAShi0pne0eItwRGF4rUb\nwUmx\r\n=K/m8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"4f0417e3fcbedafcd9aefc4b26a2a8a4fdd599e9","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.71f6a9.0_1602463312024_0.09808546552813402","host":"s3://npm-registry-packages"}},"2.0.2-alpha.0d512b.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.0d512b.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.0d512b.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"8c9b11002d2d6acf1a95628d76b164a6302a418e","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.0d512b.0.tgz","fileCount":13,"integrity":"sha512-EjSxpPnyRSU8TuUcwVqR5mhG16vV6fqe9pkx4chhJwie83mAhn4jO7XwIFij4IstoDBvL9l577xFyDjnohloLQ==","signatures":[{"sig":"MEQCIEyXhB2gIxRuhtG/37XN9T4mGKr17JHns+++8ZJHTNSTAiBB2voYgaV3SEvilv3ygSP69m49ebaj5jEhaa7TDmqJAQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfg6euCRA9TVsSAnZWagAA9SgP/iQZnMjXiwgRvvA4wqU0\nMF5TWQLOl+eegkg09C+TO9aPkn/qXbZWP6a3QW8IJaLVWF5kWMwKhimpl3Yw\n6BryC/MaT5sOGLDUbaUw8UWi1qlPYAe5pDH3IBmVYLSU1vp93USeaGmJDd1Z\n+o6Xb/+jbBC8Vi9LZs9azfZFDNcXh0716nTuTzFfToVu77M4ZtyC7zAL1eMz\nbyy8vV9cKzaydyBYDV0M44EDRRiqyNKHyZDysdFBJs6PG78x8otVI32hjk+u\nOIMBBIu2GfV0gYwQkbEYxGHHu42Il1F12K74PmM8jTHj0uVLBM9YU8/R98vw\nOPNufji8amV+Ux84w/B0mhimOU7AjcathBm/v0qsChYO4DRiYkQPkbVI+W53\nrQ9od6ZeGQ+dASuAYiU8985AtF1GCiDNbbyEhQg/driBX9hPD/R9TKJHLQxh\nizqWBu/duxgcbkBbDYPFTweAEpDMa98nDN1Rxv2egfF7NmNQxBrDuNi1dzcY\nD97FoUkCzWLO2XMr7kS0EjXb70YAmEPdghvge7Q4/5yDNWfGXh/YaeVWEGYk\nCNfXn/F8xUtNyTw6/alSJS/iNYHvxA08Qm9smHW9WjgT/2+WjfKRXGFMLJTo\n72x1OiwQltwhqaBxA2miFllsKhY6SMmdIEFFQYmAX82p10OFaVstBgDHT+2x\nzmgA\r\n=6WSC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"2e314961b6ddc4f60f5f474304e6153bb21019e6","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.0d512b.0_1602463662488_0.6838726026788216","host":"s3://npm-registry-packages"}},"2.0.2-alpha.de976d.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.de976d.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.de976d.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"34563b30790700d20ffff9a8a4e56adb056266a7","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.de976d.0.tgz","fileCount":13,"integrity":"sha512-mcjvtXOW0GmPofelhm+RWhxh/QRTU+SEKw5a4yJ0xzB9pLNBaZwTyb+rTMbWiWXO6JeCuUBnvuIlmKrUr5L/wQ==","signatures":[{"sig":"MEYCIQDEM4+D6OORw/OHa9HKRFoo6EIKzP4Ep2cvUOdAjYLFNwIhAJWlhtEtQXvaY7zQNF4smZSihpYnKkzqL5utiX93ITSg","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfhPZOCRA9TVsSAnZWagAAo6MP/AtMWDWJdMro139EmHOO\nkm0iw+XCyPfNlSVnSnyqDVh9tBs61+e/4UyvDoYyjYTcsi+DWhTBhD1ejy5u\n56MGyEkY3pogIcfbYoVpaIoqVGqgJLjUTP6KHeztIeeM86xQFMsYLzxC+hwm\n+JIp72iaWWoTlYOnqAbdQLgMx3Lgiiy4tHBS4JQxFy0HAnqHwM5IERfJy5Pl\nwUO/JcJYhlbibcvseERIg2IO0kpyxjeBu8DIVbwiLiOLuWqdfk3UkHoK5kOR\nU0ff7wZas9W6Kh/TFKxQnUO8Lywd4eMfl1Fa+McmmRkj73zFoNFGml64b3im\nbbxgtwQS3Rzr/jugoBLD7COQ+oRAgulLHXKfYzDaaRUx0jRqdSruqiJQB53M\n5a4/kSLaFGBC50zVZyYzW7bvXSBF2YIQYtRBQAAwSJ02NZns+1eh6dvspfS/\nAR7ucMr4njo8ybreRLQBCp+m8KUbPJRWftul/8iW3Lhj9934CSNwQFpToZG4\nnkN7k42kc6plKFxCIGoWWodyNzh36M7eVRWSLiuFrExUOAcMlRDQ7oLpvSlj\nQI/a8+BaHdJ1OuEh2rfIALoPROotdyKt5T5dHP09Vck3Dk6h9N7xhFG625Ea\nSql/uqAbuyHWopgYUFttUshiWUHOTsuVoVoMkwaTJ3dFLw5LmZbhev1qUxgb\nA2hA\r\n=Kl9q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"0e53be4255acda537238b40ba31192fde081f445","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.de976d.0_1602549325792_0.22107414122409175","host":"s3://npm-registry-packages"}},"2.0.2-alpha.213b36.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.213b36.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.213b36.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"7061f6ad030d54621d7f774cb11ab785029c141c","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.213b36.0.tgz","fileCount":13,"integrity":"sha512-i+J3zhtDq8Wx0Fl/B0HM3r0S27ppd5uKhuWvRWKovQWiU1cfFe2mRq1ZgTBcLuZ+9Snynl65YUFjPTjquVghCg==","signatures":[{"sig":"MEUCIBT+hTq6miOQaT6jQ0fx4f1c18ZnYGEJS272Qv/GHn4QAiEA61KlcSTkDpnKJlVQ3PPsZCpg5O/Po22TJgPFk0uwMbc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27059,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfhPiRCRA9TVsSAnZWagAACAcP/jD/ITKaG4Zo61DCpNEO\nHKeyQfCO0XmtBKKAcgWZRwIMg62K52GUiAWCc8SageDzd8Ksi9kB09MwAYAD\nBnKbzW8Ur3BjEYdd4O/ZVnhnl+HzDW8yKGN5FeTJhRc5nejXokpCstmTZWhE\n3os+R7xA7xcLSn1K0d+3ZqPkIfN/ZLCArQrwmnOvsDSAlBKS4Pj7dfOw7N4y\n8vMqISB/5zNtaDFRBVRw6/RSViwVP3LLNP1NuZkxTm7hzwaRBeCGF2KDfwG5\nzjSV2NWSXFGKGVHwdtAIgY2xd7oQyKYYgh5VlfxyBndihKzxpqud2w966Q1P\nFJ2Tvq3BWlbLfbgEBnFXy4oZdEZI4CeUGT00dIHNIg7J0VxRE0pocihQ/e+5\n4JqUHYouTWpW/fS3dmorLjLH52RO5onSSGhD8U8u4JOLkzMUcYmTmC2SrBc2\n+Z6rtihORkat5CZObEYb9qKd2VKRXmaFREt0VgeZjPNzvRP/ahuAlg+09ZjY\nHfvhmHiPhyNHRp/szhusCsphzo9LZcXNiJ/Vspy7AJRjJ8hGvG/hGZhKxUmD\nN0PV8MAFPt/i2Pv8fKLNcyY6CNbO7EvJyV5g6EqCBTDNnKJ+Fz6NMOXY3A0R\npaQaXPbTVYi9VjF0kQYudHlvQxcMQdrcP86QScb6Vva8P9mjFOADVhKWZlUJ\nZ3x8\r\n=bBDz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"a16dbd69e389f609c8116d0e02c0f91d6ac1edfc","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.213b36.0_1602549905443_0.9995580291710833","host":"s3://npm-registry-packages"}},"2.0.2-alpha.78d0dd.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.78d0dd.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.78d0dd.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"33c8fa0c0488a82108e606b283f4e3112ac629b2","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.78d0dd.0.tgz","fileCount":13,"integrity":"sha512-uG5n3lIhDkS8YYmuG1WpRvsE6tmPublzPNEiocXeff6GGN1iTFDYSsGeU+daMuZfWg4hxQvP6YXU46aTHjdjSA==","signatures":[{"sig":"MEYCIQDso/Lig295u7SvdcMsfPMA7mG76TgocShn49kDN9tO3gIhAPRUXQANRQPVClEcQkzArZB+FJZDKL7lt/4iOv6C/2C3","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27059,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfhPp1CRA9TVsSAnZWagAAtFEP+QBvVSmZnGczBWG6lqXp\nQqFptvHVcKElh6EHctUycIgOUUxz9RUueWi9hTJz+Vch97wb1bFVcRIh6BaO\n76VQo8YW19QYtYM08Iuduqp2LWOn14vyYB8v6AMqsIN4htfUIDcuYK6o8BmZ\nrUINCwbjsmesq8fOkzpEFTt8fmUhsLFWD+52epBEAVCp00U4unnLkdnOo5+5\nyz2QAlrZlbTHonujD41KvNNal9vvtIlM4dh2DfmIvz6QdcdbfNKObpaJy2cu\n5j3K/hd3N+ZY/4RsKZvpQp1/1T+iwW4WsP4GbWK22T6UBMnnoXodxJd0Yvqd\n2JifQO0Ii0zGLzmJp70sW58fmpfsBdOElNvWmIwf73FlMmp13SDQYMlQIuEU\nIFIgrWFRUeIocJwXcq1vITy5bsNRVJZ6g7j/tlb+Q7CC+H3RyLTd3EH5ZHyX\n//yGXxePGKNzqHut6lSLdRHWK3jxbxnRo11cKwJhEifDS3Dbeqc4QfBeGDPp\njsTLYY4klZ+RsFsqAUidweyW1DeV/cOd6z2MOuHMnmERfvQvHnlntfw3+mGr\nJzTZVIZ2P6GUNuDbuF6qXfmSJETyoeD/lGfMaJSSXDAC+lY8msWIiwS6r6Fv\nfzoa+bduhAw0lMBr+HRJqj/NnlSJPN4GGR/8nhxbWsa6BMgpOAwQJOpVsRGF\nF+kx\r\n=xtZ4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"e41f8589ba14bd6067995e6f5a755e4485375e09","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.78d0dd.0_1602550388341_0.7434536524698356","host":"s3://npm-registry-packages"}},"2.0.2-alpha.ecc725.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.ecc725.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.ecc725.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"f5e3d55fa672d527aee2f955a820675d650a610b","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.ecc725.0.tgz","fileCount":13,"integrity":"sha512-1BidMMlub+fg21XAMGjmd/qLbT42qE4OSvhJXWlAaNrBVvncPg4CAgZZpZz302r1VTxGgrNqlud7H9hQDzugrA==","signatures":[{"sig":"MEUCIQD/Drxd+NnBbG6/Q/lfZFjokwQVmNogDB1LQMkq9YZYIAIgB2NwPGLUunK4wV/eYiKFibcJjlqzYlySQCR44H8Godo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfhPqzCRA9TVsSAnZWagAAoa8P/15pN7e4VlvZHu31bLgz\nVsZ+IJFatEv7HZkSpnA+j+IockhMZZiajtjYq+3DiH1cwkqNlLgZi7P87ldT\nt0sOEJbE7wJa5T/tmVBY5BxIB+rgeOp3aOtdPr6HUtPOaJNNTBSMKxPsaGX0\nRyHXP1CT3ygx6Mhba0K03FjO+5w3Xzy3nisFY10lhie9jMvboFTxqONDiZ6X\nvjcs3jijpxCPML2ph02vrofv5nWG6RSaiwPPndxbdEH+71JaGzBV4ftDGf6R\ncFAsgU1Za1tworMsRlT9CQCMjA1tec5iicHx/kmkkxaxnfAms7IhimRSLny9\nktWBvO1qu0y41Nm5LURtAS6dDIu3I+is2W/Ow6EB4XtyRXz1M8sa/k6Tw0Mj\nQy5uuNhuH4IfEOYXch1DLiVtHZok1Al6e6DLsmNExj7lrrWfKSiQ5UBf4gcN\ns+UIXxSj+AzY8WupiM94MCk57MVXxGWoYXCWjS1DINnt3xeLznVbxjlkabGL\nvgmVop3nEysXzDSBgLafk4yqZlovz7qKHSUg1Dyx8R4rP+/GjtyWWArnr5YW\n90kVnP2y+zWZEAYUtG9/vHNcpbHc3vrhqbcuBTNgZTB48922EAAMBmnwkwVN\n51IPN0FDKJ7dIyDn1xaljm7ARJWhvAkRgGZb+3m2r+BYdBu07tNTYbrCax22\nC2Pb\r\n=zNEJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"aaa422728869704cad3447f8da86c6c9f6a710a3","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.ecc725.0_1602550451218_0.2342604712388181","host":"s3://npm-registry-packages"}},"2.0.2-alpha.40d7f9.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.40d7f9.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.40d7f9.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"64fb440bfd34c3d7ac909d87d8c179d50886f936","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.40d7f9.0.tgz","fileCount":13,"integrity":"sha512-spRsTmIHY9mlvSeED8L9pf0w2IOAw89neP8lMvHJk4yan+I9mZIwYkc8aDC458sJL6mfrhVQlmvm4mY9/TwH0g==","signatures":[{"sig":"MEQCIGMqJJcDVyjhg3AdFHnWO46UJIdlieZd3o6Zzc31a4rAAiAQNzen+yyJHh8WGVlIXlMy+JX7n6zXzBXtlj9d8YRzzw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27059,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfhPypCRA9TVsSAnZWagAAojUP/izG8jkGty4Y3j2FQ22Y\nL/2M4o0rM+n8Hasn1Sg5OflJaZZXHAgBpr4DPHyHO2222Lh5LzP3M3K3FpEW\nLUAEcYGPc1vYSbp+J1LEaAN+Krn1hHNFrhgFblI9I8VkVJ36figMebbLSQoZ\nId+VXHu3v+rw6q+LS56EewJnLtbykufD6KjECUr4FPdbbY1x76aBLjGpHdmD\nxccDBRPR70lEMclfztBd012voKaPtqAreS9gACCWzCYmdSz5eS0EC+BT/3Qg\n4WJWiQF1z6rCo22NgXW821hMPU6iIRZ/Zx0SOPBY7sEAN81pVfe8YlJCB1tm\nZsxTsiqwGrriWs1fYU3OCQXC5u+nzNaQ0cEU6u00AdPCG9X+lUfco7MvmIWN\nUvym7msw0ibriZtIGj2QHECnj4ROs0RncablSslQ4vdW3TgnEriXlnnKBLWQ\nzojoPQ1XGw3mRbtuABUEuT/nSARLzLbre1DTfFeVd2PRP37DNKqBp+4gzY85\n32R5JB98Z2NsJUmNLgTMEf0LkWXolRhLcSD/tiZuOjLlA3xq8wD0Er/adZ1R\nYjBdY9vJ0frC1aXIWVjccqpn23uNcpEa4Y5Ii0sJhZDtSD13VNm5g9q33QCu\n5D3rjtFGby1uMEkggfiSKx3sfUQax99lhc5IusLbe+67DCkDap2FXHexiUbH\nKrzC\r\n=4L3P\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"3e28da72f89b73e065b3d665529c3dc59e9eea00","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.40d7f9.0_1602550953390_0.7427671136037384","host":"s3://npm-registry-packages"}},"2.0.2-alpha.bdee6f.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.bdee6f.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.bdee6f.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"cb314fc0523c319683694cdf0435a134d506c5da","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.bdee6f.0.tgz","fileCount":13,"integrity":"sha512-Y3Ur4eqMO3ci/cU/qT6AJOJ8YEvzdItNYzaC1jOkq+VWjTGi94q0i18CCq9FdCjZ87DL1haeVP1lhLYBSisx8g==","signatures":[{"sig":"MEQCIG6MKaOvzeEe898z83hNCN+1OVkOaEFvEm8y8bVixBFpAiAVzn6+ZcuJAl9kHpBsVEUPFZH3R6pr2kMwICk6ngoW8A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27059,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfhP1jCRA9TVsSAnZWagAA58sP/1CUCxhF7l5vx0OOjeIz\nMjMMnQottje0jlOaWrwWj01iyxJ6mqO1Z7j6Uam2Q20iM9P1MF2EBw4KLfdX\nHebYWmAy+Sf59BIHHSnWcirvh+3S7+O1JUb0YFGd4fuiOe4bVfcVYLARLtrU\nRvFRQNJeTqCzVL2rI+9bIp65Re80GA9MdPdfsphsT5Fe7nAL+hMdekpt5lfj\n9IuE20JjQ2Pc8RPcWNqOERl0rHMEJS7C3cO0KFO05z6lj4inwjfwfRwDoOOw\nMZNcyIGlO8+GzpIBlXP0Hrmz84tI0620fct5ci+LI1+NBXx6GbJ/lw+nlACz\nr3cTqiPbxSzZoVVKRZPm7/WgSk0KjFafdRMVxbNYj7703nSoA90JiXRlnetV\nBFPIZa/Y+/0T2oamCjAWxRRyEbVopIjhijM8dTIyOFyQkHz7lbGBjYc/t87p\nFP2mxfs6s9Mi/pTvh7cst1w1FPxzkiVTcD2P8j+eSuHok8DzLtWLMnOMYfkD\nxyxGh2yuWJkmDpadfn2QrdD3f40gqRvS6nyeT5seNPWWG9k0+yYp/n550Tb+\nd1myp6UMHuJE/DEleiXBJ/bT78L1V+kDsWEbtE6IgIm/u+QE6z02v0x9u3ic\nHpsH9a/w+GwTcoyTYOjam9HWogmQF8Co/y18t/hbyYKADVKMF7jS9M1pHSpY\n6qmo\r\n=vjqH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"036cd734157621aa01e908376c74e9584011ca21","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.bdee6f.0_1602551138589_0.8451702371003296","host":"s3://npm-registry-packages"}},"2.0.2-alpha.f5a26c.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.f5a26c.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.f5a26c.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"c3c9e8eadce551ed67203f119aca101083d1d8b9","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.f5a26c.0.tgz","fileCount":13,"integrity":"sha512-6kERlCAV7pI9avcuqm1H7t4dfOsC7E4je3YFrUvSQumTl+Zc8wnnOM2tPxshxt2yQI5rNJT0gNrYerJqidx2Yw==","signatures":[{"sig":"MEUCIQDirosBowlnLCWFq2f+qDNj61xj5cCBQnoRgS/84T8HsQIgPkBrXXW0OCtyVnlYTTsfSbn6b9jQHHOnmN2VXCQBw+0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27059,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfhWPJCRA9TVsSAnZWagAA9MkP/R7oJ4l2Q72T8RIq8lPd\nQZfGvcT0q+lOZ3mdBbt3ppTESBoL3bCQP1I1xbz5SHOPVENXkS3tHZJO5D49\nUGVsnDf13aEHGtl/Lu8Sh2pR+4ieThBqxkgbJnLv0tef9EXFlz8E9TswQKU8\nQp9yuKtFhNm1k9JiOcPHeANeNnT/JVrSfzgKJ52H0xoc8yD139wY9Hto/rAr\nGdnPqNd5MsYVeg7sKFPcZGQhezTM5tjRWAZwzS0q/4y9/9doHil+twchhBOR\nMBywg0hYAXMfNg1ph2SxIxAH7eYpQdg8NS+6e0fkAaZO2qkiMlY7ZzlQDjmd\nZCPTACYzggyiHUqKi1UJpsNdT2G+86QfczBqmNTQOd/+JpKY5RnoP+MM96Kc\noq0flpUk9QqG72aCS1rGVgWtnWj6FcIkYnuzAGMua2/SRi/jiZwhIY45Y8Cp\n8e4r3k7mEz3BqNwiSny0HkVVMlxPU5EiL7WRr8QAOYFHSdWZhSy2jsqkYolq\ntz4ndYNwDHZSqn6lg/5uQdQWHhag/NNM2KbjKOTHVqZxtlbgzKJuIKHraQAB\n/iMpAn7i2vCiAqECaPZKRtcrpu3F+bkcdmhnUktUYQ261O7HHLc1of5S5Eor\n6YeOITWnv9WS6xcaHcIAfYVL6SXi9HhBJBOXenGfzoZQ2h3GntiHI9x4QsrF\noYIt\r\n=SdPQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"d7321484da05631fb0f9fcf92eb4f357ed89d234","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.f5a26c.0_1602577352633_0.533821292328627","host":"s3://npm-registry-packages"}},"2.0.2-alpha.318f8b.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.318f8b.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.318f8b.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"b67e5249f4933552ba5a41ee4335e72bbd403ac7","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.318f8b.0.tgz","fileCount":13,"integrity":"sha512-kibZUGnmjHSubusOfqKRoL09Wj2sOjLmo270g8pLLJl8PJNLw3MXj/R5J7tboCiH53qRl9oj4PY+ohqI920icA==","signatures":[{"sig":"MEUCIQCTf+wyLXtp5M61iwEBe1eu32hIKZF5Jo7x4m91lQs7BQIgeLbLDRN5l9+Cc+AAAzU+c6xcchY2lM7hRY7hE0mtrQU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27059,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfhWWfCRA9TVsSAnZWagAAjmoP+gNmkF86si6fiZTsICSN\n7NoPb4QF0YJ3uhBt5OQUFyO50bViY/TOPYxoKZ2zARQk5QtUybzbYtt+xWqY\nsisbPhcjGXUCHjDCG6JdbLMUKIOTLiUtKjE4FN2aDMS6ZLV+upuxDBv4edAu\nNKPm6MUYu/cHXHH+3BRJlfvmufRSr/PNFLeF+oXjoo3+dQDjbRyQmEYXBZwk\n5fMYX5MXlWL9qD1FsiaqMmCBrWvmEO02jHGiZu5yhPcmRCLtoWKJRnL1zOLH\niOq3asZt2+jfedSdi1HssjbjbjtfvmONFuixYJCSxayUhBjZBOmd2b6pCPHW\nSYxGD6pBSZ1sVVCth9XLsnMl4t4CUGdgVXwzwg+Hk2LN4Ox6pKWbEEMoo08y\naOcv3e87sldwa+shONtLpLUzaX8rhFu7a37vYl1gS75S6K7LbdlegDjH5f5S\nz6gVQo3sNM5Avnsl2cVarsN7C0Bv8ffwqDdGBBVBprMJFzDjl4G6m4tWFrIp\nANGzz6PH7G9ksaAnTJdWvdAubFB/QjzelfO1SZ9JUF74kxcpcOkJ19pMUtCg\nF5y/TufEctRD5cCsbmPE/p91A2R4bshX67yJDSDMlTibBbau5LGCbSC8/1Bn\ndPoLRyS8uOsPc1PAlJZznzgLIyysjtrVnWnCw5BlE3Q/J5eCVaONh+0RBRT1\nWueZ\r\n=nljK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"5d3a7f6a8b4af9a9a41f7f8aa45a29b80abe7fa6","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.318f8b.0_1602577823008_0.47525671817572146","host":"s3://npm-registry-packages"}},"2.0.2-alpha.079a74.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.079a74.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.079a74.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"ad4b821ca434a8889486d46b731677d5ce20b16d","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.079a74.0.tgz","fileCount":13,"integrity":"sha512-ZCJopBaelsJoxmRrM5rn/DRtanOhjnU275Tyrt8M5fBYmG1Y9WvcwIhZI8qxrajrr8kVv/5CTtZFcaft8HeSlw==","signatures":[{"sig":"MEUCIQCcIj14uqjpnpnVbH3LcV7G/Ikplyruvz5AwxeILDgngAIgHrP4g1eUcyyifafifdvgT7v4ww/j0MZd0zuogv0Nzno=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27059,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfhWXlCRA9TVsSAnZWagAAdRQP/1s//vk+L3ljDvOALZdm\nw02avwwQDviWvZi3gbWMrz5+14gXOqgeYfBvB2gt3BuNUBPP5zmY9GOP/Jcg\nHdpk7V0e42kccDDWmy33PggFEMZKgBSmnxJ3/VogWqiZogvNwKLc1aLm9GNg\nBpBavTvWsbpiJZbmATzzVxwUnHF9jkCvEA3LRw/TfaEUHSHskjRGXm8ivBpM\nagjHA3sc3fx0H2sPL4rc6VBqVhc4JHl3N8SakVv35m1G69QX/McuC2MrCvOw\nD2j4uDEnV5AOT5sE8qBClrtg80d4M2t/wpig0xNnLVqaRmR6CBZlw4ASvV0t\n5jJ8UGtYORUyDJGjHxZqdHeXF8l/ffoWrMTsDalqfgofBABwBgN9w6NPju6R\ncjy61T3xSOOgbb04BIWbdpsXnhjNK9MZ6KrNQW8OgaB+CLIuKHV8uccH+yW+\nOHJUDxX/BWrS+vYWFRt5s4aJYVC1jF+NhrpPM+RiFvqIGzaC5ELLyantj97V\nGiSQkxqGY9AdXGpbXJAk8KyZf4ylrdTtZ1bbtpNfgMFbTQtrlGWePTvwKoSf\nk2QDp/acKFX7+xfHrAWUYENZFmMsRPjaAaOWBbYekClFETJ6p5lry8NvDZ9B\nMgRUoNE23aH8nGFz5I02PEBXobgTuDCLKkIxfdnba728RCEVFzuzCE/Vd+rR\n4tpH\r\n=KG6z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"91755af8f395c405ab144274c1894018363fd8b1","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.079a74.0_1602577892885_0.8717147455239549","host":"s3://npm-registry-packages"}},"2.0.2-alpha.c8e7c3.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.c8e7c3.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.c8e7c3.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"855c13d741c380400d8d1133159998780df0abec","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.c8e7c3.0.tgz","fileCount":13,"integrity":"sha512-xuWBFane/z7mMtNLF0SsJVCikNJimUZB1lbf36QD9aPCKA6sco8VRZzVnlJHRal5nXAyqMp/XxjERO01NuTHOQ==","signatures":[{"sig":"MEQCICPYK+RIZwnMlpXT2n8amrL1c9ju79WR9SJ5C98XDIvrAiA3MAuFo/NdJlgfads4HtWfdLwt21fKAyHb5rTKEJyBjQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27059,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfic+fCRA9TVsSAnZWagAA0QEP/jpxNoLZ8K0yhIGQCo8+\nZDW3ypBWlqo8pIFkcoiq7V7rBFdF/sOqHATz7NhHnwf9k3c8btmGWAbTM2uc\nR3RPb8kMulz+a8k1jN6KhA4TlKdzChT82dhAbci6JklXopM8nrCob2VK0pTe\nMGcmtsMgcQRI1tM70QsoePNsSiaGqOcXVogiCbs79K8g3K2v0ituWKoLgdmc\nW6gDPVTPIF9P+v6WPPadUPPvaSz7U2aUPnLB9ioB/dZSDg2AC+WQ8b5+gLkR\nGWTNFqb+zOPsdBgH8XEGx+4OdDtwhC3NS74ktnv+UKnJvrfhuneXqRd4VfV1\n1aGuxd25KGzBEgoi6p5KcRr6LCPdx4BFFHuRICx9snKYMS2vIHjkYa0ayf5J\nuxm0h4guVGxxhJVA61ZQWjnKuJX+SfxYYiA5yYiRtC1fhiBunSuw3gbBlEcN\nK+FWv53Hc4ZAo15/zuek5wAjkfIE66oGsorcrKyEYeagMAaZU0ZGDxVbrEBw\ns8DzV7QXLZN+K1RLoaePQFvqTtgsBs+mw80K2XZYiI/NlssASoC/gjM16FDg\n7Q0gdbSyeo1NMH9QBzTGoZtlcFN7UEFF5S674RtX/uBqg7SO5ngg44r/kVlm\nWcct9AUR7fIKqNX4nD+ZaoOAB7QIifK3EsUIp6Z2Qsssq+rPUeo+m17/C8Du\nU6kp\r\n=DL6d\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"479fc6cb417a305a244b8c5f0ab647aacae878d0","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.c8e7c3.0_1602867102467_0.9605851700703882","host":"s3://npm-registry-packages"}},"2.0.2-alpha.7f7677.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.7f7677.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.7f7677.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"47db4a76d9448eceb0a1547eed96928613242651","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.7f7677.0.tgz","fileCount":13,"integrity":"sha512-3UbXntDT2xzMVZhhaHXVBiU8HPnNAp6eOxDsxneVZh3LAsG8QTu1d1fs+UemTKvHqrU6ZtrXVgY5L/OQ9vRolw==","signatures":[{"sig":"MEYCIQDWgEImihgPJuodBDwyKKkY9YhVUvA/3K0vUNX1KVNaSgIhAMyMdW+2hW1lUGcHgCHyXe77cWWMyOQkTo3z04rLDlAc","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27059,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfidE/CRA9TVsSAnZWagAAOukQAI1nJBtizu6XRGv7O5D7\nvbk9Fdq9M6cg4ee5lXHGuMpdiirKN4GDfhXfLlvi7kBineQqFH/8i73kJbH7\nGKnr+UAeCkKLO0hLMtN+AAlaThgtIOgQa8/gHsBjS6d3RHp/nOePkjFi2BnT\n/cerhfECK48yFkmVYDZGqMBaqQhp2Ph4I453lRjA/cqeOuBa3fd8flxdLEz0\n9yMxk+bvcWpouwytVM9GxjiA1PzYEtTrRfBEZfH6Qsly8z+oMlSuaY/tvUzV\n9uHeKOT/I1hLUAQns2Dz4jZAlMavXyzUcx3m7r0GkssXxeXKiIRcAoI0QwkS\n0uKeWdfXdJxKDu/+FItfBogFs4Wl2VtwDCPw1yYA6bE3Suc0JVpBHYerfhen\n1AmWUrnLKeh6NRsP62D6sTLBxbfzljfWbmBdSkfC7D+2Ieccf78WkXQX4Xa4\nwh1Pu5eNVddKtoTpVuj5DfOkVy+Igkx4rmYkYCNlijycb9FBK2uF6dEicJYH\nznlCLjGO+wijUYK+r4swQJppyEXa9TWOPEiXvuBObslb0VII+H/GtK64+fc2\nsP2j6bxM2UXogh+NVrhJQfXfbwseOSQfBuL1s2GSlFCRNcoxd/b5zrNb7xxB\nsbJuyo0Ncpu6ZuixU0ufZeu/t/3CuDSHWgqHP/yyigylKytno8RPBhY//2bO\nZF+9\r\n=uD5x\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"4a4578165e5dae4965d5b6a94b6b548e744e9054","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.7f7677.0_1602867518930_0.6994509134089921","host":"s3://npm-registry-packages"}},"2.0.2-alpha.53ea0a.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.53ea0a.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.53ea0a.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"fc3a784c4dfa7dd9ca53894b76cbf501e5ea2691","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.53ea0a.0.tgz","fileCount":13,"integrity":"sha512-QFrL8RDu5eFDLsq/1CG01/mGuEdWBvx5ClARz9ZDV1SyPKFtKcoD2A8PhrFv3pp1x7G+kqADeBZ9i2E/KTd1Tw==","signatures":[{"sig":"MEQCICC5MhhhpJzMYTxxnp+7IkjL+CLR/2C2O6enQprK4+gjAiAgxMjAvkjRs1In0uoAKcxHFiQk6OAivUbzWiDHAPiqhg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27059,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfidFHCRA9TVsSAnZWagAAvbcP/2nhAElj+Y1lJc3aLSaj\n/w/fj69/nBLftIuUTka/l6+XAK4JX3/WOCdAnPYDnLyPHIDnHWAChCj5xvIn\nqSqi6V4PZZ4ZWmiyY+s2VX1J1LBtyok/ZxTAR1oSbyDQQdtn8D6M6mNrj9zX\nxNlc13Fy1a6JsalzJPCKXfuAClkATWUY6UTd+lfRZ5thaaxoacqmDnk6O4kc\npe5MrFMQZJjTI1a1H3w68IgihXhrZI+Wa1GuLg0lBNRt9afyKtzJOv+1PZwD\nwiqPCKVyPrnwO263Ubi5lOK+ACWUEbErogdlH+yw7GORxlzGm2lmH+CrXZHX\nSz4n/ku8ARDLzMStIWzTHTEQSBgZDkXvbY5aR9AwI8MPvLiGascOg9F48L4M\n1nG5hObTHrzGEWjUHycCXTXLegm2PMpzElm9Hv2vlUlfeaLLrf9llEn5W0rk\ng3TVwJis2KJVbXrXDNQKE+N1kgLdlLpXY4s0+yAkoVokE+tdkI9+SQpLMIZJ\nDC06h6ByTthmXjg9+vdLk6AUFbpfhtP6TNvAH/j9s2dodGUmoYuzcHtHr9t9\nAJ8d3KGgypEoGwqjP7zoyGAK71j7Y2i6WGpEvX9WKJ6srt1suRvErH+yqrVm\nBQFuYWea4x07qrCxNr1A4GWZmtBCZAcCc6boHy4dSL0vsLqhZVc9OaeSIPyA\nQwhB\r\n=Es9t\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"798deefeb355384247a963ae9a59b9a23c42a256","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.53ea0a.0_1602867527359_0.8201311308060573","host":"s3://npm-registry-packages"}},"2.0.2-alpha.4d8a13.0":{"name":"@codecademy/enzyme-helpers","version":"2.0.2-alpha.4d8a13.0","author":{"name":"codecademy"},"license":"MIT","_id":"@codecademy/enzyme-helpers@2.0.2-alpha.4d8a13.0","maintainers":[{"name":"codecademy","email":"dev@codecademy.com"}],"homepage":"https://github.com/Codecademy/client-modules#readme","bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"dist":{"shasum":"4387c94dbc3c3dfd4c473dcbf7b777fc3b36146a","tarball":"https://registry.npmjs.org/@codecademy/enzyme-helpers/-/enzyme-helpers-2.0.2-alpha.4d8a13.0.tgz","fileCount":13,"integrity":"sha512-52A29zJS2/qfwqScdy0zoiINUmD6s4Jk4QzoMamN1THZKqnDHSPqNLPQPpMXcke6wYQGYUI4LBB/zBiToXU9Hw==","signatures":[{"sig":"MEUCICsyDL05ohXHRcVNCLdlAssvZtPp24C6xCHPh41viA0TAiEAkR10MfnfQZUnepiLXpCLp2AoiIkTH0SBfn8XhGWY2/E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27059,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfidLbCRA9TVsSAnZWagAAmfYQAIjOCGTZdsjgBT8cUyOS\nB8+NuUKsmo+yYwaX67fYAUmHx6rHqYOtsGqRGldHw1FNTEvqrp971fPWbcNo\n4LKqXe6U6z8dSdY9IVIT1UxNxTmdc8XHDEscfU3emjrqDPtRR8+y5O+iiqom\nDawes4Px3QF0IWCgLIlW8oW6/d5jsJ/lvUOQtz2HiZhJUdVpNjHk3mZf8wfF\nDQ1INn4hrSmB5oTdQ5i7lKDSlXW5Mfu5Fi9oNN7HhWzog9gUL8kGqk8VGLxe\nmNQMU33gy050dIOUOatU/lf78d0rkoMQ9m8OwV5BTyhG4FPlZDfEZqqaAh25\nhfr8YNndoyVctjXITs696g7ThoOXntWuSupmi6Kz1r3jvRWWfJf0usJ4URlt\nr0RimSZ9pCs9PBW76bPjcCPITxGtCaA2kPy3cPqIG50D/VPTFQ2xfYBGSkTg\nGj0qM5GE2XDK/nFICkiznsVDQ5wUxIqjU7W4qCz9U0+VyllELBAUOu5SSpV2\npXTLTSVao/z/SqsarWOMyF7yoFo35E98kthA8rkTTu/kbJ7323HxK/Zz/KYp\nYT0K+FT2hF9MQIazcdzx8ifXwXs+10ApZM+p7g1Y+eaVCtUOtvMu4non6N16\nFYVgTyHf05F8B/kywMDsR96Qw71SyhLNLNt7COCcvRQ0TMbyKxvSVeJEULdG\nnYlY\r\n=27LV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/bundle.js","module":"dist/bundle.esm.js","readme":"# Enzyme Helpers\n\nCollection of Enzyme helpers for actions and expectations. \n\n## Installation\n```\nyarn add -D @codecademy/enzyme-helpers\n```\n`enzyme-helpers` requires `react`, `react-dom`, `enzyme`, and `enzyme-adapter-react-16` as peer dependencies\n\n## Usage\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers } from '@codecademy/enzyme-helpers';\nimport MyComponent from 'components/MyComponent';\n\nconst { expectCount, setup } = createEnzymeHelpers({\n  Component: MyComponent,\n  render: shallow,\n  baseProps: { baseProp: 'a-base-prop' },\n});\n\ndescribe('MyComponent', () => {\n  test('it renders the component', () => {\n    // calling setup() automatically fires expectations that the component exists and renders\n    const { wrapper } = setup({ prop: 'a-prop' });\n\n    // use functions returned by the class constructor for common expectations\n    expectCount(button, 1);\n\n    // setup() returns a wrapper for additional expectations\n    expect(wrapper.props().prop).toEqual('a-prop');\n\n    // props passed to the class constructor are passed to every setup() call\n    expect(wrapper.props().baseProp).toEqual('a-base-prop');\n  });\n});\n```\n\n## Usage with Redux\n```\nimport { shallow } from 'enzyme';\nimport { createEnzymeHelpers, mockStore } from '@codecademy/enzyme-helpers';\nimport MyConnectedComponent from 'components/MyConnectedComponent';\n\n// mock redux store data \nconst storeData = {\n  storeKey: 'storeValue',\n};\n\nconst { setup } = createEnzymeHelpers({\n  Component: MyConnectedComponent,\n  render: shallow,\n  baseProps: { store: mockStore(storeData) },\n});\n\ndescribe('MyConnectedComponent', () => {\n  test('it receives store data', () => {\n    const { wrapper } = setup();\n\n    expect(wrapper.props().storeKey).toEqual('storeValue');\n  });\n})\n```\n\n## Configuration\n`createEnzymeHelpers` takes an object of options\n```\ncreateEnzymeHelpers({ Component, render, baseProps = {} });\n```\n\n| Name | Type | Required? | Description|\n| - | - | - | - |\n| Component | `ReactComponent` | Yes | The component to render and test\n| render | `function` | Yes | One of Enzyme's three render methods: `shallow`, `render`, `mount`\n| baseProps | `object` | No | Props passed to every component created by `setup()`\n\n## API \nFunctions returned from `createEnzymeHelpers`. See `test/main.test.js` for example usage.\n```\nconst {\n  expectCount,\n  setup,\n  ...other functions\n} = createEnzymeHelpers({ Component, render, baseProps });\n```\n| Function | Description |\n| - | - |\n| `setup()` | Render a react component and expect it exists. `setup()` returns an object containing the enzyme `wrapper` for additional expectations |\n| `debug()` | Print the `wrapper` contents to the console |\n| `click(selector)` | Simulate a click on the specified selector |\n| `clickTestId(testId)` | Simulate a click on the specified test id |\n| `expectCount(selector, count = 1)` | Expect a number of the specified selector |\n| `expectTestId(testId)` | Expect that a given test id exists in the wrapper |\t\n| `expectTestIdCount(testId, count = 1)` | Expect a number of the specified test id |\n| `expectAllTestIds(ids)` | Expect an array of test ids |\n\n### A Note on Test Ids\n`enzyme-helpers` expects test ids like so (note, you only need to pass the value to test id functions):\n```\n<div data-testid=\"my-test-id\" />\n\nexpectTestId(div, 'my-test-id') // true\n```\n\n## Development\n```\nyarn link\nyarn develop\n\n# in your project's repo\nyarn link @codecademy/enzyme-helpers\n```","gitHead":"f8dab02d3d6cfec5ddfaf0ffd9fb2b1b3ac7fb03","scripts":{"build":"rollup --config --sourcemap","develop":"yarn build --watch","prepublishOnly":"yarn build"},"_npmUser":{"name":"codecademy","email":"dev@codecademy.com"},"repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"_npmVersion":"lerna/3.22.1/node@v12.14.0+x64 (linux)","description":"Helpers for writing Enzyme tests","directories":{},"_nodeVersion":"12.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"rollup":"2.29.0","jest-enzyme":"7.1.2","rollup-plugin-babel":"4.3.2","rollup-plugin-node-resolve":"4.2.1"},"peerDependencies":{"react":"^16.12.0","enzyme":"^3.9.0","react-dom":"^16.12.0","enzyme-adapter-react-16":"^1.11.2"},"_npmOperationalInternal":{"tmp":"tmp/enzyme-helpers_2.0.2-alpha.4d8a13.0_1602867931074_0.05299561925167673","host":"s3://npm-registry-packages"}}},"time":{"created":"2019-04-05T15:50:35.089Z","modified":"2025-12-09T21:50:13.599Z","1.0.1-alpha.e903ff.0":"2019-04-05T15:50:35.317Z","1.0.1-alpha.6367df.0":"2019-04-08T15:49:21.566Z","1.0.1-alpha.09002f.0":"2019-04-08T18:31:10.388Z","1.1.0":"2019-04-08T18:37:38.995Z","1.1.1-alpha.a81af4.0":"2019-04-08T18:43:20.769Z","1.1.1":"2019-04-08T19:10:34.370Z","1.1.1-alpha.75129f.0":"2019-04-08T19:12:22.020Z","1.1.2-alpha.42a308.0":"2019-04-12T18:25:07.213Z","1.1.2-alpha.c04479.0":"2019-04-19T15:37:24.663Z","1.1.2-alpha.3d375b.0":"2019-04-20T00:05:55.994Z","1.0.1-alpha.261e9f.0":"2019-04-24T18:47:40.354Z","1.0.1-alpha.834210.0":"2019-04-24T20:05:22.779Z","1.1.2-alpha.d019da.0":"2019-05-03T21:13:59.406Z","1.1.2-alpha.273521.0":"2019-05-06T15:46:33.597Z","1.1.2-alpha.6f491f.0":"2019-05-12T00:07:41.974Z","1.1.2-alpha.5ae502.0":"2019-05-15T15:58:03.967Z","1.1.2-alpha.ad2c5c.0":"2019-05-17T00:06:42.811Z","1.1.2-alpha.43232c.0":"2019-05-18T00:06:55.376Z","1.1.2-alpha.873cf9.0":"2019-05-20T00:05:40.884Z","1.1.2-alpha.12cdd4.0":"2019-05-28T00:07:45.412Z","1.1.2-alpha.2eda0b.0":"2019-05-31T00:07:57.697Z","1.1.2-alpha.0fe053.0":"2019-06-01T00:06:03.896Z","1.1.2-alpha.dd6fcc.0":"2019-06-02T00:05:46.590Z","1.1.2-alpha.2eeef4.0":"2019-06-05T13:58:15.724Z","1.1.2-alpha.cd9441.0":"2019-06-05T15:38:47.574Z","1.1.2-alpha.fad5b9.0":"2019-06-07T00:08:47.267Z","1.1.2-alpha.9d68b9.0":"2019-07-15T15:30:26.813Z","1.1.2-alpha.7b91fa.0":"2019-08-01T12:51:03.794Z","1.1.2-alpha.25cbcb.0":"2019-08-06T09:33:43.774Z","1.1.2-alpha.2a8e4b.0":"2019-08-07T09:54:02.417Z","1.1.2":"2019-08-07T12:26:32.793Z","1.1.3-alpha.6081b1.0":"2019-08-08T14:48:32.643Z","1.1.3-alpha.55c2be.0":"2019-08-14T19:32:32.292Z","1.1.3-alpha.f2a0ef.0":"2019-08-14T19:44:32.168Z","1.1.3-alpha.98409b.0":"2019-08-14T19:56:53.299Z","1.1.3":"2019-08-14T20:18:43.266Z","1.1.4-alpha.e271f4.0":"2019-08-16T15:24:52.071Z","1.1.4":"2019-08-20T16:01:37.695Z","1.1.5-alpha.adcac8.0":"2019-08-20T16:57:43.347Z","1.1.5-alpha.522bcb.0":"2019-08-20T18:43:02.289Z","1.1.5-alpha.4d1cf1.0":"2019-08-20T19:10:22.523Z","1.1.5-alpha.fb61c5.0":"2019-08-21T08:07:46.455Z","1.1.5-alpha.b41a32.0":"2019-08-22T07:33:09.038Z","1.1.5-alpha.3507c6.0":"2019-08-22T07:33:28.923Z","1.1.5-alpha.bd89c1.0":"2019-08-22T07:35:28.945Z","1.1.5-alpha.525712.0":"2019-08-22T07:36:30.881Z","1.1.5-alpha.e75239.0":"2019-08-22T14:15:53.874Z","1.1.5-alpha.e1fa57.0":"2019-08-23T08:00:58.461Z","1.1.5-alpha.4ec5d1.0":"2019-08-23T08:03:04.924Z","1.1.5-alpha.969fdc.0":"2019-08-24T22:45:38.485Z","1.1.5-alpha.af7812.0":"2019-08-26T06:52:08.529Z","1.1.5-alpha.c4390f.0":"2019-08-26T06:52:27.078Z","1.1.5-alpha.9a2681.0":"2019-08-26T19:37:45.951Z","1.1.5-alpha.16eb75.0":"2019-08-26T20:36:22.503Z","1.1.5-alpha.afb03c.0":"2019-08-26T22:21:17.235Z","1.1.5-alpha.e029c5.0":"2019-08-27T17:19:06.025Z","1.1.5-alpha.403b5d.0":"2019-08-27T21:31:38.228Z","1.1.5-alpha.d15242.0":"2019-08-27T23:19:40.803Z","1.1.5":"2019-08-28T16:43:58.783Z","1.1.6":"2019-09-03T14:23:23.875Z","1.1.6-alpha.411ca5.0":"2019-09-05T17:30:05.180Z","1.1.7-alpha.906168.0":"2019-10-08T18:28:23.562Z","1.1.7":"2019-10-08T19:24:43.134Z","1.1.8-alpha.d3294f.61":"2019-11-29T20:45:46.364Z","1.1.8-alpha.0f6204.101":"2020-01-02T21:54:51.562Z","1.1.8":"2020-01-06T17:40:48.806Z","1.1.9-alpha.47709.5":"2020-01-06T17:45:23.817Z","1.1.9-alpha.bcc11b.3":"2020-01-07T02:01:08.758Z","1.1.9-alpha.c1cc8d.28":"2020-01-08T18:57:02.985Z","1.1.9-alpha.127490.36":"2020-01-13T16:03:56.234Z","1.1.9-alpha.54e86d.42":"2020-01-17T22:23:39.577Z","1.1.9-alpha.50536b.27":"2020-01-22T22:00:31.979Z","1.1.9-alpha.9a9880.49":"2020-02-06T13:13:14.113Z","1.1.9-alpha.b22c27.99":"2020-03-05T12:23:43.303Z","1.1.9-alpha.3b9285.91":"2020-03-05T14:22:01.553Z","1.1.9-alpha.7d1eca.91":"2020-03-05T16:13:09.330Z","1.1.9":"2020-03-05T18:03:38.785Z","1.1.10-alpha.8e28b0.5":"2020-03-05T20:10:49.075Z","1.1.10-alpha.c0d688.3":"2020-03-06T03:35:55.879Z","1.1.10-alpha.a07027.10":"2020-03-06T22:20:46.647Z","1.1.10-alpha.9a0203.41":"2020-04-01T14:33:42.270Z","1.1.10-alpha.80e421.55":"2020-04-02T19:58:58.920Z","1.1.10-alpha.b0a213.56":"2020-04-02T20:07:25.105Z","1.1.10-alpha.9ef6ff.59":"2020-04-02T22:12:58.751Z","1.1.10-alpha.9eb421.61":"2020-04-02T22:25:51.463Z","1.1.10-alpha.63":"2020-04-02T23:04:14.312Z","2.0.0-alpha.823f0b.0":"2020-04-02T23:16:50.106Z","1.1.10-alpha.dac9da.0":"2020-05-04T16:41:03.669Z","1.1.10-alpha.9a8628.0":"2020-05-04T17:40:28.442Z","1.1.10-alpha.7e132d.0":"2020-05-04T18:04:03.467Z","1.1.10":"2020-05-04T18:13:12.029Z","1.1.11-alpha.8a1e1b.0":"2020-05-22T15:48:14.725Z","1.1.11":"2020-07-29T13:29:33.745Z","1.1.12-alpha.40d10f.0":"2020-08-19T12:38:59.380Z","2.0.0":"2020-08-27T14:57:10.856Z","2.0.1-alpha.dd419b.0":"2020-09-24T19:09:37.329Z","2.0.1-alpha.5c81b7.0":"2020-10-06T19:19:13.087Z","2.0.1-alpha.6179cf.0":"2020-10-06T19:30:02.673Z","2.0.1-alpha.4bb80a.0":"2020-10-06T19:31:09.033Z","2.0.1-alpha.4a7966.0":"2020-10-06T19:41:15.094Z","2.0.1-alpha.134d6b.0":"2020-10-06T19:41:37.263Z","2.0.2-alpha.ac77fe.0":"2020-10-08T21:14:56.219Z","2.0.2-alpha.8cf23f.0":"2020-10-08T21:23:10.838Z","2.0.2-alpha.dc226a.0":"2020-10-08T21:33:09.807Z","2.0.2-alpha.f04d1b.0":"2020-10-08T22:14:47.531Z","2.0.2-alpha.b75761.0":"2020-10-08T22:18:10.796Z","2.0.2-alpha.cdf27a.0":"2020-10-08T22:22:24.989Z","2.0.2-alpha.05fe39.0":"2020-10-08T22:26:41.485Z","2.0.2-alpha.f39688.0":"2020-10-08T22:26:56.841Z","2.0.2-alpha.aeba04.0":"2020-10-08T22:32:03.235Z","2.0.2-alpha.b1dffa.0":"2020-10-08T22:35:04.615Z","2.0.2-alpha.bb538c.0":"2020-10-08T22:43:59.863Z","2.0.2-alpha.74117.0":"2020-10-09T00:07:21.277Z","2.0.2-alpha.9897c4.0":"2020-10-09T00:18:04.551Z","2.0.2-alpha.72452e.0":"2020-10-09T00:23:23.227Z","2.0.2-alpha.a5ae4c.0":"2020-10-09T00:31:53.780Z","2.0.2-alpha.c8fe5d.0":"2020-10-09T00:36:04.647Z","2.0.2-alpha.6a6c9e.0":"2020-10-09T00:38:50.794Z","2.0.2-alpha.71e549.0":"2020-10-09T00:47:36.439Z","2.0.2-alpha.c8b49a.0":"2020-10-09T00:47:41.450Z","2.0.2-alpha.59c588.0":"2020-10-09T01:05:32.842Z","2.0.2-alpha.8a8933.0":"2020-10-09T01:13:23.274Z","2.0.2-alpha.57949c.0":"2020-10-09T02:58:37.774Z","2.0.2-alpha.aa0849.0":"2020-10-09T03:07:07.740Z","2.0.2-alpha.14bd6b.0":"2020-10-09T03:26:12.977Z","2.0.2-alpha.b8149e.0":"2020-10-09T03:34:06.179Z","2.0.2-alpha.339f72.0":"2020-10-09T11:15:20.987Z","2.0.2-alpha.e22d85.0":"2020-10-09T11:23:04.377Z","2.0.2-alpha.271f19.0":"2020-10-09T22:37:27.803Z","2.0.2-alpha.9f6022.0":"2020-10-09T22:48:16.982Z","2.0.2-alpha.17727e.0":"2020-10-09T23:42:39.236Z","2.0.2-alpha.30fc29.0":"2020-10-09T23:47:53.056Z","2.0.2-alpha.46c426.0":"2020-10-09T23:48:23.630Z","2.0.2-alpha.bdbec1.0":"2020-10-09T23:49:22.043Z","2.0.2-alpha.70f229.0":"2020-10-09T23:51:14.604Z","2.0.2-alpha.0fb592.0":"2020-10-09T23:54:44.201Z","2.0.2-alpha.5570d6.0":"2020-10-09T23:55:05.111Z","2.0.2-alpha.5a8136.0":"2020-10-09T23:56:11.011Z","2.0.2-alpha.f85409.0":"2020-10-09T23:57:35.733Z","2.0.2-alpha.716d3c.0":"2020-10-09T23:58:31.489Z","2.0.2-alpha.002fcf.0":"2020-10-09T23:59:05.653Z","2.0.2-alpha.bf1932.0":"2020-10-09T23:59:27.144Z","2.0.2-alpha.a7a862.0":"2020-10-09T23:59:48.394Z","2.0.2-alpha.4ff238.0":"2020-10-10T00:02:10.143Z","2.0.2-alpha.4339c0.0":"2020-10-10T00:02:55.324Z","2.0.2-alpha.7b1a8c.0":"2020-10-10T00:05:15.811Z","2.0.2-alpha.941c2c.0":"2020-10-10T00:09:09.229Z","2.0.2-alpha.0885ff.0":"2020-10-10T04:40:37.631Z","2.0.2-alpha.56d55e.0":"2020-10-10T04:50:10.327Z","2.0.2-alpha.aefcd4.0":"2020-10-10T05:24:49.987Z","2.0.2-alpha.b54a0a.0":"2020-10-10T05:29:36.512Z","2.0.2-alpha.73ae6b.0":"2020-10-10T05:30:04.694Z","2.0.2-alpha.994e8d.0":"2020-10-10T05:32:19.640Z","2.0.2-alpha.07067c.0":"2020-10-10T05:32:42.454Z","2.0.2-alpha.f5bb63.0":"2020-10-10T05:36:06.502Z","2.0.2-alpha.e5d785.0":"2020-10-10T05:40:40.020Z","2.0.2-alpha.d0185e.0":"2020-10-10T05:41:46.026Z","2.0.2-alpha.46ee78.0":"2020-10-10T05:44:44.098Z","2.0.2-alpha.9a33c4.0":"2020-10-10T09:59:20.302Z","2.0.2-alpha.a28522.0":"2020-10-10T10:07:20.964Z","2.0.2-alpha.33c570.0":"2020-10-10T22:19:34.348Z","2.0.2-alpha.4cbb6b.0":"2020-10-10T22:26:54.594Z","2.0.2-alpha.eeed95.0":"2020-10-10T22:27:53.669Z","2.0.2-alpha.d04cbc.0":"2020-10-10T22:28:28.725Z","2.0.2-alpha.3df899.0":"2020-10-11T04:21:12.359Z","2.0.2-alpha.6bc470.0":"2020-10-11T04:28:15.969Z","2.0.2-alpha.b038bc.0":"2020-10-11T04:30:34.569Z","2.0.2-alpha.03df2d.0":"2020-10-11T04:37:15.335Z","2.0.2-alpha.52ee79.0":"2020-10-11T04:37:34.514Z","2.0.2-alpha.a825f4.0":"2020-10-11T13:09:25.738Z","2.0.2-alpha.0b9e7b.0":"2020-10-11T13:24:32.010Z","2.0.2-alpha.800cdc.0":"2020-10-11T14:19:35.299Z","2.0.2-alpha.720595.0":"2020-10-11T14:26:20.210Z","2.0.2-alpha.9c6775.0":"2020-10-11T14:29:58.442Z","2.0.2-alpha.2d370b.0":"2020-10-11T14:35:10.810Z","2.0.2-alpha.438f18.0":"2020-10-11T15:18:08.519Z","2.0.2-alpha.9db3a7.0":"2020-10-11T15:26:44.391Z","2.0.2-alpha.859128.0":"2020-10-11T15:37:24.551Z","2.0.2-alpha.04e46f.0":"2020-10-11T16:27:13.237Z","2.0.2-alpha.966535.0":"2020-10-11T16:35:09.676Z","2.0.2-alpha.7e88db.0":"2020-10-11T16:52:31.847Z","2.0.2-alpha.8013f4.0":"2020-10-11T17:00:44.823Z","2.0.2-alpha.b48958.0":"2020-10-11T17:19:10.155Z","2.0.2-alpha.e27b68.0":"2020-10-11T17:26:31.006Z","2.0.2-alpha.14c1bf.0":"2020-10-11T18:31:22.765Z","2.0.2-alpha.fc980a.0":"2020-10-12T00:10:18.084Z","2.0.2-alpha.a872f0.0":"2020-10-12T00:18:39.535Z","2.0.2-alpha.71f6a9.0":"2020-10-12T00:41:52.148Z","2.0.2-alpha.0d512b.0":"2020-10-12T00:47:42.598Z","2.0.2-alpha.de976d.0":"2020-10-13T00:35:26.182Z","2.0.2-alpha.213b36.0":"2020-10-13T00:45:05.578Z","2.0.2-alpha.78d0dd.0":"2020-10-13T00:53:08.446Z","2.0.2-alpha.ecc725.0":"2020-10-13T00:54:11.373Z","2.0.2-alpha.40d7f9.0":"2020-10-13T01:02:33.521Z","2.0.2-alpha.bdee6f.0":"2020-10-13T01:05:38.759Z","2.0.2-alpha.f5a26c.0":"2020-10-13T08:22:32.776Z","2.0.2-alpha.318f8b.0":"2020-10-13T08:30:23.121Z","2.0.2-alpha.079a74.0":"2020-10-13T08:31:33.017Z","2.0.2-alpha.c8e7c3.0":"2020-10-16T16:51:42.612Z","2.0.2-alpha.7f7677.0":"2020-10-16T16:58:39.160Z","2.0.2-alpha.53ea0a.0":"2020-10-16T16:58:47.491Z","2.0.2-alpha.4d8a13.0":"2020-10-16T17:05:31.221Z"},"bugs":{"url":"https://github.com/Codecademy/client-modules/issues"},"author":{"name":"codecademy"},"license":"MIT","homepage":"https://github.com/Codecademy/client-modules#readme","repository":{"url":"git+https://github.com/Codecademy/client-modules.git","type":"git"},"description":"Helpers for writing Enzyme tests","maintainers":[{"email":"dev@codecademy.com","name":"codecademy-eng"}],"readme":"","readmeFilename":""}