diff --git a/.changeset/few-turkeys-reflect.md b/.changeset/few-turkeys-reflect.md new file mode 100644 index 0000000000..a845151cc8 --- /dev/null +++ b/.changeset/few-turkeys-reflect.md @@ -0,0 +1,2 @@ +--- +--- diff --git a/README.md b/README.md index 491b7fb217..697cbcdabb 100644 --- a/README.md +++ b/README.md @@ -64,8 +64,9 @@ Since we want the record and replay sides to share a strongly typed data structu 2. Run `yarn install` in the root to install required dependencies for all sub-packages (note: `npm install` is _not_ recommended). 3. Run `yarn dev` in the root to get auto-building for all the sub-packages whenever you modify anything. 4. Navigate to one of the sub-packages (in the `packages` folder) where you'd like to make a change. -5. Patch the code and run `yarn test` to run the tests, make sure they pass before you commit anything. -6. Push the code and create a pull request. +5. Patch the code and run `yarn test` to run the tests, make sure they pass before you commit anything. Add test cases in order to avoid future regression. +6. If tests are failing, but the change in output is desirable, run `yarn test:update` and carefully commit the changes in test output. +7. Push the code and create a pull request. Protip: You can run `yarn test` in the root folder to run all the tests. diff --git a/package.json b/package.json index 60096855a9..3e7cb6027c 100644 --- a/package.json +++ b/package.json @@ -36,9 +36,11 @@ "typescript": "^4.7.3" }, "scripts": { - "build:all": "yarn run concurrently --success=all -r -m=1 'yarn workspaces-to-typescript-project-references' 'yarn turbo run prepublish'", + "build:all": "NODE_OPTIONS='--max-old-space-size=4096' yarn run concurrently --success=all -r -m=1 'yarn workspaces-to-typescript-project-references' 'yarn turbo run prepublish'", "test": "yarn run concurrently --success=all -r -m=1 'yarn workspaces-to-typescript-project-references --check' 'yarn turbo run test'", "test:watch": "yarn turbo run test:watch", + "test:update": "yarn turbo run test:update", + "format": "yarn prettier --write '**/*.{ts,md}'", "dev": "yarn turbo run dev", "repl": "cd packages/rrweb && npm run repl", "live-stream": "cd packages/rrweb && yarn live-stream", diff --git a/packages/rrweb-snapshot/package.json b/packages/rrweb-snapshot/package.json index e4d8f3b766..7dc4c4397a 100644 --- a/packages/rrweb-snapshot/package.json +++ b/packages/rrweb-snapshot/package.json @@ -7,11 +7,12 @@ "prepack": "npm run bundle && npm run typings", "test": "jest", "test:watch": "jest --watch", + "test:update": "jest --updateSnapshot", "bundle": "rollup --config", "bundle:es-only": "cross-env ES_ONLY=true rollup --config", "dev": "yarn bundle:es-only --watch", "typings": "tsc -d --declarationDir typings", - "prepublish": "npm run typings && npm run bundle", + "prepublish": "yarn typings && yarn bundle", "lint": "yarn eslint src" }, "type": "module", diff --git a/packages/rrweb/package.json b/packages/rrweb/package.json index 9064f03e93..42d092aeed 100644 --- a/packages/rrweb/package.json +++ b/packages/rrweb/package.json @@ -5,10 +5,14 @@ "scripts": { "prepare": "npm run prepack", "prepack": "npm run bundle", - "test": "npm run bundle:browser && jest --testPathIgnorePatterns test/benchmark", - "test:headless": "PUPPETEER_HEADLESS=true npm run test", - "test:watch": "PUPPETEER_HEADLESS=true npm run test -- --watch", - "repl": "npm run bundle:browser && node scripts/repl.js", + "retest": "jest --testPathIgnorePatterns test/benchmark", + "build-and-test": "yarn bundle:browser && yarn retest", + "test:headless": "PUPPETEER_HEADLESS=true yarn build-and-test", + "test:headful": "PUPPETEER_HEADLESS=false yarn build-and-test", + "test": "yarn test:headless", + "test:watch": "yarn test:headless -- --watch", + "test:update": "yarn test:headless -- --updateSnapshot", + "repl": "yarn bundle:browser && node scripts/repl.js", "live-stream": "yarn bundle:browser && node scripts/stream.js", "dev": "yarn bundle:browser --watch", "bundle:browser": "cross-env BROWSER_ONLY=true rollup --config", diff --git a/turbo.json b/turbo.json index c14def8617..70ca7bb533 100644 --- a/turbo.json +++ b/turbo.json @@ -10,6 +10,7 @@ "test:watch": { "persistent": true }, + "test:update": {}, "dev": { "dependsOn": ["^prepublish"], "persistent": true