From 7df884a31c7ad09dba46ff25047d7cac46504b3d Mon Sep 17 00:00:00 2001 From: Zeke Lu Date: Thu, 17 Jun 2021 13:51:09 +0800 Subject: [PATCH] screenshot: replace the unit test for CaptureScreenshot This unit test is copied from puppeteer: - testdata/screenshots/sanity.png --- screenshot_test.go | 17 +++++------------ testdata/screenshots/sanity.png | Bin 0 -> 36252 bytes 2 files changed, 5 insertions(+), 12 deletions(-) create mode 100644 testdata/screenshots/sanity.png diff --git a/screenshot_test.go b/screenshot_test.go index 12769ff2..34ec83cd 100644 --- a/screenshot_test.go +++ b/screenshot_test.go @@ -88,30 +88,23 @@ func TestScreenshotHighDPI(t *testing.T) { func TestCaptureScreenshot(t *testing.T) { t.Parallel() - ctx, cancel := testAllocate(t, "image.html") + ctx, cancel := testAllocate(t, "grid.html") defer cancel() - const width, height = 650, 450 - - // set the viewport size, to know what screenshot size to expect var buf []byte if err := Run(ctx, - EmulateViewport(width, height), + EmulateViewport(500, 500), CaptureScreenshot(&buf), ); err != nil { t.Fatal(err) } - config, format, err := image.DecodeConfig(bytes.NewReader(buf)) + diff, err := matchPixel(buf, "sanity.png") if err != nil { t.Fatal(err) } - if want := "png"; format != want { - t.Fatalf("expected format to be %q, got %q", want, format) - } - if config.Width != width || config.Height != height { - t.Fatalf("expected dimensions to be %d*%d, got %d*%d", - width, height, config.Width, config.Height) + if diff != 0 { + t.Fatalf("screenshot does not match. diff: %v", diff) } } diff --git a/testdata/screenshots/sanity.png b/testdata/screenshots/sanity.png new file mode 100644 index 0000000000000000000000000000000000000000..ecab61fe179e8c95f9cf7cf8399f5ff3e34b0b16 GIT binary patch literal 36252 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≥_k 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 JGp`tW{|{lD?$`hT literal 0 HcmV?d00001