{"version":3,"sources":["../test/childrenHavePropXorChildren.jsx"],"names":["describe","it","to","equal","TypeError","assertPasses","validator","element","propName","componentName","assertFails","be","an","instanceOf","Error","prop"],"mappings":"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","sourcesContent":["import { expect } from 'chai';\nimport React from 'react';\n\nimport { childrenHavePropXorChildren } from '..';\n\nimport callValidator from './_callValidator';\n\ndescribe('childrenHavePropXorChildren', () => {\n it('returns a function', () => {\n expect(typeof childrenHavePropXorChildren('foo')).to.equal('function');\n });\n\n it('throws with an invalid prop name', () => {\n expect(() => childrenHavePropXorChildren()).to.throw(TypeError);\n expect(() => childrenHavePropXorChildren(null)).to.throw(TypeError);\n expect(() => childrenHavePropXorChildren({})).to.throw(TypeError);\n expect(() => childrenHavePropXorChildren([])).to.throw(TypeError);\n expect(() => childrenHavePropXorChildren(() => {})).to.throw(TypeError);\n expect(() => childrenHavePropXorChildren(/a/g)).to.throw(TypeError);\n });\n\n function assertPasses(validator, element, propName, componentName) {\n expect(callValidator(validator, element, propName, componentName)).to.equal(null);\n }\n\n function assertFails(validator, element, propName, componentName) {\n expect(callValidator(validator, element, propName, componentName)).to.be.an.instanceOf(Error);\n }\n\n describe('with a property', () => {\n const prop = 'foo';\n\n it('passes when all children have children', () => assertPasses(\n childrenHavePropXorChildren(prop),\n (\n
\n
a
\n
b
\n
c
\n
\n ),\n 'abc',\n 'ComponentName',\n ));\n\n it('passes when all children have neither the prop nor children', () => assertPasses(\n childrenHavePropXorChildren(prop),\n (\n
\n
\n
\n
\n
\n ),\n 'abc',\n 'ComponentName',\n ));\n\n it('passes when all children have the prop and no children', () => assertPasses(\n childrenHavePropXorChildren(prop),\n (\n
\n
\n
\n
\n ),\n 'abc',\n 'ComponentName',\n ));\n\n it('passes when falsy children are present and non-falsy children passes validator', () => assertPasses(\n childrenHavePropXorChildren(prop),\n (\n /* eslint react/jsx-curly-brace-presence: 1 */\n
\n
\n
\n {null}\n {false}\n {''}\n
\n ),\n 'abc',\n 'ComponentName',\n ));\n\n it('fails when there is a mix of children and no children', () => assertFails(\n childrenHavePropXorChildren(prop),\n (\n
\n
\n
b
\n
\n
\n ),\n 'abc',\n 'ComponentName',\n ));\n\n it('fails when there is a mix of children and the prop', () => assertFails(\n childrenHavePropXorChildren(prop),\n (\n
\n
b
\n
\n
\n ),\n 'abc',\n 'ComponentName',\n ));\n\n it('fails when there is a mix of no prop and the prop', () => assertFails(\n childrenHavePropXorChildren(prop),\n (\n
\n
\n
\n
\n ),\n 'abc',\n 'ComponentName',\n ));\n\n it('fails when falsy children are present and non-falsy children fails validator', () => assertFails(\n childrenHavePropXorChildren(prop),\n (\n /* eslint react/jsx-curly-brace-presence: 1 */\n
\n
\n
\n {null}\n {false}\n {''}\n
\n ),\n 'abc',\n 'ComponentName',\n ));\n });\n});\n"],"file":"childrenHavePropXorChildren.js"}