@porsche-design-system/visual-regression-tester
Advanced tools
Comparing version 4.3.2 to 4.4.0
@@ -9,2 +9,12 @@ # Changelog | ||
### [4.4.0] - 2023-03-23 | ||
#### Added | ||
- retry one time in case regression occurred | ||
#### Changed | ||
- `test()` method will fail in case no fixture exists | ||
### [4.3.2] - 2022-06-20 | ||
@@ -11,0 +21,0 @@ |
@@ -21,3 +21,3 @@ import { Browser, ClickOptions, Page, PuppeteerLifeCycleEvent } from 'puppeteer'; | ||
private browser; | ||
private options; | ||
private readonly options; | ||
private page; | ||
@@ -24,0 +24,0 @@ constructor(browser: Browser, options?: VisualRegressionTestOptions); |
@@ -192,3 +192,3 @@ "use strict"; | ||
case 1: | ||
if (!(_i < _a.length)) return [3 /*break*/, 16]; | ||
if (!(_i < _a.length)) return [3 /*break*/, 18]; | ||
viewport = _a[_i]; | ||
@@ -221,3 +221,3 @@ regressionSuffix = opts.regressionSuffix; | ||
_d.sent(); | ||
if (!fs.existsSync(paths.reference)) return [3 /*break*/, 10]; | ||
if (!fs.existsSync(paths.reference)) return [3 /*break*/, 12]; | ||
fixture = (0, sharp_1.default)(path.resolve(paths.reference)); | ||
@@ -227,28 +227,37 @@ return [4 /*yield*/, this.compareSnapshots(fixture, opts.elementSelector, opts.maskSelectors)]; | ||
regression = _d.sent(); | ||
if (!regression) return [3 /*break*/, 9]; | ||
if (!regression) return [3 /*break*/, 8]; | ||
console.log('Regression occured, retry for viewport:', viewport); | ||
return [4 /*yield*/, this.compareSnapshots(fixture, opts.elementSelector, opts.maskSelectors)]; | ||
case 7: | ||
regression = _d.sent(); // try one more time | ||
_d.label = 8; | ||
case 8: | ||
if (!regression) return [3 /*break*/, 11]; | ||
fs.mkdirSync(path.resolve(this.options.resultsDir), { recursive: true }); | ||
errors.push(viewport); | ||
return [4 /*yield*/, regression.result.toFile(paths.regression)]; | ||
case 7: | ||
case 9: | ||
_d.sent(); | ||
return [4 /*yield*/, regression.diff.toFile(paths.diff)]; | ||
case 8: | ||
case 10: | ||
_d.sent(); | ||
_d.label = 9; | ||
case 9: return [3 /*break*/, 13]; | ||
case 10: return [4 /*yield*/, this.createSnapshot(opts.elementSelector, opts.maskSelectors)]; | ||
case 11: | ||
_d.label = 11; | ||
case 11: return [3 /*break*/, 15]; | ||
case 12: | ||
errors.push(viewport); // test execution shall fail, in case no fixture exists | ||
return [4 /*yield*/, this.createSnapshot(opts.elementSelector, opts.maskSelectors)]; | ||
case 13: | ||
reference = _d.sent(); | ||
return [4 /*yield*/, reference.toFile(paths.reference)]; | ||
case 12: | ||
_d.sent(); | ||
_d.label = 13; | ||
case 13: return [4 /*yield*/, this.page.close()]; | ||
case 14: | ||
_d.sent(); | ||
_d.label = 15; | ||
case 15: | ||
case 15: return [4 /*yield*/, this.page.close()]; | ||
case 16: | ||
_d.sent(); | ||
_d.label = 17; | ||
case 17: | ||
_i++; | ||
return [3 /*break*/, 1]; | ||
case 16: | ||
case 18: | ||
if (this.options.viewports.length > 1 && errors.length) { | ||
@@ -255,0 +264,0 @@ console.log('Failed viewports:', errors.join(', ')); |
{ | ||
"name": "@porsche-design-system/visual-regression-tester", | ||
"version": "4.3.2", | ||
"version": "4.4.0", | ||
"description": "Export functions to create visual regression tests.", | ||
@@ -5,0 +5,0 @@ "keywords": [ |
@@ -26,3 +26,3 @@ # Porsche Design System - Visual Regression Tester | ||
Check out the [Basic integration example](https://github.com/porscheui/porsche-visual-regression-tester/tree/master/examples/basic-integration) for an example how to get the Visual Regression Tester up and running. | ||
Check out the [Basic integration example](https://github.com/porsche-design-system/porsche-visual-regression-tester/tree/master/examples/basic-integration) for an example how to get the Visual Regression Tester up and running. | ||
@@ -39,3 +39,3 @@ ### API | ||
Browser should be a [Puppeteer Browser instance](https://github.com/GoogleChrome/puppeteer/blob/v1.9.0/docs/api.md#class-browser). | ||
Check the basic integration example for [how to create a Puppeteer browser](https://github.com/porscheui/porsche-visual-regression-tester/blob/master/examples/basic-integration/vrt/example-test.spec.ts#L19). | ||
Check the basic integration example for [how to create a Puppeteer browser](https://github.com/porsche-design-system/porsche-visual-regression-tester/blob/master/examples/basic-integration/vrt/example-test.spec.ts#L19). | ||
@@ -42,0 +42,0 @@ #### test() Method |
1058028
603