├── .eslintrc.js ├── .gitignore ├── LICENSE ├── README.md ├── babel.config.js ├── badges ├── badge-branches.svg ├── badge-functions.svg ├── badge-lines.svg └── badge-statements.svg ├── fixtures ├── canary.js ├── fiftyFifty.js ├── messages.js └── twenties.js ├── jest.config.js ├── jest.setup.js ├── package.json ├── rollup.config.js ├── scripts ├── generateBadges.js ├── generateBadges.sh └── repeatTests.sh ├── src ├── __snapshots__ │ └── validateVariants.test.js.snap ├── const.js ├── context │ ├── ExperimentContext.js │ ├── ExperimentProvider.js │ ├── initialProps.js │ └── initialProps.test.js ├── hook │ ├── useABtest.js │ ├── useABtest.test.js │ └── useExperimentContext.js ├── index.js ├── presets │ ├── createPreset.js │ ├── localStorage.js │ ├── localStorage.test.js │ ├── mapping.js │ ├── mapping.test.js │ ├── sessionStorage.js │ └── sessionStorage.test.js ├── random.js ├── random.test.js ├── validateVariants.js └── validateVariants.test.js ├── test-utils └── index.js └── yarn.lock /.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/.eslintrc.js -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | lib 3 | coverage 4 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/README.md -------------------------------------------------------------------------------- /babel.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/babel.config.js -------------------------------------------------------------------------------- /badges/badge-branches.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/badges/badge-branches.svg -------------------------------------------------------------------------------- /badges/badge-functions.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/badges/badge-functions.svg -------------------------------------------------------------------------------- /badges/badge-lines.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/badges/badge-lines.svg -------------------------------------------------------------------------------- /badges/badge-statements.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/badges/badge-statements.svg -------------------------------------------------------------------------------- /fixtures/canary.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/fixtures/canary.js -------------------------------------------------------------------------------- /fixtures/fiftyFifty.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/fixtures/fiftyFifty.js -------------------------------------------------------------------------------- /fixtures/messages.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/fixtures/messages.js -------------------------------------------------------------------------------- /fixtures/twenties.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/fixtures/twenties.js -------------------------------------------------------------------------------- /jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/jest.config.js -------------------------------------------------------------------------------- /jest.setup.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/jest.setup.js -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/package.json -------------------------------------------------------------------------------- /rollup.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/rollup.config.js -------------------------------------------------------------------------------- /scripts/generateBadges.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/scripts/generateBadges.js -------------------------------------------------------------------------------- /scripts/generateBadges.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/scripts/generateBadges.sh -------------------------------------------------------------------------------- /scripts/repeatTests.sh: -------------------------------------------------------------------------------- 1 | for i in `seq 1 30`; do 2 | yarn test "$@" 3 | done 4 | -------------------------------------------------------------------------------- /src/__snapshots__/validateVariants.test.js.snap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/src/__snapshots__/validateVariants.test.js.snap -------------------------------------------------------------------------------- /src/const.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/src/const.js -------------------------------------------------------------------------------- /src/context/ExperimentContext.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/src/context/ExperimentContext.js -------------------------------------------------------------------------------- /src/context/ExperimentProvider.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/src/context/ExperimentProvider.js -------------------------------------------------------------------------------- /src/context/initialProps.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/src/context/initialProps.js -------------------------------------------------------------------------------- /src/context/initialProps.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/src/context/initialProps.test.js -------------------------------------------------------------------------------- /src/hook/useABtest.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/src/hook/useABtest.js -------------------------------------------------------------------------------- /src/hook/useABtest.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/src/hook/useABtest.test.js -------------------------------------------------------------------------------- /src/hook/useExperimentContext.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/src/hook/useExperimentContext.js -------------------------------------------------------------------------------- /src/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/src/index.js -------------------------------------------------------------------------------- /src/presets/createPreset.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/src/presets/createPreset.js -------------------------------------------------------------------------------- /src/presets/localStorage.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/src/presets/localStorage.js -------------------------------------------------------------------------------- /src/presets/localStorage.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/src/presets/localStorage.test.js -------------------------------------------------------------------------------- /src/presets/mapping.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/src/presets/mapping.js -------------------------------------------------------------------------------- /src/presets/mapping.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/src/presets/mapping.test.js -------------------------------------------------------------------------------- /src/presets/sessionStorage.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/src/presets/sessionStorage.js -------------------------------------------------------------------------------- /src/presets/sessionStorage.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/src/presets/sessionStorage.test.js -------------------------------------------------------------------------------- /src/random.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/src/random.js -------------------------------------------------------------------------------- /src/random.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/src/random.test.js -------------------------------------------------------------------------------- /src/validateVariants.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/src/validateVariants.js -------------------------------------------------------------------------------- /src/validateVariants.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/src/validateVariants.test.js -------------------------------------------------------------------------------- /test-utils/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/test-utils/index.js -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dan-js/use-ab-test/HEAD/yarn.lock --------------------------------------------------------------------------------