Set up cron job to run fuzz tester (#15718)

Sets up a CircleCI workflow to run the fuzz tests with a randomly
generated seed. The workflow runs on an hourly schedule.
This commit is contained in:
Andrew Clark
2019-05-23 14:09:08 -07:00
committed by GitHub
parent 025b07b610
commit 399cd0d16c
2 changed files with 32 additions and 3 deletions
+29 -1
View File
@@ -165,6 +165,21 @@ jobs:
- *run_yarn
- run: yarn test-build --maxWorkers=2
test_fuzz:
docker: *docker
environment: *environment
steps:
- checkout
- *restore_yarn_cache
- *run_yarn
- run:
name: Run fuzz tests
command: |
FUZZ_TEST_SEED=$RANDOM
echo $FUZZ_TEST_SEED
yarn test fuzz --maxWorkers=2
yarn test-prod fuzz --maxWorkers=2
test_build_prod:
docker: *docker
environment: *environment
@@ -177,7 +192,7 @@ jobs:
workflows:
version: 2
build-and-test:
commit:
jobs:
- setup
- lint:
@@ -213,3 +228,16 @@ workflows:
- test_build_prod:
requires:
- build
hourly:
triggers:
- schedule:
cron: "0 * * * *"
filters:
branches:
only:
- master
jobs:
- setup
- fuzz_tests:
requires:
- setup
@@ -5,8 +5,7 @@ let Scheduler;
let ReactFeatureFlags;
let Random;
const SEED = 0;
const SEED = process.env.FUZZ_TEST_SEED || 'default';
const prettyFormatPkg = require('pretty-format');
function prettyFormat(thing) {
@@ -339,6 +338,8 @@ describe('ReactSuspenseFuzz', () => {
Failed fuzzy test case:
${prettyFormat(randomTestCase)}
Random seed is ${SEED}
`);
throw e;