diff --git a/.github/actions/cache-playwright/action.yml b/.github/actions/cache-playwright/action.yml new file mode 100644 index 000000000..4b1b1285f --- /dev/null +++ b/.github/actions/cache-playwright/action.yml @@ -0,0 +1,38 @@ +name: "Install and Cache Playwright" +description: "Sets up a cache and/or installs Playwright and its binaries." + +inputs: + WORKSPACE_ROOT: + description: "The workspace root." + required: true + +runs: + using: "composite" + steps: + - name: Get installed Playwright version + shell: bash + working-directory: ${{ inputs.WORKSPACE_ROOT }} + id: playwright-version + run: echo "PLAYWRIGHT_VERSION=$(cat package.json | jq -r '.dependencies.playwright' || 'latest')" >> $GITHUB_ENV + + - name: Cache playwright binaries + uses: actions/cache@v4 + id: playwright-cache + with: + path: | + ~/.cache/ms-playwright + key: ${{ runner.os }}-playwright-${{ env.PLAYWRIGHT_VERSION }} + + - shell: bash + working-directory: ${{ inputs.WORKSPACE_ROOT }} + run: npm ci + + - shell: bash + if: steps.playwright-cache.outputs.cache-hit != 'true' + working-directory: ${{ inputs.WORKSPACE_ROOT }} + run: npx playwright install --with-deps + + - shell: bash + if: steps.playwright-cache.outputs.cache-hit != 'true' + working-directory: ${{ inputs.WORKSPACE_ROOT }} + run: npx playwright install-deps diff --git a/.github/actions/prepare-docker/action.yml b/.github/actions/prepare-docker/action.yml new file mode 100644 index 000000000..e55854cef --- /dev/null +++ b/.github/actions/prepare-docker/action.yml @@ -0,0 +1,40 @@ +name: "Pull & Prepare Docker Workflow" +description: "Sets name and tag, logs in to GHCR, and pulls Docker image." + +inputs: + REGISTRY: + description: "GitHub Registry" + required: true + ACTOR: + description: "GitHub Username" + required: true + GITHUB_TOKEN: + description: "GitHub Token" + required: true + +runs: + using: "composite" + steps: + - name: Set Name and Tag Vars + shell: bash + working-directory: ${{ steps.base.outputs.WORKSPACE_ROOT }} + env: + name: "${{ env.BRANCH_NAME }}" + run: | + echo "IMAGE_NAME_LC=${IMAGE_NAME,,}" >>${GITHUB_ENV} + echo "TAG=${name/\//-}" >> $GITHUB_ENV + echo "PV=$(cat package.json | jq -r '.version')" >> $GITHUB_ENV + echo "PLAYWRIGHT_VERSION=$(cat package.json | jq -r '.dependencies.playwright')" >> $GITHUB_ENV + + - name: Log in to the Container registry + uses: docker/login-action@v3 + with: + registry: ${{ inputs.REGISTRY }} + username: ${{ inputs.ACTOR }} + password: ${{ inputs.GITHUB_TOKEN }} + + - name: Pull Image + shell: bash + working-directory: ${{ steps.base.outputs.WORKSPACE_ROOT }} + run: | + docker pull $REGISTRY/$IMAGE_NAME_LC:$TAG diff --git a/.github/actions/sanity-test-checks/action.yml b/.github/actions/sanity-test-checks/action.yml new file mode 100644 index 000000000..bb0f96f65 --- /dev/null +++ b/.github/actions/sanity-test-checks/action.yml @@ -0,0 +1,64 @@ +name: "Validate Sanity Report" +description: "Diff the sanity-test reports with a fixture and validate expected shape." + +inputs: + WORKSPACE_ROOT: + description: "Working Directory" + required: true + RUNNER: + description: "Test Runner" + required: true + FIXTURE: + description: "Test Report Fixture" + required: true + +runs: + using: "composite" + steps: + - name: "Validate ${{ inputs.RUNNER }} Report" + id: validate-report + continue-on-error: true + shell: bash + working-directory: ${{ inputs.WORKSPACE_ROOT }} + run: | + set +e + FIXTURE="test/__fixtures__/${{ inputs.FIXTURE }}" + TEST_RESULT=$(diff -c <(jq 'walk(if type == "object" then with_entries(.value |= if type == "object" or type == "array" then . else "" end) else . end)' $FIXTURE) <(jq 'walk(if type == "object" then with_entries(.value |= if type == "object" or type == "array" then . else "" end) else . end)' test/configs/backstop_data/bitmaps_test/**/report.json)) + + echo "TEST_RESULT=$TEST_RESULT" >> $GITHUB_ENV + if [[ "$TEST_RESULT" != "" ]]; then + echo "# ❎ ${{ inputs.RUNNER }} Sanity Different" >> $GITHUB_STEP_SUMMARY + echo '```diff' >> $GITHUB_STEP_SUMMARY + echo "${TEST_RESULT}" >> $GITHUB_STEP_SUMMARY + echo '```' >> $GITHUB_STEP_SUMMARY + else + echo "# ✅ ${{ inputs.RUNNER }} Sanity Report Valid" >> $GITHUB_STEP_SUMMARY + fi + + - name: "Full Sanity Report Diff" + id: diff + continue-on-error: true + shell: bash + working-directory: ${{ inputs.WORKSPACE_ROOT }} + run: | + set +e + FULL_TEST_DIFF=$(diff <(jq -S '.tests[]' $FIXTURE) <(jq -S '.tests[]' test/configs/backstop_data/bitmaps_test/**/report.json)) + echo "## Unfiltered Diff" >> $GITHUB_STEP_SUMMARY + echo "
" >> $GITHUB_STEP_SUMMARY + echo "Expand Diff" >> $GITHUB_STEP_SUMMARY + echo "" >> $GITHUB_STEP_SUMMARY + echo '```diff' >> $GITHUB_STEP_SUMMARY + echo "${FULL_TEST_DIFF}" >> $GITHUB_STEP_SUMMARY + echo '```' >> $GITHUB_STEP_SUMMARY + echo "" >> $GITHUB_STEP_SUMMARY + echo "
" >> $GITHUB_STEP_SUMMARY + + - name: "Report Validation Outcome" + shell: bash + working-directory: ${{ inputs.WORKSPACE_ROOT }} + run: | + if [[ "$TEST_RESULT" != "" ]]; then + exit 1 + else + exit 0 + fi diff --git a/.github/actions/setup-base/action.yml b/.github/actions/setup-base/action.yml new file mode 100644 index 000000000..ac5a56a67 --- /dev/null +++ b/.github/actions/setup-base/action.yml @@ -0,0 +1,23 @@ +name: "Setup Base Workflow" +description: "Checks out the BackstopJS repo at the calling or current branch with shallow history. Pulls Docker image by branch tag. Installs dependencies. Optionally sets up interactive remote debug shell." + +outputs: + WORKSPACE_ROOT: + description: "Export the root workspace for all workflows." + value: ${{ steps.workspace_root.outputs.WORKSPACE_ROOT }} + +runs: + using: "composite" + steps: + - name: Set workspace root + id: workspace_root + shell: bash + run: | + WORKSPACE_ROOT=$GITHUB_WORKSPACE/repo + echo "WORKSPACE_ROOT=$WORKSPACE_ROOT" | tee -a $GITHUB_OUTPUT + + - name: Checkout to workspace + shell: bash + run: | + git clone -b ${{ github.event.pull_request.head.sha || github.head_ref || github.ref_name || github.ref }} https://github.com/${{ github.repository }}.git ${{ steps.workspace_root.outputs.WORKSPACE_ROOT }} + ls ${{ steps.workspace_root.outputs.WORKSPACE_ROOT }} diff --git a/.github/actions/setup-node/action.yml b/.github/actions/setup-node/action.yml new file mode 100644 index 000000000..271694941 --- /dev/null +++ b/.github/actions/setup-node/action.yml @@ -0,0 +1,22 @@ +name: "Setup Node and Dependencies" +description: "Sets up Node, npm caching, and installs dependencies" + +inputs: + WORKSPACE_ROOT: + description: "The workspace root." + required: true + +runs: + using: "composite" + steps: + - name: ⬢ Setup Node & Cache + uses: actions/setup-node@v4 + with: + node-version: ${{ env.NODE_VERSION }} + cache: "npm" + cache-dependency-path: ${{ inputs.WORKSPACE_ROOT }}/package-lock.json + + - name: ↧ Install + shell: bash + working-directory: ${{ inputs.WORKSPACE_ROOT }} + run: npm ci diff --git a/.github/actions/smoke-test-checks/action.yml b/.github/actions/smoke-test-checks/action.yml new file mode 100644 index 000000000..1241e850b --- /dev/null +++ b/.github/actions/smoke-test-checks/action.yml @@ -0,0 +1,64 @@ +name: "Validate Smoke Report" +description: "Diff the smoke-test reports with a fixture and validate expected shape." + +inputs: + WORKSPACE_ROOT: + description: "Working Directory" + required: true + RUNNER: + description: "Test Runner" + required: true + FIXTURE: + description: "Test Report Fixture" + required: true + +runs: + using: "composite" + steps: + - name: "Validate ${{ inputs.RUNNER }} Report" + id: validate + continue-on-error: true + shell: bash + working-directory: ${{ inputs.WORKSPACE_ROOT }} + run: | + set +e + FIXTURE="test/__fixtures__/${{ inputs.FIXTURE }}" + TEST_RESULT=$(diff -c <(jq 'walk(if type == "object" then with_entries(.value |= if type == "object" or type == "array" then . else "" end) else . end) | del( .tests[].pair.diff, .tests[].pair.diffImage)' $FIXTURE) <(jq 'walk(if type == "object" then with_entries(.value |= if type == "object" or type == "array" then . else "" end) else . end) | del( .tests[].pair.diff, .tests[].pair.diffImage)' test/configs/backstop_data/bitmaps_test/**/report.json)) + + echo "TEST_RESULT=$TEST_RESULT" >> $GITHUB_ENV + if [[ "$TEST_RESULT" != "" ]]; then + echo "# ❎ ${{ inputs.RUNNER }} Report Different" >> $GITHUB_STEP_SUMMARY + echo '```diff' >> $GITHUB_STEP_SUMMARY + echo "$TEST_RESULT" >> $GITHUB_STEP_SUMMARY + echo '```' + else + echo "# ✅ ${{ inputs.RUNNER }} Report Validated" >> $GITHUB_STEP_SUMMARY + fi + + - name: "Full Smoke Report Diff" + id: diff + continue-on-error: true + shell: bash + working-directory: ${{ inputs.WORKSPACE_ROOT }} + run: | + set +e + FULL_TEST_DIFF=$(diff <(jq -S '.tests[]' $FIXTURE) <(jq -S '.tests[]' test/configs/backstop_data/bitmaps_test/**/report.json)) + echo "## Unfiltered Diff" >> $GITHUB_STEP_SUMMARY + echo "
" >> $GITHUB_STEP_SUMMARY + echo "Expand Diff" >> $GITHUB_STEP_SUMMARY + echo "" >> $GITHUB_STEP_SUMMARY + echo '```diff' >> $GITHUB_STEP_SUMMARY + echo "${FULL_TEST_DIFF}" >> $GITHUB_STEP_SUMMARY + echo '```' >> $GITHUB_STEP_SUMMARY + echo "" >> $GITHUB_STEP_SUMMARY + echo "
" >> $GITHUB_STEP_SUMMARY + + - name: "Report Validation Outcome" + shell: bash + working-directory: ${{ inputs.WORKSPACE_ROOT }} + run: | + if [[ "$TEST_RESULT" != "" ]]; then + exit 1 + else + exit 0 + fi diff --git a/.github/workflows/docker-build.yml b/.github/workflows/docker-build.yml index 5015b4541..bcdb351fb 100644 --- a/.github/workflows/docker-build.yml +++ b/.github/workflows/docker-build.yml @@ -38,7 +38,7 @@ jobs: echo "PV=$(cat package.json | jq -r '.version')" >> $GITHUB_ENV - name: Log in to the Container registry - uses: docker/login-action@65b78e6e13532edd9afa3aa52ac7964289d1a9c1 + uses: docker/login-action@v3 with: registry: ${{ env.REGISTRY }} username: ${{ github.actor }} diff --git a/.github/workflows/docker-sanity-test-checks.yml b/.github/workflows/docker-sanity-test-checks.yml new file mode 100644 index 000000000..55e8c5e52 --- /dev/null +++ b/.github/workflows/docker-sanity-test-checks.yml @@ -0,0 +1,99 @@ +name: Docker Sanity Test Checks + +on: + workflow_dispatch: + workflow_call: + +permissions: + actions: write + checks: write + contents: write + pull-requests: write + packages: write + +env: + BRANCH_NAME: ${{ github.event.pull_request.head_ref || github.event.pull_request.head.ref_name || github.head_ref || github.ref_name }} + NODE_VERSION: 20 + REGISTRY: ghcr.io + IMAGE_NAME: ${{ github.repository }} + +jobs: + sanity-test-puppeteer: + name: 🤪 Puppeteer + runs-on: ubuntu-latest + + permissions: + contents: read + packages: write + + steps: + - name: Checkout actions + uses: actions/checkout@v4 + with: + ref: ${{ github.event.pull_request.head.sha || github.head_ref || github.ref_name || github.ref }} + sparse-checkout: | + .github/actions + path: actions + + - uses: ./actions/.github/actions/setup-base + id: base + + - uses: ./actions/.github/actions/prepare-docker + with: + REGISTRY: ${{ env.REGISTRY }} + ACTOR: ${{ github.actor }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: "𓋏 Run `backstop test` in Docker" + continue-on-error: true + shell: bash + working-directory: ${{ steps.base.outputs.WORKSPACE_ROOT }} + run: | + set +e + cd test/configs/ && docker run --rm -t --mount type=bind,source="$(pwd)",target=/src $REGISTRY/$IMAGE_NAME_LC:$TAG test + + - name: "Validate Puppeteer Docker Test Results" + uses: ./actions/.github/actions/sanity-test-checks + with: + WORKSPACE_ROOT: ${{ steps.base.outputs.WORKSPACE_ROOT }} + RUNNER: "Puppeteer" + FIXTURE: "sanity-test-docker.json" + + sanity-test-playwright: + name: 🤪 Playwright + runs-on: ubuntu-latest + + permissions: + contents: read + packages: write + + steps: + - name: Checkout actions + uses: actions/checkout@v4 + with: + ref: ${{ github.event.pull_request.head.sha || github.head_ref || github.ref_name || github.ref }} + sparse-checkout: | + .github/actions + path: actions + + - uses: ./actions/.github/actions/setup-base + id: base + + - uses: ./actions/.github/actions/prepare-docker + with: + REGISTRY: ${{ env.REGISTRY }} + ACTOR: ${{ github.actor }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: "🎭 Run `backstop test --confg=playwright` in Docker" + continue-on-error: true + run: | + set +e + cd test/configs/ && docker run --rm -t --entrypoint='' --mount type=bind,source="$(pwd)",target=/src $REGISTRY/$IMAGE_NAME_LC:$TAG sh -c "chmod -R 777 /root && chmod -R 777 /opt/pw-browsers && npm --verbose --foreground-scripts i -D playwright && npx --verbose --foreground-scripts --yes playwright@$PLAYWRIGHT_VERSION install && backstop test --config=playwright" + + - name: "Validate Playwright Docker Test Results" + uses: ./actions/.github/actions/sanity-test-checks + with: + WORKSPACE_ROOT: ${{ steps.base.outputs.WORKSPACE_ROOT }} + RUNNER: "Playwright" + FIXTURE: "sanity-test-playwright-docker.json" diff --git a/.github/workflows/docker-sanity-test.yml b/.github/workflows/docker-sanity-test.yml index 9e58a804d..c6dfae31e 100644 --- a/.github/workflows/docker-sanity-test.yml +++ b/.github/workflows/docker-sanity-test.yml @@ -43,7 +43,7 @@ jobs: echo "PLAYWRIGHT_VERSION=$(cat package.json | jq -r '.dependencies.playwright')" >> $GITHUB_ENV - name: Log in to the Container registry - uses: docker/login-action@65b78e6e13532edd9afa3aa52ac7964289d1a9c1 + uses: docker/login-action@v3 with: registry: ${{ env.REGISTRY }} username: ${{ github.actor }} @@ -91,7 +91,7 @@ jobs: echo "PLAYWRIGHT_VERSION=$(cat package.json | jq -r '.dependencies.playwright')" >> $GITHUB_ENV - name: Log in to the Container registry - uses: docker/login-action@65b78e6e13532edd9afa3aa52ac7964289d1a9c1 + uses: docker/login-action@v3 with: registry: ${{ env.REGISTRY }} username: ${{ github.actor }} diff --git a/.github/workflows/docker-smoke-test-checks.yml b/.github/workflows/docker-smoke-test-checks.yml new file mode 100644 index 000000000..a0b3998a7 --- /dev/null +++ b/.github/workflows/docker-smoke-test-checks.yml @@ -0,0 +1,97 @@ +name: Docker Smoke Test Checks + +on: + workflow_dispatch: + workflow_call: + +permissions: + actions: write + checks: write + contents: write + pull-requests: write + packages: write + +env: + BRANCH_NAME: ${{ github.event.pull_request.head_ref || github.event.pull_request.head.ref_name || github.head_ref || github.ref_name }} + NODE_VERSION: 20 + REGISTRY: ghcr.io + IMAGE_NAME: ${{ github.repository }} + +jobs: + smoke-test-puppeteer: + name: 💨 Puppeteer + runs-on: ubuntu-latest + + permissions: + contents: read + packages: write + + steps: + - name: Checkout actions + uses: actions/checkout@v4 + with: + ref: ${{ github.event.pull_request.head.sha || github.head_ref || github.ref_name || github.ref }} + sparse-checkout: | + .github/actions + path: actions + + - uses: ./actions/.github/actions/setup-base + id: base + + - uses: ./actions/.github/actions/prepare-docker + with: + REGISTRY: ${{ env.REGISTRY }} + ACTOR: ${{ github.actor }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: "𓋏 Run `backstop test --confg=backstop_features` in Docker" + continue-on-error: true + run: | + set +e + cd test/configs/ && docker run --rm -t --mount type=bind,source="$(pwd)",target=/src $REGISTRY/$IMAGE_NAME_LC:$TAG test --config=backstop_features + + - name: "Validate Puppeteer Docker Test Results" + uses: ./actions/.github/actions/smoke-test-checks + with: + WORKSPACE_ROOT: ${{ steps.base.outputs.WORKSPACE_ROOT }} + RUNNER: "Puppeteer" + FIXTURE: "smoke-test-docker.json" + + smoke-test-playwright: + name: 💨 Playwright + runs-on: ubuntu-latest + + permissions: + contents: read + packages: write + + steps: + - name: Checkout actions + uses: actions/checkout@v4 + with: + ref: ${{ github.event.pull_request.head.sha || github.head_ref || github.ref_name || github.ref }} + sparse-checkout: | + .github/actions + path: actions + + - uses: ./actions/.github/actions/setup-base + id: base + + - uses: ./actions/.github/actions/prepare-docker + with: + REGISTRY: ${{ env.REGISTRY }} + ACTOR: ${{ github.actor }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: "🎭 Run `backstop test --confg=backstop_features_pw` in Docker" + continue-on-error: true + run: | + set +e + cd test/configs/ && docker run --rm -t --mount type=bind,source="$(pwd)",target=/src $REGISTRY/$IMAGE_NAME_LC:$TAG test --config=backstop_features_pw + + - name: "Validate Playwright Docker Test Results" + uses: ./actions/.github/actions/smoke-test-checks + with: + WORKSPACE_ROOT: ${{ steps.base.outputs.WORKSPACE_ROOT }} + RUNNER: "Playwright" + FIXTURE: "smoke-test-playwright-docker.json" diff --git a/.github/workflows/docker-smoke-test.yml b/.github/workflows/docker-smoke-test.yml index e2b51a759..a8ed2a222 100644 --- a/.github/workflows/docker-smoke-test.yml +++ b/.github/workflows/docker-smoke-test.yml @@ -42,7 +42,7 @@ jobs: echo "PV=$(cat package.json | jq -r '.version')" >> $GITHUB_ENV - name: Log in to the Container registry - uses: docker/login-action@65b78e6e13532edd9afa3aa52ac7964289d1a9c1 + uses: docker/login-action@v3 with: registry: ${{ env.REGISTRY }} username: ${{ github.actor }} @@ -90,7 +90,7 @@ jobs: echo "PV=$(cat package.json | jq -r '.version')" >> $GITHUB_ENV - name: Log in to the Container registry - uses: docker/login-action@65b78e6e13532edd9afa3aa52ac7964289d1a9c1 + uses: docker/login-action@v3 with: registry: ${{ env.REGISTRY }} username: ${{ github.actor }} diff --git a/.github/workflows/integration-test-check.yml b/.github/workflows/integration-test-check.yml new file mode 100644 index 000000000..c90e434e2 --- /dev/null +++ b/.github/workflows/integration-test-check.yml @@ -0,0 +1,84 @@ +name: Integration Test Check + +on: + workflow_dispatch: + workflow_call: + +permissions: + actions: write + contents: write + pull-requests: write + +env: + NODE_VERSION: 20 + +jobs: + integration: + name: 🧩 Validate Integration Test Results + runs-on: ubuntu-latest + steps: + - name: Checkout actions + uses: actions/checkout@v4 + with: + ref: ${{ github.event.pull_request.head.sha || github.head_ref || github.ref_name || github.ref }} + sparse-checkout: | + .github/actions + path: actions + + - uses: ./actions/.github/actions/setup-base + id: base + + - uses: ./actions/.github/actions/setup-node + id: node + with: + WORKSPACE_ROOT: ${{ steps.base.outputs.WORKSPACE_ROOT }} + + - name: "𓋏 Run `npm run integration-test`" + continue-on-error: true + shell: bash + working-directory: ${{ steps.base.outputs.WORKSPACE_ROOT }} + run: | + npm run integration-test + + - name: "Validate Integration Test Results" + id: validate + continue-on-error: true + run: | + set +e + TEST_REPORT_DIR=$(ls -ltd integrationTestDir/backstop_data/bitmaps_test/*/ | grep '^d' | head -n 1 | awk '{print $NF}') + echo "TEST_REPORT_DIR=$TEST_REPORT_DIR" >> $GITHUB_ENV + TEST_RESULT=$(diff <(jq 'walk(if type == "object" then with_entries(.value |= if type == "object" or type == "array" then . else "" end) else . end)' test/__fixtures__/integration-test.json) <(jq 'walk(if type == "object" then with_entries(.value |= if type == "object" or type == "array" then . else "" end) else . end)' ${TEST_REPORT_DIR}report.json)) + echo "TEST_RESULT=$TEST_RESULT" >> $GITHUB_ENV + if [[ "$TEST_RESULT" != "" ]]; then + echo "# ❎ Report Differerent" >> $GITHUB_STEP_SUMMARY + echo "## Failing Diff" >> $GITHUB_STEP_SUMMARY + echo '```diff' >> $GITHUB_STEP_SUMMARY + echo "${TEST_RESULT}" >> $GITHUB_STEP_SUMMARY + echo '```' >> $GITHUB_STEP_SUMMARY + else + echo "# ✅ Report Validated" >> $GITHUB_STEP_SUMMARY + fi + + - name: "Full Integration Test Diff" + id: diff + continue-on-error: true + run: | + set +e + FULL_TEST_DIFF=$(diff <(jq -S '.tests[]' test/__fixtures__/integration-test.json) <(jq -S '.tests[]' ${TEST_REPORT_DIR}report.json)) + echo "## Unfiltered Diff" >> $GITHUB_STEP_SUMMARY + echo "
" >> $GITHUB_STEP_SUMMARY + echo "Expand Diff" >> $GITHUB_STEP_SUMMARY + echo "" >> $GITHUB_STEP_SUMMARY + echo '```diff' >> $GITHUB_STEP_SUMMARY + echo "${FULL_TEST_DIFF}" >> $GITHUB_STEP_SUMMARY + echo '```' >> $GITHUB_STEP_SUMMARY + echo "" >> $GITHUB_STEP_SUMMARY + echo "
" >> $GITHUB_STEP_SUMMARY + + - name: "Test Results Validation Outcome" + run: | + if [[ "$TEST_RESULT" != "" ]]; then + exit 1 + else + exit 0 + fi diff --git a/.github/workflows/sanity-test-checks.yml b/.github/workflows/sanity-test-checks.yml new file mode 100644 index 000000000..c2b89579e --- /dev/null +++ b/.github/workflows/sanity-test-checks.yml @@ -0,0 +1,85 @@ +name: Sanity Test Checks + +on: + workflow_dispatch: + + workflow_call: + +permissions: + actions: write + contents: write + pull-requests: write + +env: + NODE_VERSION: 20 + +jobs: + sanity-puppeteer: + name: 🤪 Puppeteer + runs-on: ubuntu-latest + steps: + - name: Checkout actions + uses: actions/checkout@v4 + with: + ref: ${{ github.event.pull_request.head.sha || github.head_ref || github.ref_name || github.ref }} + sparse-checkout: | + .github/actions + path: actions + + - uses: ./actions/.github/actions/setup-base + id: base + + - uses: ./actions/.github/actions/setup-node + id: node + with: + WORKSPACE_ROOT: ${{ steps.base.outputs.WORKSPACE_ROOT }} + + - name: "𓋏 Run `npm run sanity-test`" + continue-on-error: true + shell: bash + working-directory: ${{ steps.base.outputs.WORKSPACE_ROOT }} + run: | + npm run sanity-test + + - uses: ./actions/.github/actions/sanity-test-checks + with: + WORKSPACE_ROOT: ${{ steps.base.outputs.WORKSPACE_ROOT }} + RUNNER: "Puppeteer" + FIXTURE: "sanity-test.json" + + sanity-playwright: + name: 🤪 Playwright + runs-on: ubuntu-latest + steps: + - name: Checkout actions + uses: actions/checkout@v4 + with: + ref: ${{ github.event.pull_request.head.sha || github.head_ref || github.ref_name || github.ref }} + sparse-checkout: | + .github/actions + path: actions + + - uses: ./actions/.github/actions/setup-base + id: base + + - uses: ./actions/.github/actions/setup-node + id: node + with: + WORKSPACE_ROOT: ${{ steps.base.outputs.WORKSPACE_ROOT }} + + - uses: ./actions/.github/actions/cache-playwright + with: + WORKSPACE_ROOT: ${{ steps.base.outputs.WORKSPACE_ROOT }} + + - name: "🎭 Run `npm run sanity-test-playwright`" + continue-on-error: true + shell: bash + working-directory: ${{ steps.base.outputs.WORKSPACE_ROOT }} + run: | + npm run sanity-test-playwright + + - uses: ./actions/.github/actions/sanity-test-checks + with: + WORKSPACE_ROOT: ${{ steps.base.outputs.WORKSPACE_ROOT }} + RUNNER: "Playwright" + FIXTURE: "sanity-test-playwright.json" diff --git a/.github/workflows/smoke-test-checks.yml b/.github/workflows/smoke-test-checks.yml new file mode 100644 index 000000000..c9d66d62d --- /dev/null +++ b/.github/workflows/smoke-test-checks.yml @@ -0,0 +1,81 @@ +name: Smoke Test Checks + +on: + workflow_dispatch: + workflow_call: + +permissions: + actions: write + contents: write + pull-requests: write + +env: + NODE_VERSION: 20 + +jobs: + smoke-puppeteer: + name: 💨 Puppeteer + runs-on: ubuntu-latest + steps: + - name: Checkout actions + uses: actions/checkout@v4 + with: + ref: ${{ github.event.pull_request.head.sha || github.head_ref || github.ref_name || github.ref }} + sparse-checkout: | + .github/actions + path: actions + + - uses: ./actions/.github/actions/setup-base + id: base + + - uses: ./actions/.github/actions/setup-node + id: node + with: + WORKSPACE_ROOT: ${{ steps.base.outputs.WORKSPACE_ROOT }} + + - name: "𓋏 Run `npm run smoke-test`" + continue-on-error: true + shell: bash + working-directory: ${{ steps.base.outputs.WORKSPACE_ROOT }} + run: | + npm run smoke-test + + - uses: ./actions/.github/actions/smoke-test-checks + with: + WORKSPACE_ROOT: ${{ steps.base.outputs.WORKSPACE_ROOT }} + RUNNER: "Puppeteer" + FIXTURE: "smoke-test.json" + + smoke-playwright: + name: 💨 Playwright + runs-on: ubuntu-latest + steps: + - name: Checkout actions + uses: actions/checkout@v4 + with: + ref: ${{ github.event.pull_request.head.sha || github.head_ref || github.ref_name || github.ref }} + sparse-checkout: | + .github/actions + path: actions + + - uses: ./actions/.github/actions/setup-base + id: base + + - uses: ./actions/.github/actions/setup-node + id: node + with: + WORKSPACE_ROOT: ${{ steps.base.outputs.WORKSPACE_ROOT }} + + - name: "🎭 Run `npm run smoke-test-playwright`" + continue-on-error: true + shell: bash + working-directory: ${{ steps.base.outputs.WORKSPACE_ROOT }} + run: | + npx playwright install --with-deps + npm run smoke-test-playwright + + - uses: ./actions/.github/actions/smoke-test-checks + with: + WORKSPACE_ROOT: ${{ steps.base.outputs.WORKSPACE_ROOT }} + RUNNER: "Playwright" + FIXTURE: "smoke-test-playwright.json" diff --git a/.github/workflows/test-check-backstop.yml b/.github/workflows/test-check-backstop.yml new file mode 100644 index 000000000..88fe79a28 --- /dev/null +++ b/.github/workflows/test-check-backstop.yml @@ -0,0 +1,24 @@ +name: Test Checks + +on: + workflow_dispatch: + workflow_call: + +permissions: + actions: write + checks: write + contents: write + pull-requests: write + +jobs: + sanity-test: + name: 🤪 Sanity Test Checks + uses: ./.github/workflows/sanity-test-checks.yml + + smoke-test: + name: 💨 Smoke Test Checks + uses: ./.github/workflows/smoke-test-checks.yml + + integration-test: + name: 🧩 Integration Test Check + uses: ./.github/workflows/integration-test-check.yml diff --git a/.github/workflows/test-check-docker.yml b/.github/workflows/test-check-docker.yml new file mode 100644 index 000000000..4bf173b1c --- /dev/null +++ b/.github/workflows/test-check-docker.yml @@ -0,0 +1,21 @@ +name: Docker Test Checks + +on: + workflow_dispatch: + workflow_call: + +permissions: + actions: write + checks: write + contents: write + pull-requests: write + packages: write + +jobs: + sanity-test: + name: 💨 Docker Smoke Test + uses: ./.github/workflows/docker-smoke-test-checks.yml + + smoke-test: + name: 🤪 Docker Sanity Test + uses: ./.github/workflows/docker-sanity-test-checks.yml diff --git a/test/__fixtures__/integration-test.json b/test/__fixtures__/integration-test.json new file mode 100644 index 000000000..f19e33aa8 --- /dev/null +++ b/test/__fixtures__/integration-test.json @@ -0,0 +1,54 @@ +{ + "testSuite": "BackstopJS", + "tests": [ + { + "pair": { + "reference": "../bitmaps_reference/backstop_default_BackstopJS_Homepage_0_document_0_phone.png", + "test": "../bitmaps_test/20240114-203323/backstop_default_BackstopJS_Homepage_0_document_0_phone.png", + "selector": "document", + "fileName": "backstop_default_BackstopJS_Homepage_0_document_0_phone.png", + "label": "BackstopJS Homepage", + "requireSameDimensions": true, + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/", + "referenceUrl": "", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/backstop_default_BackstopJS_Homepage_0_document_1_tablet.png", + "test": "../bitmaps_test/20240114-203323/backstop_default_BackstopJS_Homepage_0_document_1_tablet.png", + "selector": "document", + "fileName": "backstop_default_BackstopJS_Homepage_0_document_1_tablet.png", + "label": "BackstopJS Homepage", + "requireSameDimensions": true, + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/", + "referenceUrl": "", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + } + ], + "id": "backstop_default" +} diff --git a/test/__fixtures__/sanity-test-docker.json b/test/__fixtures__/sanity-test-docker.json new file mode 100644 index 000000000..a6256827e --- /dev/null +++ b/test/__fixtures__/sanity-test-docker.json @@ -0,0 +1,62 @@ +{ + "testSuite": "BackstopJS", + "tests": [ + { + "pair": { + "reference": "../bitmaps_reference/backstop_default_BackstopJS_Homepage_0_document_0_phone.png", + "test": "../bitmaps_test/20240101-215636/backstop_default_BackstopJS_Homepage_0_document_0_phone.png", + "testLog": "../bitmaps_test/20240101-215636/backstop_default_BackstopJS_Homepage_0_document_0_phone.log.json", + "selector": "document", + "fileName": "backstop_default_BackstopJS_Homepage_0_document_0_phone.png", + "label": "BackstopJS Homepage", + "requireSameDimensions": true, + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/", + "referenceUrl": "", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.194232723577236, + "misMatchPercentage": "3.19", + "analysisTime": 19 + }, + "diffImage": "../bitmaps_test/20240101-215636/failed_diff_backstop_default_BackstopJS_Homepage_0_document_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/backstop_default_BackstopJS_Homepage_0_document_1_tablet.png", + "test": "../bitmaps_test/20240101-215636/backstop_default_BackstopJS_Homepage_0_document_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215636/backstop_default_BackstopJS_Homepage_0_document_1_tablet.log.json", + "selector": "document", + "fileName": "backstop_default_BackstopJS_Homepage_0_document_1_tablet.png", + "label": "BackstopJS Homepage", + "requireSameDimensions": true, + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/", + "referenceUrl": "", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.8621084797555385, + "misMatchPercentage": "1.86", + "analysisTime": 41 + }, + "diffImage": "../bitmaps_test/20240101-215636/failed_diff_backstop_default_BackstopJS_Homepage_0_document_1_tablet.png" + }, + "status": "fail" + } + ], + "id": "backstop_default" +} \ No newline at end of file diff --git a/test/__fixtures__/sanity-test-playwright-docker.json b/test/__fixtures__/sanity-test-playwright-docker.json new file mode 100644 index 000000000..4fdb2c233 --- /dev/null +++ b/test/__fixtures__/sanity-test-playwright-docker.json @@ -0,0 +1,60 @@ +{ + "testSuite": "BackstopJS", + "tests": [ + { + "pair": { + "reference": "../bitmaps_reference/backstop_playwright_BackstopJS_Homepage_0_document_0_phone.png", + "test": "../bitmaps_test/20240101-215718/backstop_playwright_BackstopJS_Homepage_0_document_0_phone.png", + "selector": "document", + "fileName": "backstop_playwright_BackstopJS_Homepage_0_document_0_phone.png", + "label": "BackstopJS Homepage", + "requireSameDimensions": true, + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/", + "referenceUrl": "", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.32901422764227645, + "misMatchPercentage": "0.33", + "analysisTime": 17 + }, + "diffImage": "../bitmaps_test/20240101-215718/failed_diff_backstop_playwright_BackstopJS_Homepage_0_document_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/backstop_playwright_BackstopJS_Homepage_0_document_1_tablet.png", + "test": "../bitmaps_test/20240101-215718/backstop_playwright_BackstopJS_Homepage_0_document_1_tablet.png", + "selector": "document", + "fileName": "backstop_playwright_BackstopJS_Homepage_0_document_1_tablet.png", + "label": "BackstopJS Homepage", + "requireSameDimensions": true, + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/", + "referenceUrl": "", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.3016973834988541, + "misMatchPercentage": "0.30", + "analysisTime": 36 + }, + "diffImage": "../bitmaps_test/20240101-215718/failed_diff_backstop_playwright_BackstopJS_Homepage_0_document_1_tablet.png" + }, + "status": "fail" + } + ], + "id": "backstop_playwright" +} \ No newline at end of file diff --git a/test/__fixtures__/sanity-test-playwright.json b/test/__fixtures__/sanity-test-playwright.json new file mode 100644 index 000000000..67e2dc8da --- /dev/null +++ b/test/__fixtures__/sanity-test-playwright.json @@ -0,0 +1,60 @@ +{ + "testSuite": "BackstopJS", + "tests": [ + { + "pair": { + "reference": "../bitmaps_reference/backstop_playwright_BackstopJS_Homepage_0_document_0_phone.png", + "test": "../bitmaps_test/20240101-165143/backstop_playwright_BackstopJS_Homepage_0_document_0_phone.png", + "selector": "document", + "fileName": "backstop_playwright_BackstopJS_Homepage_0_document_0_phone.png", + "label": "BackstopJS Homepage", + "requireSameDimensions": true, + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/", + "referenceUrl": "", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.702997967479675, + "misMatchPercentage": "3.70", + "analysisTime": 13 + }, + "diffImage": "../bitmaps_test/20240101-165143/failed_diff_backstop_playwright_BackstopJS_Homepage_0_document_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/backstop_playwright_BackstopJS_Homepage_0_document_1_tablet.png", + "test": "../bitmaps_test/20240101-165143/backstop_playwright_BackstopJS_Homepage_0_document_1_tablet.png", + "selector": "document", + "fileName": "backstop_playwright_BackstopJS_Homepage_0_document_1_tablet.png", + "label": "BackstopJS Homepage", + "requireSameDimensions": true, + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/", + "referenceUrl": "", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.9367867885790682, + "misMatchPercentage": "1.94", + "analysisTime": 35 + }, + "diffImage": "../bitmaps_test/20240101-165143/failed_diff_backstop_playwright_BackstopJS_Homepage_0_document_1_tablet.png" + }, + "status": "fail" + } + ], + "id": "backstop_playwright" +} \ No newline at end of file diff --git a/test/__fixtures__/sanity-test.json b/test/__fixtures__/sanity-test.json new file mode 100644 index 000000000..b9f767345 --- /dev/null +++ b/test/__fixtures__/sanity-test.json @@ -0,0 +1,62 @@ +{ + "testSuite": "BackstopJS", + "tests": [ + { + "pair": { + "reference": "../bitmaps_reference/backstop_default_BackstopJS_Homepage_0_document_0_phone.png", + "test": "../bitmaps_test/20240101-165059/backstop_default_BackstopJS_Homepage_0_document_0_phone.png", + "testLog": "../bitmaps_test/20240101-165059/backstop_default_BackstopJS_Homepage_0_document_0_phone.log.json", + "selector": "document", + "fileName": "backstop_default_BackstopJS_Homepage_0_document_0_phone.png", + "label": "BackstopJS Homepage", + "requireSameDimensions": true, + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/", + "referenceUrl": "", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.750635162601626, + "misMatchPercentage": "3.75", + "analysisTime": 43 + }, + "diffImage": "../bitmaps_test/20240101-165059/failed_diff_backstop_default_BackstopJS_Homepage_0_document_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/backstop_default_BackstopJS_Homepage_0_document_1_tablet.png", + "test": "../bitmaps_test/20240101-165059/backstop_default_BackstopJS_Homepage_0_document_1_tablet.png", + "testLog": "../bitmaps_test/20240101-165059/backstop_default_BackstopJS_Homepage_0_document_1_tablet.log.json", + "selector": "document", + "fileName": "backstop_default_BackstopJS_Homepage_0_document_1_tablet.png", + "label": "BackstopJS Homepage", + "requireSameDimensions": true, + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/", + "referenceUrl": "", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.9487233813980136, + "misMatchPercentage": "1.95", + "analysisTime": 82 + }, + "diffImage": "../bitmaps_test/20240101-165059/failed_diff_backstop_default_BackstopJS_Homepage_0_document_1_tablet.png" + }, + "status": "fail" + } + ], + "id": "backstop_default" +} \ No newline at end of file diff --git a/test/__fixtures__/smoke-test-docker.json b/test/__fixtures__/smoke-test-docker.json new file mode 100644 index 000000000..6aa71b564 --- /dev/null +++ b/test/__fixtures__/smoke-test-docker.json @@ -0,0 +1,1760 @@ +{ + "testSuite": "BackstopJS", + "tests": [ + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_Simple_0_document_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_Simple_0_document_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_Simple_0_document_0_phone.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_Simple_0_document_0_phone.png", + "label": "Simple", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.194232723577236, + "misMatchPercentage": "3.19", + "analysisTime": 50 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_Simple_0_document_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_Simple_0_document_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_Simple_0_document_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_Simple_0_document_1_tablet.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_Simple_0_document_1_tablet.png", + "label": "Simple", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.8621084797555385, + "misMatchPercentage": "1.86", + "analysisTime": 126 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_Simple_0_document_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_pkra_bug_test_0_pkratest_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_pkra_bug_test_0_pkratest_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_pkra_bug_test_0_pkratest_0_phone.log.json", + "selector": "#pkratest", + "fileName": "puppet_backstop_features_pkra_bug_test_0_pkratest_0_phone.png", + "label": "pkra bug test", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_pkra_bug_test_1_logoBlock_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_pkra_bug_test_1_logoBlock_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_pkra_bug_test_1_logoBlock_0_phone.log.json", + "selector": ".logoBlock", + "fileName": "puppet_backstop_features_pkra_bug_test_1_logoBlock_0_phone.png", + "label": "pkra bug test", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.60075329566855, + "misMatchPercentage": "1.60", + "analysisTime": 8 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_pkra_bug_test_1_logoBlock_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_pkra_bug_test_0_pkratest_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_pkra_bug_test_0_pkratest_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_pkra_bug_test_0_pkratest_1_tablet.log.json", + "selector": "#pkratest", + "fileName": "puppet_backstop_features_pkra_bug_test_0_pkratest_1_tablet.png", + "label": "pkra bug test", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_pkra_bug_test_1_logoBlock_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_pkra_bug_test_1_logoBlock_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_pkra_bug_test_1_logoBlock_1_tablet.log.json", + "selector": ".logoBlock", + "fileName": "puppet_backstop_features_pkra_bug_test_1_logoBlock_1_tablet.png", + "label": "pkra bug test", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.7462686567164178, + "misMatchPercentage": "0.75", + "analysisTime": 45 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_pkra_bug_test_1_logoBlock_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_delay_0_getItBlocknth-child3_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_delay_0_getItBlocknth-child3_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_delay_0_getItBlocknth-child3_0_phone.log.json", + "selector": ".getItBlock:nth-child(3)", + "fileName": "puppet_backstop_features_delay_0_getItBlocknth-child3_0_phone.png", + "label": "delay", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.2428129146395401, + "misMatchPercentage": "1.24", + "analysisTime": 46 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_delay_0_getItBlocknth-child3_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_delay_0_getItBlocknth-child3_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_delay_0_getItBlocknth-child3_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_delay_0_getItBlocknth-child3_1_tablet.log.json", + "selector": ".getItBlock:nth-child(3)", + "fileName": "puppet_backstop_features_delay_0_getItBlocknth-child3_1_tablet.png", + "label": "delay", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.8101455343661579, + "misMatchPercentage": "0.81", + "analysisTime": 63 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_delay_0_getItBlocknth-child3_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_readyEvent_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_readyEvent_0_moneyshot_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_readyEvent_0_moneyshot_0_phone.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_readyEvent_0_moneyshot_0_phone.png", + "label": "readyEvent", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 2.1214430894308944, + "misMatchPercentage": "2.12", + "analysisTime": 25 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_readyEvent_0_moneyshot_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_readyEvent_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_readyEvent_0_moneyshot_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_readyEvent_0_moneyshot_1_tablet.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_readyEvent_0_moneyshot_1_tablet.png", + "label": "readyEvent", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.6768115942028985, + "misMatchPercentage": "0.68", + "analysisTime": 54 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_readyEvent_0_moneyshot_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_readyEventTimeout_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_readyEventTimeout_0_moneyshot_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_readyEventTimeout_0_moneyshot_0_phone.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_readyEventTimeout_0_moneyshot_0_phone.png", + "label": "readyEventTimeout", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 2.4745934959349594, + "misMatchPercentage": "2.47", + "analysisTime": 68 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_readyEventTimeout_0_moneyshot_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_readyEventTimeout_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_readyEventTimeout_0_moneyshot_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_readyEventTimeout_0_moneyshot_1_tablet.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_readyEventTimeout_0_moneyshot_1_tablet.png", + "label": "readyEventTimeout", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.7195652173913043, + "misMatchPercentage": "0.72", + "analysisTime": 32 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_readyEventTimeout_0_moneyshot_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_readySelector_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_readySelector_0_moneyshot_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_readySelector_0_moneyshot_0_phone.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_readySelector_0_moneyshot_0_phone.png", + "label": "readySelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 2.1214430894308944, + "misMatchPercentage": "2.12", + "analysisTime": 58 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_readySelector_0_moneyshot_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_readySelector_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_readySelector_0_moneyshot_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_readySelector_0_moneyshot_1_tablet.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_readySelector_0_moneyshot_1_tablet.png", + "label": "readySelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.6768115942028985, + "misMatchPercentage": "0.68", + "analysisTime": 138 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_readySelector_0_moneyshot_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_readySelectorTimeout_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_readySelectorTimeout_0_moneyshot_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_readySelectorTimeout_0_moneyshot_0_phone.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_readySelectorTimeout_0_moneyshot_0_phone.png", + "label": "readySelectorTimeout", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "phone", + "engineErrorMsg": "Waiting for selector `._the_lemur_is_ready_to_see_you_timeout` failed: Waiting failed: 2000ms exceeded", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_readySelectorTimeout_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_readySelectorTimeout_0_moneyshot_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_readySelectorTimeout_0_moneyshot_1_tablet.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_readySelectorTimeout_0_moneyshot_1_tablet.png", + "label": "readySelectorTimeout", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "tablet", + "engineErrorMsg": "Waiting for selector `._the_lemur_is_ready_to_see_you_timeout` failed: Waiting failed: 2000ms exceeded", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_noDelay_0_getItBlocknth-child3_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_noDelay_0_getItBlocknth-child3_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_noDelay_0_getItBlocknth-child3_0_phone.log.json", + "selector": ".getItBlock:nth-child(3)", + "fileName": "puppet_backstop_features_noDelay_0_getItBlocknth-child3_0_phone.png", + "label": "noDelay", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.2450243255196816, + "misMatchPercentage": "1.25", + "analysisTime": 54 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_noDelay_0_getItBlocknth-child3_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_noDelay_0_getItBlocknth-child3_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_noDelay_0_getItBlocknth-child3_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_noDelay_0_getItBlocknth-child3_1_tablet.log.json", + "selector": ".getItBlock:nth-child(3)", + "fileName": "puppet_backstop_features_noDelay_0_getItBlocknth-child3_1_tablet.png", + "label": "noDelay", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.8101455343661579, + "misMatchPercentage": "0.81", + "analysisTime": 61 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_noDelay_0_getItBlocknth-child3_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expanded_0_getItBlock_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_expanded_0_getItBlock_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_expanded_0_getItBlock_0_phone.log.json", + "selector": ".getItBlock", + "fileName": "puppet_backstop_features_expanded_0_getItBlock_0_phone.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 7.63515932688865, + "misMatchPercentage": "7.64", + "analysisTime": 44 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_expanded_0_getItBlock_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expanded_1_getItBlock__n1_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_expanded_1_getItBlock__n1_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_expanded_1_getItBlock__n1_0_phone.log.json", + "selector": ".getItBlock.__n1", + "fileName": "puppet_backstop_features_expanded_1_getItBlock__n1_0_phone.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.367794486215539, + "misMatchPercentage": "3.37", + "analysisTime": 43 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_expanded_1_getItBlock__n1_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expanded_2_getItBlock__n2_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_expanded_2_getItBlock__n2_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_expanded_2_getItBlock__n2_0_phone.log.json", + "selector": ".getItBlock.__n2", + "fileName": "puppet_backstop_features_expanded_2_getItBlock__n2_0_phone.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.2428129146395401, + "misMatchPercentage": "1.24", + "analysisTime": 80 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_expanded_2_getItBlock__n2_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expanded_3_getItBlock__n3_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_expanded_3_getItBlock__n3_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_expanded_3_getItBlock__n3_0_phone.log.json", + "selector": ".getItBlock.__n3", + "fileName": "puppet_backstop_features_expanded_3_getItBlock__n3_0_phone.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expanded_0_getItBlock_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_expanded_0_getItBlock_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_expanded_0_getItBlock_1_tablet.log.json", + "selector": ".getItBlock", + "fileName": "puppet_backstop_features_expanded_0_getItBlock_1_tablet.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 5.497799562547764, + "misMatchPercentage": "5.50", + "analysisTime": 28 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_expanded_0_getItBlock_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expanded_1_getItBlock__n1_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_expanded_1_getItBlock__n1_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_expanded_1_getItBlock__n1_1_tablet.log.json", + "selector": ".getItBlock.__n1", + "fileName": "puppet_backstop_features_expanded_1_getItBlock__n1_1_tablet.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 2.3227132579650567, + "misMatchPercentage": "2.32", + "analysisTime": 35 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_expanded_1_getItBlock__n1_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expanded_2_getItBlock__n2_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_expanded_2_getItBlock__n2_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_expanded_2_getItBlock__n2_1_tablet.log.json", + "selector": ".getItBlock.__n2", + "fileName": "puppet_backstop_features_expanded_2_getItBlock__n2_1_tablet.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.8101455343661579, + "misMatchPercentage": "0.81", + "analysisTime": 23 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_expanded_2_getItBlock__n2_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expanded_3_getItBlock__n3_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_expanded_3_getItBlock__n3_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_expanded_3_getItBlock__n3_1_tablet.log.json", + "selector": ".getItBlock.__n3", + "fileName": "puppet_backstop_features_expanded_3_getItBlock__n3_1_tablet.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_notExpanded_0_getItBlock_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_notExpanded_0_getItBlock_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_notExpanded_0_getItBlock_0_phone.log.json", + "selector": ".getItBlock", + "fileName": "puppet_backstop_features_notExpanded_0_getItBlock_0_phone.png", + "label": "notExpanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 7.63515932688865, + "misMatchPercentage": "7.64", + "analysisTime": 25 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_notExpanded_0_getItBlock_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_notExpanded_0_getItBlock_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_notExpanded_0_getItBlock_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_notExpanded_0_getItBlock_1_tablet.log.json", + "selector": ".getItBlock", + "fileName": "puppet_backstop_features_notExpanded_0_getItBlock_1_tablet.png", + "label": "notExpanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 5.497799562547764, + "misMatchPercentage": "5.50", + "analysisTime": 16 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_notExpanded_0_getItBlock_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expect_0_getItBlock_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_expect_0_getItBlock_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_expect_0_getItBlock_0_phone.log.json", + "selector": ".getItBlock", + "fileName": "puppet_backstop_features_expect_0_getItBlock_0_phone.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 7.63515932688865, + "misMatchPercentage": "7.64", + "analysisTime": 28 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_expect_0_getItBlock_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expect_1_getItBlock__n1_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_expect_1_getItBlock__n1_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_expect_1_getItBlock__n1_0_phone.log.json", + "selector": ".getItBlock.__n1", + "fileName": "puppet_backstop_features_expect_1_getItBlock__n1_0_phone.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.367794486215539, + "misMatchPercentage": "3.37", + "analysisTime": 23 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_expect_1_getItBlock__n1_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expect_2_getItBlock__n2_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_expect_2_getItBlock__n2_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_expect_2_getItBlock__n2_0_phone.log.json", + "selector": ".getItBlock.__n2", + "fileName": "puppet_backstop_features_expect_2_getItBlock__n2_0_phone.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.2428129146395401, + "misMatchPercentage": "1.24", + "analysisTime": 38 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_expect_2_getItBlock__n2_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expect_3_getItBlock__n3_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_expect_3_getItBlock__n3_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_expect_3_getItBlock__n3_0_phone.log.json", + "selector": ".getItBlock.__n3", + "fileName": "puppet_backstop_features_expect_3_getItBlock__n3_0_phone.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expect_0_getItBlock_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_expect_0_getItBlock_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_expect_0_getItBlock_1_tablet.log.json", + "selector": ".getItBlock", + "fileName": "puppet_backstop_features_expect_0_getItBlock_1_tablet.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 5.497799562547764, + "misMatchPercentage": "5.50", + "analysisTime": 165 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_expect_0_getItBlock_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expect_1_getItBlock__n1_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_expect_1_getItBlock__n1_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_expect_1_getItBlock__n1_1_tablet.log.json", + "selector": ".getItBlock.__n1", + "fileName": "puppet_backstop_features_expect_1_getItBlock__n1_1_tablet.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 2.3227132579650567, + "misMatchPercentage": "2.32", + "analysisTime": 51 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_expect_1_getItBlock__n1_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expect_2_getItBlock__n2_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_expect_2_getItBlock__n2_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_expect_2_getItBlock__n2_1_tablet.log.json", + "selector": ".getItBlock.__n2", + "fileName": "puppet_backstop_features_expect_2_getItBlock__n2_1_tablet.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.8101455343661579, + "misMatchPercentage": "0.81", + "analysisTime": 178 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_expect_2_getItBlock__n2_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expect_3_getItBlock__n3_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_expect_3_getItBlock__n3_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_expect_3_getItBlock__n3_1_tablet.log.json", + "selector": ".getItBlock.__n3", + "fileName": "puppet_backstop_features_expect_3_getItBlock__n3_1_tablet.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_magicSelectors_0_document_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_magicSelectors_0_document_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_magicSelectors_0_document_0_phone.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_magicSelectors_0_document_0_phone.png", + "label": "magicSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.194232723577236, + "misMatchPercentage": "3.19", + "analysisTime": 326 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_magicSelectors_0_document_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_magicSelectors_1_viewport_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_magicSelectors_1_viewport_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_magicSelectors_1_viewport_0_phone.log.json", + "selector": "viewport", + "fileName": "puppet_backstop_features_magicSelectors_1_viewport_0_phone.png", + "label": "magicSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.12109375, + "misMatchPercentage": "3.12", + "analysisTime": 24 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_magicSelectors_1_viewport_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_magicSelectors_0_document_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_magicSelectors_0_document_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_magicSelectors_0_document_1_tablet.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_magicSelectors_0_document_1_tablet.png", + "label": "magicSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.8621084797555385, + "misMatchPercentage": "1.86", + "analysisTime": 76 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_magicSelectors_0_document_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_magicSelectors_1_viewport_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_magicSelectors_1_viewport_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_magicSelectors_1_viewport_1_tablet.log.json", + "selector": "viewport", + "fileName": "puppet_backstop_features_magicSelectors_1_viewport_1_tablet.png", + "label": "magicSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.6054789225260417, + "misMatchPercentage": "1.61", + "analysisTime": 86 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_magicSelectors_1_viewport_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_hideSelectors_0_document_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_hideSelectors_0_document_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_hideSelectors_0_document_0_phone.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_hideSelectors_0_document_0_phone.png", + "label": "hideSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.49796747967479676, + "misMatchPercentage": "0.50", + "analysisTime": 129 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_hideSelectors_0_document_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_hideSelectors_0_document_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_hideSelectors_0_document_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_hideSelectors_0_document_1_tablet.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_hideSelectors_0_document_1_tablet.png", + "label": "hideSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.23843344155844154, + "misMatchPercentage": "0.24", + "analysisTime": 73 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_hideSelectors_0_document_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_removeSelectors_0_document_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_removeSelectors_0_document_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_removeSelectors_0_document_0_phone.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_removeSelectors_0_document_0_phone.png", + "label": "removeSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.0208333333333333, + "misMatchPercentage": "1.02", + "analysisTime": 117 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_removeSelectors_0_document_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_removeSelectors_0_document_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_removeSelectors_0_document_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_removeSelectors_0_document_1_tablet.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_removeSelectors_0_document_1_tablet.png", + "label": "removeSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.4063924153645833, + "misMatchPercentage": "0.41", + "analysisTime": 28 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_removeSelectors_0_document_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_notFound_0_monkey_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_notFound_0_monkey_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_notFound_0_monkey_0_phone.log.json", + "selector": ".monkey", + "fileName": "puppet_backstop_features_notFound_0_monkey_0_phone.png", + "label": "notFound", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_notFound_0_monkey_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_notFound_0_monkey_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_notFound_0_monkey_1_tablet.log.json", + "selector": ".monkey", + "fileName": "puppet_backstop_features_notFound_0_monkey_1_tablet.png", + "label": "notFound", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_notVisible_0_noShow_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_notVisible_0_noShow_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_notVisible_0_noShow_0_phone.log.json", + "selector": "#noShow", + "fileName": "puppet_backstop_features_notVisible_0_noShow_0_phone.png", + "label": "notVisible", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_notVisible_0_noShow_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_notVisible_0_noShow_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_notVisible_0_noShow_1_tablet.log.json", + "selector": "#noShow", + "fileName": "puppet_backstop_features_notVisible_0_noShow_1_tablet.png", + "label": "notVisible", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_cookies_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_cookies_0_moneyshot_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_cookies_0_moneyshot_0_phone.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_cookies_0_moneyshot_0_phone.png", + "label": "cookies", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?cookie", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.0161516853932584, + "misMatchPercentage": "3.02", + "analysisTime": 46 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_cookies_0_moneyshot_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_cookies_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_cookies_0_moneyshot_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_cookies_0_moneyshot_1_tablet.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_cookies_0_moneyshot_1_tablet.png", + "label": "cookies", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?cookie", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.2421782178217822, + "misMatchPercentage": "1.24", + "analysisTime": 187 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_cookies_0_moneyshot_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_hover_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_hover_0_moneyshot_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_hover_0_moneyshot_0_phone.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_hover_0_moneyshot_0_phone.png", + "label": "hover", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?click", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 2.137957317073171, + "misMatchPercentage": "2.14", + "analysisTime": 88 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_hover_0_moneyshot_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_hover_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_hover_0_moneyshot_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_hover_0_moneyshot_1_tablet.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_hover_0_moneyshot_1_tablet.png", + "label": "hover", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?click", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.7038043478260869, + "misMatchPercentage": "0.70", + "analysisTime": 84 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_hover_0_moneyshot_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_click_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_click_0_moneyshot_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_click_0_moneyshot_0_phone.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_click_0_moneyshot_0_phone.png", + "label": "click", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?click", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 8.810975609756097, + "misMatchPercentage": "8.81", + "analysisTime": 21 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_click_0_moneyshot_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_click_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_click_0_moneyshot_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_click_0_moneyshot_1_tablet.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_click_0_moneyshot_1_tablet.png", + "label": "click", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?click", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 10.83677536231884, + "misMatchPercentage": "10.84", + "analysisTime": 34 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_click_0_moneyshot_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scrollToSelector_0_lemurFace_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_scrollToSelector_0_lemurFace_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_scrollToSelector_0_lemurFace_0_phone.log.json", + "selector": ".lemurFace", + "fileName": "puppet_backstop_features_scrollToSelector_0_lemurFace_0_phone.png", + "label": "scrollToSelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/test/configs/special_cases/scrollToSelector.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0, + "misMatchPercentage": "0.00", + "analysisTime": 47 + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scrollToSelector_0_lemurFace_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_scrollToSelector_0_lemurFace_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_scrollToSelector_0_lemurFace_1_tablet.log.json", + "selector": ".lemurFace", + "fileName": "puppet_backstop_features_scrollToSelector_0_lemurFace_1_tablet.png", + "label": "scrollToSelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/test/configs/special_cases/scrollToSelector.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0, + "misMatchPercentage": "0.00", + "analysisTime": 24 + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scenarioSpecificViewports_0_document_0_Galaxy-S5.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_scenarioSpecificViewports_0_document_0_Galaxy-S5.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_scenarioSpecificViewports_0_document_0_Galaxy-S5.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_scenarioSpecificViewports_0_document_0_Galaxy-S5.png", + "label": "scenarioSpecificViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "Galaxy-S5", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.1676003734827263, + "misMatchPercentage": "3.17", + "analysisTime": 38 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_scenarioSpecificViewports_0_document_0_Galaxy-S5.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scenarioSpecificViewports_1_viewport_0_Galaxy-S5.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_scenarioSpecificViewports_1_viewport_0_Galaxy-S5.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_scenarioSpecificViewports_1_viewport_0_Galaxy-S5.log.json", + "selector": "viewport", + "fileName": "puppet_backstop_features_scenarioSpecificViewports_1_viewport_0_Galaxy-S5.png", + "label": "scenarioSpecificViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "Galaxy-S5", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.860677083333333, + "misMatchPercentage": "3.86", + "analysisTime": 53 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_scenarioSpecificViewports_1_viewport_0_Galaxy-S5.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_0_phone.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_0_phone.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_0_phone.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_0_phone.png", + "label": "scenarioSpecificViewports-withEmptyViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.194232723577236, + "misMatchPercentage": "3.19", + "analysisTime": 23 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_1_tablet.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_1_tablet.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_1_tablet.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_1_tablet.png", + "label": "scenarioSpecificViewports-withEmptyViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.8621084797555385, + "misMatchPercentage": "1.86", + "analysisTime": 46 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_0_Pixel-2.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_0_Pixel-2.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_0_Pixel-2.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_0_Pixel-2.png", + "label": "scenarioSpecificViewports-withMultipleViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "Pixel-2", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 2.7688564476885644, + "misMatchPercentage": "2.77", + "analysisTime": 75 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_0_Pixel-2.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_1_Pixel2-XL.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_1_Pixel2-XL.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_1_Pixel2-XL.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_1_Pixel2-XL.png", + "label": "scenarioSpecificViewports-withMultipleViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "Pixel2-XL", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 2.7688564476885644, + "misMatchPercentage": "2.77", + "analysisTime": 98 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_1_Pixel2-XL.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_2_iPhone-X.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_2_iPhone-X.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_2_iPhone-X.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_2_iPhone-X.png", + "label": "scenarioSpecificViewports-withMultipleViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "iPhone-X", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.174417796315607, + "misMatchPercentage": "3.17", + "analysisTime": 34 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_2_iPhone-X.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_3_iPad-Pro.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_3_iPad-Pro.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_3_iPad-Pro.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_3_iPad-Pro.png", + "label": "scenarioSpecificViewports-withMultipleViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "iPad-Pro", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.7844070278184478, + "misMatchPercentage": "1.78", + "analysisTime": 41 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_3_iPad-Pro.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_0_getItBlock_0_iPad-Pro.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_0_getItBlock_0_iPad-Pro.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_0_getItBlock_0_iPad-Pro.log.json", + "selector": ".getItBlock", + "fileName": "puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_0_getItBlock_0_iPad-Pro.png", + "label": "scenarioSpecificViewports-withExpandSelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "iPad-Pro", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 5.497799562547764, + "misMatchPercentage": "5.50", + "analysisTime": 35 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_0_getItBlock_0_iPad-Pro.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_1_getItBlock__n1_0_iPad-Pro.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_1_getItBlock__n1_0_iPad-Pro.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_1_getItBlock__n1_0_iPad-Pro.log.json", + "selector": ".getItBlock.__n1", + "fileName": "puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_1_getItBlock__n1_0_iPad-Pro.png", + "label": "scenarioSpecificViewports-withExpandSelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "iPad-Pro", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 2.3227132579650567, + "misMatchPercentage": "2.32", + "analysisTime": 20 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_1_getItBlock__n1_0_iPad-Pro.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_2_getItBlock__n2_0_iPad-Pro.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_2_getItBlock__n2_0_iPad-Pro.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_2_getItBlock__n2_0_iPad-Pro.log.json", + "selector": ".getItBlock.__n2", + "fileName": "puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_2_getItBlock__n2_0_iPad-Pro.png", + "label": "scenarioSpecificViewports-withExpandSelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "iPad-Pro", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.8101455343661579, + "misMatchPercentage": "0.81", + "analysisTime": 29 + }, + "diffImage": "../bitmaps_test/20240101-215759/failed_diff_puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_2_getItBlock__n2_0_iPad-Pro.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_3_getItBlock__n3_0_iPad-Pro.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_3_getItBlock__n3_0_iPad-Pro.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_3_getItBlock__n3_0_iPad-Pro.log.json", + "selector": ".getItBlock.__n3", + "fileName": "puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_3_getItBlock__n3_0_iPad-Pro.png", + "label": "scenarioSpecificViewports-withExpandSelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "iPad-Pro", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_keyPressSelector_0_dividnavbar_0_Desktop.png", + "test": "../bitmaps_test/20240101-215759/puppet_backstop_features_keyPressSelector_0_dividnavbar_0_Desktop.png", + "testLog": "../bitmaps_test/20240101-215759/puppet_backstop_features_keyPressSelector_0_dividnavbar_0_Desktop.log.json", + "selector": "div[id=navbar]", + "fileName": "puppet_backstop_features_keyPressSelector_0_dividnavbar_0_Desktop.png", + "label": "keyPressSelector", + "misMatchThreshold": 5, + "url": "https://garris.github.io/BackstopJS/examples/featureTests/index.html", + "expect": 0, + "viewportLabel": "Desktop", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0, + "misMatchPercentage": "0.00", + "analysisTime": 20 + } + }, + "status": "pass" + } + ], + "id": "puppet_backstop_features" +} \ No newline at end of file diff --git a/test/__fixtures__/smoke-test-playwright-docker.json b/test/__fixtures__/smoke-test-playwright-docker.json new file mode 100644 index 000000000..865668e8c --- /dev/null +++ b/test/__fixtures__/smoke-test-playwright-docker.json @@ -0,0 +1,1690 @@ +{ + "testSuite": "BackstopJS", + "tests": [ + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_Simple_0_document_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_Simple_0_document_0_phone.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_Simple_0_document_0_phone.png", + "label": "Simple", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 25.576410060975608, + "misMatchPercentage": "25.58", + "analysisTime": 28 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_Simple_0_document_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_Simple_0_document_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_Simple_0_document_1_tablet.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_Simple_0_document_1_tablet.png", + "label": "Simple", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 28.73391544117647, + "misMatchPercentage": "28.73", + "analysisTime": 434 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_Simple_0_document_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_pkra_bug_test_0_pkratest_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_pkra_bug_test_0_pkratest_0_phone.png", + "selector": "#pkratest", + "fileName": "playwright_chromium_backstop_features_pkra_bug_test_0_pkratest_0_phone.png", + "label": "pkra bug test", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_pkra_bug_test_1_logoBlock_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_pkra_bug_test_1_logoBlock_0_phone.png", + "selector": ".logoBlock", + "fileName": "playwright_chromium_backstop_features_pkra_bug_test_1_logoBlock_0_phone.png", + "label": "pkra bug test", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": -2, + "height": -1 + }, + "rawMisMatchPercentage": 95.27310924369748, + "misMatchPercentage": "95.27", + "analysisTime": 11 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_pkra_bug_test_1_logoBlock_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_pkra_bug_test_0_pkratest_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_pkra_bug_test_0_pkratest_1_tablet.png", + "selector": "#pkratest", + "fileName": "playwright_chromium_backstop_features_pkra_bug_test_0_pkratest_1_tablet.png", + "label": "pkra bug test", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_pkra_bug_test_1_logoBlock_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_pkra_bug_test_1_logoBlock_1_tablet.png", + "selector": ".logoBlock", + "fileName": "playwright_chromium_backstop_features_pkra_bug_test_1_logoBlock_1_tablet.png", + "label": "pkra bug test", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": 0, + "height": -1 + }, + "rawMisMatchPercentage": 93.24257831720519, + "misMatchPercentage": "93.24", + "analysisTime": 67 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_pkra_bug_test_1_logoBlock_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_delay_0_getItBlocknth-child3_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_delay_0_getItBlocknth-child3_0_phone.png", + "selector": ".getItBlock:nth-child(3)", + "fileName": "playwright_chromium_backstop_features_delay_0_getItBlocknth-child3_0_phone.png", + "label": "delay", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": -2, + "height": -1 + }, + "rawMisMatchPercentage": 6.57676529632539, + "misMatchPercentage": "6.58", + "analysisTime": 19 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_delay_0_getItBlocknth-child3_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_delay_0_getItBlocknth-child3_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_delay_0_getItBlocknth-child3_1_tablet.png", + "selector": ".getItBlock:nth-child(3)", + "fileName": "playwright_chromium_backstop_features_delay_0_getItBlocknth-child3_1_tablet.png", + "label": "delay", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": 0, + "height": -1 + }, + "rawMisMatchPercentage": 0.8134544995582481, + "misMatchPercentage": "0.81", + "analysisTime": 24 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_delay_0_getItBlocknth-child3_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_readyEvent_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_readyEvent_0_moneyshot_0_phone.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_readyEvent_0_moneyshot_0_phone.png", + "label": "readyEvent", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 93.8694105691057, + "misMatchPercentage": "93.87", + "analysisTime": 51 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_readyEvent_0_moneyshot_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_readyEvent_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_readyEvent_0_moneyshot_1_tablet.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_readyEvent_0_moneyshot_1_tablet.png", + "label": "readyEvent", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 90.12826086956521, + "misMatchPercentage": "90.13", + "analysisTime": 171 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_readyEvent_0_moneyshot_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_readyEventTimeout_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_readyEventTimeout_0_moneyshot_0_phone.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_readyEventTimeout_0_moneyshot_0_phone.png", + "label": "readyEventTimeout", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 97.08333333333333, + "misMatchPercentage": "97.08", + "analysisTime": 84 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_readyEventTimeout_0_moneyshot_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_readyEventTimeout_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_readyEventTimeout_0_moneyshot_1_tablet.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_readyEventTimeout_0_moneyshot_1_tablet.png", + "label": "readyEventTimeout", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 97.16213768115942, + "misMatchPercentage": "97.16", + "analysisTime": 139 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_readyEventTimeout_0_moneyshot_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_readySelector_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_readySelector_0_moneyshot_0_phone.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_readySelector_0_moneyshot_0_phone.png", + "label": "readySelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 93.8694105691057, + "misMatchPercentage": "93.87", + "analysisTime": 92 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_readySelector_0_moneyshot_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_readySelector_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_readySelector_0_moneyshot_1_tablet.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_readySelector_0_moneyshot_1_tablet.png", + "label": "readySelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 90.12826086956521, + "misMatchPercentage": "90.13", + "analysisTime": 247 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_readySelector_0_moneyshot_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_readySelectorTimeout_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_readySelectorTimeout_0_moneyshot_0_phone.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_readySelectorTimeout_0_moneyshot_0_phone.png", + "label": "readySelectorTimeout", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "phone", + "engineErrorMsg": "page.waitForSelector: Timeout 2000ms exceeded.\nCall log:\n \u001b[2m- waiting for locator('._the_lemur_is_ready_to_see_you_timeout') to be visible\u001b[22m\n", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_readySelectorTimeout_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_readySelectorTimeout_0_moneyshot_1_tablet.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_readySelectorTimeout_0_moneyshot_1_tablet.png", + "label": "readySelectorTimeout", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "tablet", + "engineErrorMsg": "page.waitForSelector: Timeout 2000ms exceeded.\nCall log:\n \u001b[2m- waiting for locator('._the_lemur_is_ready_to_see_you_timeout') to be visible\u001b[22m\n", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_noDelay_0_getItBlocknth-child3_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_noDelay_0_getItBlocknth-child3_0_phone.png", + "selector": ".getItBlock:nth-child(3)", + "fileName": "playwright_chromium_backstop_features_noDelay_0_getItBlocknth-child3_0_phone.png", + "label": "noDelay", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": -2, + "height": -1 + }, + "rawMisMatchPercentage": 1.7631142532949289, + "misMatchPercentage": "1.76", + "analysisTime": 21 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_noDelay_0_getItBlocknth-child3_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_noDelay_0_getItBlocknth-child3_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_noDelay_0_getItBlocknth-child3_1_tablet.png", + "selector": ".getItBlock:nth-child(3)", + "fileName": "playwright_chromium_backstop_features_noDelay_0_getItBlocknth-child3_1_tablet.png", + "label": "noDelay", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": 0, + "height": -1 + }, + "rawMisMatchPercentage": 0.5433547898523287, + "misMatchPercentage": "0.54", + "analysisTime": 91 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_noDelay_0_getItBlocknth-child3_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expanded_0_getItBlock_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_expanded_0_getItBlock_0_phone.png", + "selector": ".getItBlock", + "fileName": "playwright_chromium_backstop_features_expanded_0_getItBlock_0_phone.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": -2, + "height": -1 + }, + "rawMisMatchPercentage": 58.21557891018282, + "misMatchPercentage": "58.22", + "analysisTime": 12 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_expanded_0_getItBlock_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expanded_1_getItBlock__n1_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_expanded_1_getItBlock__n1_0_phone.png", + "selector": ".getItBlock.__n1", + "fileName": "playwright_chromium_backstop_features_expanded_1_getItBlock__n1_0_phone.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": -2, + "height": -1 + }, + "rawMisMatchPercentage": 4.9511065362840965, + "misMatchPercentage": "4.95", + "analysisTime": 46 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_expanded_1_getItBlock__n1_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expanded_2_getItBlock__n2_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_expanded_2_getItBlock__n2_0_phone.png", + "selector": ".getItBlock.__n2", + "fileName": "playwright_chromium_backstop_features_expanded_2_getItBlock__n2_0_phone.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": -2, + "height": -1 + }, + "rawMisMatchPercentage": 6.57676529632539, + "misMatchPercentage": "6.58", + "analysisTime": 78 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_expanded_2_getItBlock__n2_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expanded_3_getItBlock__n3_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_expanded_3_getItBlock__n3_0_phone.png", + "selector": ".getItBlock.__n3", + "fileName": "playwright_chromium_backstop_features_expanded_3_getItBlock__n3_0_phone.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expanded_0_getItBlock_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_expanded_0_getItBlock_1_tablet.png", + "selector": ".getItBlock", + "fileName": "playwright_chromium_backstop_features_expanded_0_getItBlock_1_tablet.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": 0, + "height": -2 + }, + "rawMisMatchPercentage": 16.220936294442705, + "misMatchPercentage": "16.22", + "analysisTime": 18 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_expanded_0_getItBlock_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expanded_1_getItBlock__n1_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_expanded_1_getItBlock__n1_1_tablet.png", + "selector": ".getItBlock.__n1", + "fileName": "playwright_chromium_backstop_features_expanded_1_getItBlock__n1_1_tablet.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0, + "misMatchPercentage": "0.00", + "analysisTime": 36 + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expanded_2_getItBlock__n2_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_expanded_2_getItBlock__n2_1_tablet.png", + "selector": ".getItBlock.__n2", + "fileName": "playwright_chromium_backstop_features_expanded_2_getItBlock__n2_1_tablet.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": 0, + "height": -1 + }, + "rawMisMatchPercentage": 0.8134544995582481, + "misMatchPercentage": "0.81", + "analysisTime": 21 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_expanded_2_getItBlock__n2_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expanded_3_getItBlock__n3_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_expanded_3_getItBlock__n3_1_tablet.png", + "selector": ".getItBlock.__n3", + "fileName": "playwright_chromium_backstop_features_expanded_3_getItBlock__n3_1_tablet.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_notExpanded_0_getItBlock_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_notExpanded_0_getItBlock_0_phone.png", + "selector": ".getItBlock", + "fileName": "playwright_chromium_backstop_features_notExpanded_0_getItBlock_0_phone.png", + "label": "notExpanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": -2, + "height": -1 + }, + "rawMisMatchPercentage": 58.21557891018282, + "misMatchPercentage": "58.22", + "analysisTime": 34 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_notExpanded_0_getItBlock_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_notExpanded_0_getItBlock_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_notExpanded_0_getItBlock_1_tablet.png", + "selector": ".getItBlock", + "fileName": "playwright_chromium_backstop_features_notExpanded_0_getItBlock_1_tablet.png", + "label": "notExpanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": 0, + "height": -2 + }, + "rawMisMatchPercentage": 16.220936294442705, + "misMatchPercentage": "16.22", + "analysisTime": 29 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_notExpanded_0_getItBlock_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expect_0_getItBlock_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_expect_0_getItBlock_0_phone.png", + "selector": ".getItBlock", + "fileName": "playwright_chromium_backstop_features_expect_0_getItBlock_0_phone.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": -2, + "height": -1 + }, + "rawMisMatchPercentage": 58.21557891018282, + "misMatchPercentage": "58.22", + "analysisTime": 16 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_expect_0_getItBlock_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expect_1_getItBlock__n1_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_expect_1_getItBlock__n1_0_phone.png", + "selector": ".getItBlock.__n1", + "fileName": "playwright_chromium_backstop_features_expect_1_getItBlock__n1_0_phone.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": -2, + "height": -1 + }, + "rawMisMatchPercentage": 4.9511065362840965, + "misMatchPercentage": "4.95", + "analysisTime": 28 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_expect_1_getItBlock__n1_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expect_2_getItBlock__n2_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_expect_2_getItBlock__n2_0_phone.png", + "selector": ".getItBlock.__n2", + "fileName": "playwright_chromium_backstop_features_expect_2_getItBlock__n2_0_phone.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": -2, + "height": -1 + }, + "rawMisMatchPercentage": 6.57676529632539, + "misMatchPercentage": "6.58", + "analysisTime": 63 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_expect_2_getItBlock__n2_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expect_3_getItBlock__n3_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_expect_3_getItBlock__n3_0_phone.png", + "selector": ".getItBlock.__n3", + "fileName": "playwright_chromium_backstop_features_expect_3_getItBlock__n3_0_phone.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expect_0_getItBlock_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_expect_0_getItBlock_1_tablet.png", + "selector": ".getItBlock", + "fileName": "playwright_chromium_backstop_features_expect_0_getItBlock_1_tablet.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": 0, + "height": -2 + }, + "rawMisMatchPercentage": 16.220936294442705, + "misMatchPercentage": "16.22", + "analysisTime": 95 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_expect_0_getItBlock_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expect_1_getItBlock__n1_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_expect_1_getItBlock__n1_1_tablet.png", + "selector": ".getItBlock.__n1", + "fileName": "playwright_chromium_backstop_features_expect_1_getItBlock__n1_1_tablet.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0, + "misMatchPercentage": "0.00", + "analysisTime": 35 + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expect_2_getItBlock__n2_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_expect_2_getItBlock__n2_1_tablet.png", + "selector": ".getItBlock.__n2", + "fileName": "playwright_chromium_backstop_features_expect_2_getItBlock__n2_1_tablet.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": 0, + "height": -1 + }, + "rawMisMatchPercentage": 0.8134544995582481, + "misMatchPercentage": "0.81", + "analysisTime": 229 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_expect_2_getItBlock__n2_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expect_3_getItBlock__n3_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_expect_3_getItBlock__n3_1_tablet.png", + "selector": ".getItBlock.__n3", + "fileName": "playwright_chromium_backstop_features_expect_3_getItBlock__n3_1_tablet.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_magicSelectors_0_document_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_magicSelectors_0_document_0_phone.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_magicSelectors_0_document_0_phone.png", + "label": "magicSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 25.576410060975608, + "misMatchPercentage": "25.58", + "analysisTime": 96 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_magicSelectors_0_document_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_magicSelectors_1_viewport_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_magicSelectors_1_viewport_0_phone.png", + "selector": "viewport", + "fileName": "playwright_chromium_backstop_features_magicSelectors_1_viewport_0_phone.png", + "label": "magicSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 51.795572916666664, + "misMatchPercentage": "51.80", + "analysisTime": 105 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_magicSelectors_1_viewport_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_magicSelectors_0_document_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_magicSelectors_0_document_1_tablet.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_magicSelectors_0_document_1_tablet.png", + "label": "magicSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 28.73391544117647, + "misMatchPercentage": "28.73", + "analysisTime": 202 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_magicSelectors_0_document_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_magicSelectors_1_viewport_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_magicSelectors_1_viewport_1_tablet.png", + "selector": "viewport", + "fileName": "playwright_chromium_backstop_features_magicSelectors_1_viewport_1_tablet.png", + "label": "magicSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 48.518498738606766, + "misMatchPercentage": "48.52", + "analysisTime": 167 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_magicSelectors_1_viewport_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_hideSelectors_0_document_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_hideSelectors_0_document_0_phone.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_hideSelectors_0_document_0_phone.png", + "label": "hideSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 25.450012703252035, + "misMatchPercentage": "25.45", + "analysisTime": 42 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_hideSelectors_0_document_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_hideSelectors_0_document_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_hideSelectors_0_document_1_tablet.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_hideSelectors_0_document_1_tablet.png", + "label": "hideSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 28.72115820760122, + "misMatchPercentage": "28.72", + "analysisTime": 140 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_hideSelectors_0_document_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_removeSelectors_0_document_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_removeSelectors_0_document_0_phone.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_removeSelectors_0_document_0_phone.png", + "label": "removeSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 54.99544270833333, + "misMatchPercentage": "55.00", + "analysisTime": 67 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_removeSelectors_0_document_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_removeSelectors_0_document_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_removeSelectors_0_document_1_tablet.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_removeSelectors_0_document_1_tablet.png", + "label": "removeSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 54.903411865234375, + "misMatchPercentage": "54.90", + "analysisTime": 170 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_removeSelectors_0_document_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_notFound_0_monkey_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_notFound_0_monkey_0_phone.png", + "selector": ".monkey", + "fileName": "playwright_chromium_backstop_features_notFound_0_monkey_0_phone.png", + "label": "notFound", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_notFound_0_monkey_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_notFound_0_monkey_1_tablet.png", + "selector": ".monkey", + "fileName": "playwright_chromium_backstop_features_notFound_0_monkey_1_tablet.png", + "label": "notFound", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_notVisible_0_noShow_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_notVisible_0_noShow_0_phone.png", + "selector": "#noShow", + "fileName": "playwright_chromium_backstop_features_notVisible_0_noShow_0_phone.png", + "label": "notVisible", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_notVisible_0_noShow_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_notVisible_0_noShow_1_tablet.png", + "selector": "#noShow", + "fileName": "playwright_chromium_backstop_features_notVisible_0_noShow_1_tablet.png", + "label": "notVisible", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_cookies_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_cookies_0_moneyshot_0_phone.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_cookies_0_moneyshot_0_phone.png", + "label": "cookies", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?cookie", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 94.23689138576779, + "misMatchPercentage": "94.24", + "analysisTime": 56 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_cookies_0_moneyshot_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_cookies_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_cookies_0_moneyshot_1_tablet.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_cookies_0_moneyshot_1_tablet.png", + "label": "cookies", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?cookie", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 89.97465346534653, + "misMatchPercentage": "89.97", + "analysisTime": 136 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_cookies_0_moneyshot_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_hover_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_hover_0_moneyshot_0_phone.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_hover_0_moneyshot_0_phone.png", + "label": "hover", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?click", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 93.88211382113822, + "misMatchPercentage": "93.88", + "analysisTime": 127 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_hover_0_moneyshot_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_hover_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_hover_0_moneyshot_1_tablet.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_hover_0_moneyshot_1_tablet.png", + "label": "hover", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?click", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 90.1413043478261, + "misMatchPercentage": "90.14", + "analysisTime": 128 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_hover_0_moneyshot_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_click_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_click_0_moneyshot_0_phone.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_click_0_moneyshot_0_phone.png", + "label": "click", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?click", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 97.08333333333333, + "misMatchPercentage": "97.08", + "analysisTime": 59 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_click_0_moneyshot_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_click_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_click_0_moneyshot_1_tablet.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_click_0_moneyshot_1_tablet.png", + "label": "click", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?click", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 97.16213768115942, + "misMatchPercentage": "97.16", + "analysisTime": 287 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_click_0_moneyshot_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scrollToSelector_0_lemurFace_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_scrollToSelector_0_lemurFace_0_phone.png", + "selector": ".lemurFace", + "fileName": "playwright_chromium_backstop_features_scrollToSelector_0_lemurFace_0_phone.png", + "label": "scrollToSelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/test/configs/special_cases/scrollToSelector.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": 0, + "height": 1 + }, + "rawMisMatchPercentage": 0, + "misMatchPercentage": "0.00", + "analysisTime": 11 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_scrollToSelector_0_lemurFace_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scrollToSelector_0_lemurFace_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_scrollToSelector_0_lemurFace_1_tablet.png", + "selector": ".lemurFace", + "fileName": "playwright_chromium_backstop_features_scrollToSelector_0_lemurFace_1_tablet.png", + "label": "scrollToSelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/test/configs/special_cases/scrollToSelector.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": 0, + "height": -1 + }, + "rawMisMatchPercentage": 0, + "misMatchPercentage": "0.00", + "analysisTime": 11 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_scrollToSelector_0_lemurFace_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports_0_document_0_Galaxy-S5.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_scenarioSpecificViewports_0_document_0_Galaxy-S5.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_scenarioSpecificViewports_0_document_0_Galaxy-S5.png", + "label": "scenarioSpecificViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "Galaxy-S5", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 35.09891456582633, + "misMatchPercentage": "35.10", + "analysisTime": 49 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_scenarioSpecificViewports_0_document_0_Galaxy-S5.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports_1_viewport_0_Galaxy-S5.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_scenarioSpecificViewports_1_viewport_0_Galaxy-S5.png", + "selector": "viewport", + "fileName": "playwright_chromium_backstop_features_scenarioSpecificViewports_1_viewport_0_Galaxy-S5.png", + "label": "scenarioSpecificViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "Galaxy-S5", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 52.209635416666664, + "misMatchPercentage": "52.21", + "analysisTime": 62 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_scenarioSpecificViewports_1_viewport_0_Galaxy-S5.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_0_phone.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_0_phone.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_0_phone.png", + "label": "scenarioSpecificViewports-withEmptyViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 25.576410060975608, + "misMatchPercentage": "25.58", + "analysisTime": 57 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_1_tablet.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_1_tablet.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_1_tablet.png", + "label": "scenarioSpecificViewports-withEmptyViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 28.73391544117647, + "misMatchPercentage": "28.73", + "analysisTime": 72 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_0_Pixel-2.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_0_Pixel-2.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_0_Pixel-2.png", + "label": "scenarioSpecificViewports-withMultipleViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "Pixel-2", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 40.567294147778206, + "misMatchPercentage": "40.57", + "analysisTime": 61 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_0_Pixel-2.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_1_Pixel2-XL.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_1_Pixel2-XL.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_1_Pixel2-XL.png", + "label": "scenarioSpecificViewports-withMultipleViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "Pixel2-XL", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 46.10782430528877, + "misMatchPercentage": "46.11", + "analysisTime": 81 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_1_Pixel2-XL.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_2_iPhone-X.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_2_iPhone-X.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_2_iPhone-X.png", + "label": "scenarioSpecificViewports-withMultipleViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "iPhone-X", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 44.93096976016684, + "misMatchPercentage": "44.93", + "analysisTime": 83 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_2_iPhone-X.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_3_iPad-Pro.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_3_iPad-Pro.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_3_iPad-Pro.png", + "label": "scenarioSpecificViewports-withMultipleViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "iPad-Pro", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 50.87318699670571, + "misMatchPercentage": "50.87", + "analysisTime": 111 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_3_iPad-Pro.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_0_getItBlock_0_iPad-Pro.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_0_getItBlock_0_iPad-Pro.png", + "selector": ".getItBlock", + "fileName": "playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_0_getItBlock_0_iPad-Pro.png", + "label": "scenarioSpecificViewports-withExpandSelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "iPad-Pro", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": 0, + "height": -2 + }, + "rawMisMatchPercentage": 23.4386403920342, + "misMatchPercentage": "23.44", + "analysisTime": 97 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_0_getItBlock_0_iPad-Pro.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_1_getItBlock__n1_0_iPad-Pro.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_1_getItBlock__n1_0_iPad-Pro.png", + "selector": ".getItBlock.__n1", + "fileName": "playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_1_getItBlock__n1_0_iPad-Pro.png", + "label": "scenarioSpecificViewports-withExpandSelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "iPad-Pro", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0, + "misMatchPercentage": "0.00", + "analysisTime": 25 + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_2_getItBlock__n2_0_iPad-Pro.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_2_getItBlock__n2_0_iPad-Pro.png", + "selector": ".getItBlock.__n2", + "fileName": "playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_2_getItBlock__n2_0_iPad-Pro.png", + "label": "scenarioSpecificViewports-withExpandSelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "iPad-Pro", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": 0, + "height": -1 + }, + "rawMisMatchPercentage": 0.8121923513820523, + "misMatchPercentage": "0.81", + "analysisTime": 94 + }, + "diffImage": "../bitmaps_test/20240101-215914/failed_diff_playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_2_getItBlock__n2_0_iPad-Pro.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_3_getItBlock__n3_0_iPad-Pro.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_3_getItBlock__n3_0_iPad-Pro.png", + "selector": ".getItBlock.__n3", + "fileName": "playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_3_getItBlock__n3_0_iPad-Pro.png", + "label": "scenarioSpecificViewports-withExpandSelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "iPad-Pro", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_keyPressSelector_0_dividnavbar_0_Desktop.png", + "test": "../bitmaps_test/20240101-215914/playwright_chromium_backstop_features_keyPressSelector_0_dividnavbar_0_Desktop.png", + "selector": "div[id=navbar]", + "fileName": "playwright_chromium_backstop_features_keyPressSelector_0_dividnavbar_0_Desktop.png", + "label": "keyPressSelector", + "misMatchThreshold": 5, + "url": "https://garris.github.io/BackstopJS/examples/featureTests/index.html", + "expect": 0, + "viewportLabel": "Desktop", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.044444444444444446, + "misMatchPercentage": "0.04", + "analysisTime": 32 + } + }, + "status": "pass" + } + ], + "id": "playwright_chromium_backstop_features" +} \ No newline at end of file diff --git a/test/__fixtures__/smoke-test-playwright.json b/test/__fixtures__/smoke-test-playwright.json new file mode 100644 index 000000000..e41598061 --- /dev/null +++ b/test/__fixtures__/smoke-test-playwright.json @@ -0,0 +1,1694 @@ +{ + "testSuite": "BackstopJS", + "tests": [ + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_Simple_0_document_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_Simple_0_document_0_phone.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_Simple_0_document_0_phone.png", + "label": "Simple", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 27.306275406504067, + "misMatchPercentage": "27.31", + "analysisTime": 91 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_Simple_0_document_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_Simple_0_document_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_Simple_0_document_1_tablet.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_Simple_0_document_1_tablet.png", + "label": "Simple", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 28.784272942131402, + "misMatchPercentage": "28.78", + "analysisTime": 176 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_Simple_0_document_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_pkra_bug_test_0_pkratest_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_pkra_bug_test_0_pkratest_0_phone.png", + "selector": "#pkratest", + "fileName": "playwright_chromium_backstop_features_pkra_bug_test_0_pkratest_0_phone.png", + "label": "pkra bug test", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_pkra_bug_test_1_logoBlock_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_pkra_bug_test_1_logoBlock_0_phone.png", + "selector": ".logoBlock", + "fileName": "playwright_chromium_backstop_features_pkra_bug_test_1_logoBlock_0_phone.png", + "label": "pkra bug test", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": -2, + "height": -1 + }, + "rawMisMatchPercentage": 95.18307322929172, + "misMatchPercentage": "95.18", + "analysisTime": 7 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_pkra_bug_test_1_logoBlock_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_pkra_bug_test_0_pkratest_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_pkra_bug_test_0_pkratest_1_tablet.png", + "selector": "#pkratest", + "fileName": "playwright_chromium_backstop_features_pkra_bug_test_0_pkratest_1_tablet.png", + "label": "pkra bug test", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_pkra_bug_test_1_logoBlock_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_pkra_bug_test_1_logoBlock_1_tablet.png", + "selector": ".logoBlock", + "fileName": "playwright_chromium_backstop_features_pkra_bug_test_1_logoBlock_1_tablet.png", + "label": "pkra bug test", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": 0, + "height": -1 + }, + "rawMisMatchPercentage": 93.04712700235088, + "misMatchPercentage": "93.05", + "analysisTime": 48 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_pkra_bug_test_1_logoBlock_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_delay_0_getItBlocknth-child3_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_delay_0_getItBlocknth-child3_0_phone.png", + "selector": ".getItBlock:nth-child(3)", + "fileName": "playwright_chromium_backstop_features_delay_0_getItBlocknth-child3_0_phone.png", + "label": "delay", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": -2, + "height": -1 + }, + "rawMisMatchPercentage": 6.714235838352099, + "misMatchPercentage": "6.71", + "analysisTime": 59 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_delay_0_getItBlocknth-child3_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_delay_0_getItBlocknth-child3_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_delay_0_getItBlocknth-child3_1_tablet.png", + "selector": ".getItBlock:nth-child(3)", + "fileName": "playwright_chromium_backstop_features_delay_0_getItBlocknth-child3_1_tablet.png", + "label": "delay", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": 0, + "height": -1 + }, + "rawMisMatchPercentage": 1.2312255458790862, + "misMatchPercentage": "1.23", + "analysisTime": 159 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_delay_0_getItBlocknth-child3_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_readyEvent_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_readyEvent_0_moneyshot_0_phone.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_readyEvent_0_moneyshot_0_phone.png", + "label": "readyEvent", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 94.57952235772358, + "misMatchPercentage": "94.58", + "analysisTime": 81 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_readyEvent_0_moneyshot_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_readyEvent_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_readyEvent_0_moneyshot_1_tablet.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_readyEvent_0_moneyshot_1_tablet.png", + "label": "readyEvent", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 90.41757246376811, + "misMatchPercentage": "90.42", + "analysisTime": 43 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_readyEvent_0_moneyshot_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_readyEventTimeout_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_readyEventTimeout_0_moneyshot_0_phone.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_readyEventTimeout_0_moneyshot_0_phone.png", + "label": "readyEventTimeout", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 97.92174796747967, + "misMatchPercentage": "97.92", + "analysisTime": 156 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_readyEventTimeout_0_moneyshot_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_readyEventTimeout_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_readyEventTimeout_0_moneyshot_1_tablet.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_readyEventTimeout_0_moneyshot_1_tablet.png", + "label": "readyEventTimeout", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 97.45579710144926, + "misMatchPercentage": "97.46", + "analysisTime": 209 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_readyEventTimeout_0_moneyshot_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_readySelector_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_readySelector_0_moneyshot_0_phone.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_readySelector_0_moneyshot_0_phone.png", + "label": "readySelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 94.57952235772358, + "misMatchPercentage": "94.58", + "analysisTime": 17 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_readySelector_0_moneyshot_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_readySelector_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_readySelector_0_moneyshot_1_tablet.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_readySelector_0_moneyshot_1_tablet.png", + "label": "readySelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 90.41757246376811, + "misMatchPercentage": "90.42", + "analysisTime": 92 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_readySelector_0_moneyshot_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_readySelectorTimeout_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_readySelectorTimeout_0_moneyshot_0_phone.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_readySelectorTimeout_0_moneyshot_0_phone.png", + "label": "readySelectorTimeout", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "phone", + "engineErrorMsg": "page.waitForSelector: Timeout 2000ms exceeded.\nCall log:\n \u001b[2m- waiting for locator('._the_lemur_is_ready_to_see_you_timeout') to be visible\u001b[22m\n", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_readySelectorTimeout_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_readySelectorTimeout_0_moneyshot_1_tablet.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_readySelectorTimeout_0_moneyshot_1_tablet.png", + "label": "readySelectorTimeout", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "tablet", + "engineErrorMsg": "page.waitForSelector: Timeout 2000ms exceeded.\nCall log:\n \u001b[2m- waiting for locator('._the_lemur_is_ready_to_see_you_timeout') to be visible\u001b[22m\n", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_noDelay_0_getItBlocknth-child3_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_noDelay_0_getItBlocknth-child3_0_phone.png", + "selector": ".getItBlock:nth-child(3)", + "fileName": "playwright_chromium_backstop_features_noDelay_0_getItBlocknth-child3_0_phone.png", + "label": "noDelay", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": -2, + "height": -1 + }, + "rawMisMatchPercentage": 1.9071310116086235, + "misMatchPercentage": "1.91", + "analysisTime": 68 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_noDelay_0_getItBlocknth-child3_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_noDelay_0_getItBlocknth-child3_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_noDelay_0_getItBlocknth-child3_1_tablet.png", + "selector": ".getItBlock:nth-child(3)", + "fileName": "playwright_chromium_backstop_features_noDelay_0_getItBlocknth-child3_1_tablet.png", + "label": "noDelay", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": 0, + "height": -1 + }, + "rawMisMatchPercentage": 0.9579704657326771, + "misMatchPercentage": "0.96", + "analysisTime": 57 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_noDelay_0_getItBlocknth-child3_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expanded_0_getItBlock_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_expanded_0_getItBlock_0_phone.png", + "selector": ".getItBlock", + "fileName": "playwright_chromium_backstop_features_expanded_0_getItBlock_0_phone.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": -2, + "height": -1 + }, + "rawMisMatchPercentage": 49.909476287203034, + "misMatchPercentage": "49.91", + "analysisTime": 32 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_expanded_0_getItBlock_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expanded_1_getItBlock__n1_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_expanded_1_getItBlock__n1_0_phone.png", + "selector": ".getItBlock.__n1", + "fileName": "playwright_chromium_backstop_features_expanded_1_getItBlock__n1_0_phone.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": -2, + "height": -1 + }, + "rawMisMatchPercentage": 5.14668039114771, + "misMatchPercentage": "5.15", + "analysisTime": 125 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_expanded_1_getItBlock__n1_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expanded_2_getItBlock__n2_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_expanded_2_getItBlock__n2_0_phone.png", + "selector": ".getItBlock.__n2", + "fileName": "playwright_chromium_backstop_features_expanded_2_getItBlock__n2_0_phone.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": -2, + "height": -1 + }, + "rawMisMatchPercentage": 6.714235838352099, + "misMatchPercentage": "6.71", + "analysisTime": 89 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_expanded_2_getItBlock__n2_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expanded_3_getItBlock__n3_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_expanded_3_getItBlock__n3_0_phone.png", + "selector": ".getItBlock.__n3", + "fileName": "playwright_chromium_backstop_features_expanded_3_getItBlock__n3_0_phone.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expanded_0_getItBlock_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_expanded_0_getItBlock_1_tablet.png", + "selector": ".getItBlock", + "fileName": "playwright_chromium_backstop_features_expanded_0_getItBlock_1_tablet.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": 0, + "height": -2 + }, + "rawMisMatchPercentage": 10.834375977478887, + "misMatchPercentage": "10.83", + "analysisTime": 70 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_expanded_0_getItBlock_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expanded_1_getItBlock__n1_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_expanded_1_getItBlock__n1_1_tablet.png", + "selector": ".getItBlock.__n1", + "fileName": "playwright_chromium_backstop_features_expanded_1_getItBlock__n1_1_tablet.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 2.305584104145255, + "misMatchPercentage": "2.31", + "analysisTime": 52 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_expanded_1_getItBlock__n1_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expanded_2_getItBlock__n2_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_expanded_2_getItBlock__n2_1_tablet.png", + "selector": ".getItBlock.__n2", + "fileName": "playwright_chromium_backstop_features_expanded_2_getItBlock__n2_1_tablet.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": 0, + "height": -1 + }, + "rawMisMatchPercentage": 1.2312255458790862, + "misMatchPercentage": "1.23", + "analysisTime": 168 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_expanded_2_getItBlock__n2_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expanded_3_getItBlock__n3_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_expanded_3_getItBlock__n3_1_tablet.png", + "selector": ".getItBlock.__n3", + "fileName": "playwright_chromium_backstop_features_expanded_3_getItBlock__n3_1_tablet.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_notExpanded_0_getItBlock_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_notExpanded_0_getItBlock_0_phone.png", + "selector": ".getItBlock", + "fileName": "playwright_chromium_backstop_features_notExpanded_0_getItBlock_0_phone.png", + "label": "notExpanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": -2, + "height": -1 + }, + "rawMisMatchPercentage": 49.909476287203034, + "misMatchPercentage": "49.91", + "analysisTime": 133 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_notExpanded_0_getItBlock_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_notExpanded_0_getItBlock_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_notExpanded_0_getItBlock_1_tablet.png", + "selector": ".getItBlock", + "fileName": "playwright_chromium_backstop_features_notExpanded_0_getItBlock_1_tablet.png", + "label": "notExpanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": 0, + "height": -2 + }, + "rawMisMatchPercentage": 10.834375977478887, + "misMatchPercentage": "10.83", + "analysisTime": 13 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_notExpanded_0_getItBlock_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expect_0_getItBlock_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_expect_0_getItBlock_0_phone.png", + "selector": ".getItBlock", + "fileName": "playwright_chromium_backstop_features_expect_0_getItBlock_0_phone.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": -2, + "height": -1 + }, + "rawMisMatchPercentage": 49.909476287203034, + "misMatchPercentage": "49.91", + "analysisTime": 86 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_expect_0_getItBlock_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expect_1_getItBlock__n1_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_expect_1_getItBlock__n1_0_phone.png", + "selector": ".getItBlock.__n1", + "fileName": "playwright_chromium_backstop_features_expect_1_getItBlock__n1_0_phone.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": -2, + "height": -1 + }, + "rawMisMatchPercentage": 5.14668039114771, + "misMatchPercentage": "5.15", + "analysisTime": 11 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_expect_1_getItBlock__n1_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expect_2_getItBlock__n2_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_expect_2_getItBlock__n2_0_phone.png", + "selector": ".getItBlock.__n2", + "fileName": "playwright_chromium_backstop_features_expect_2_getItBlock__n2_0_phone.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": -2, + "height": -1 + }, + "rawMisMatchPercentage": 6.714235838352099, + "misMatchPercentage": "6.71", + "analysisTime": 97 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_expect_2_getItBlock__n2_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expect_3_getItBlock__n3_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_expect_3_getItBlock__n3_0_phone.png", + "selector": ".getItBlock.__n3", + "fileName": "playwright_chromium_backstop_features_expect_3_getItBlock__n3_0_phone.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expect_0_getItBlock_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_expect_0_getItBlock_1_tablet.png", + "selector": ".getItBlock", + "fileName": "playwright_chromium_backstop_features_expect_0_getItBlock_1_tablet.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": 0, + "height": -2 + }, + "rawMisMatchPercentage": 10.834375977478887, + "misMatchPercentage": "10.83", + "analysisTime": 9 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_expect_0_getItBlock_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expect_1_getItBlock__n1_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_expect_1_getItBlock__n1_1_tablet.png", + "selector": ".getItBlock.__n1", + "fileName": "playwright_chromium_backstop_features_expect_1_getItBlock__n1_1_tablet.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 2.305584104145255, + "misMatchPercentage": "2.31", + "analysisTime": 83 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_expect_1_getItBlock__n1_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expect_2_getItBlock__n2_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_expect_2_getItBlock__n2_1_tablet.png", + "selector": ".getItBlock.__n2", + "fileName": "playwright_chromium_backstop_features_expect_2_getItBlock__n2_1_tablet.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": 0, + "height": -1 + }, + "rawMisMatchPercentage": 1.2312255458790862, + "misMatchPercentage": "1.23", + "analysisTime": 186 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_expect_2_getItBlock__n2_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_expect_3_getItBlock__n3_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_expect_3_getItBlock__n3_1_tablet.png", + "selector": ".getItBlock.__n3", + "fileName": "playwright_chromium_backstop_features_expect_3_getItBlock__n3_1_tablet.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_magicSelectors_0_document_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_magicSelectors_0_document_0_phone.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_magicSelectors_0_document_0_phone.png", + "label": "magicSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 27.306275406504067, + "misMatchPercentage": "27.31", + "analysisTime": 118 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_magicSelectors_0_document_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_magicSelectors_1_viewport_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_magicSelectors_1_viewport_0_phone.png", + "selector": "viewport", + "fileName": "playwright_chromium_backstop_features_magicSelectors_1_viewport_0_phone.png", + "label": "magicSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 52.173177083333336, + "misMatchPercentage": "52.17", + "analysisTime": 47 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_magicSelectors_1_viewport_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_magicSelectors_0_document_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_magicSelectors_0_document_1_tablet.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_magicSelectors_0_document_1_tablet.png", + "label": "magicSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 28.784272942131402, + "misMatchPercentage": "28.78", + "analysisTime": 84 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_magicSelectors_0_document_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_magicSelectors_1_viewport_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_magicSelectors_1_viewport_1_tablet.png", + "selector": "viewport", + "fileName": "playwright_chromium_backstop_features_magicSelectors_1_viewport_1_tablet.png", + "label": "magicSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 47.43995666503906, + "misMatchPercentage": "47.44", + "analysisTime": 102 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_magicSelectors_1_viewport_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_hideSelectors_0_document_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_hideSelectors_0_document_0_phone.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_hideSelectors_0_document_0_phone.png", + "label": "hideSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 24.32005843495935, + "misMatchPercentage": "24.32", + "analysisTime": 108 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_hideSelectors_0_document_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_hideSelectors_0_document_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_hideSelectors_0_document_1_tablet.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_hideSelectors_0_document_1_tablet.png", + "label": "hideSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 27.261163698433922, + "misMatchPercentage": "27.26", + "analysisTime": 53 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_hideSelectors_0_document_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_removeSelectors_0_document_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_removeSelectors_0_document_0_phone.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_removeSelectors_0_document_0_phone.png", + "label": "removeSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 52.51236979166667, + "misMatchPercentage": "52.51", + "analysisTime": 112 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_removeSelectors_0_document_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_removeSelectors_0_document_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_removeSelectors_0_document_1_tablet.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_removeSelectors_0_document_1_tablet.png", + "label": "removeSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 51.86297098795573, + "misMatchPercentage": "51.86", + "analysisTime": 162 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_removeSelectors_0_document_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_notFound_0_monkey_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_notFound_0_monkey_0_phone.png", + "selector": ".monkey", + "fileName": "playwright_chromium_backstop_features_notFound_0_monkey_0_phone.png", + "label": "notFound", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_notFound_0_monkey_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_notFound_0_monkey_1_tablet.png", + "selector": ".monkey", + "fileName": "playwright_chromium_backstop_features_notFound_0_monkey_1_tablet.png", + "label": "notFound", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_notVisible_0_noShow_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_notVisible_0_noShow_0_phone.png", + "selector": "#noShow", + "fileName": "playwright_chromium_backstop_features_notVisible_0_noShow_0_phone.png", + "label": "notVisible", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_notVisible_0_noShow_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_notVisible_0_noShow_1_tablet.png", + "selector": "#noShow", + "fileName": "playwright_chromium_backstop_features_notVisible_0_noShow_1_tablet.png", + "label": "notVisible", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_cookies_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_cookies_0_moneyshot_0_phone.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_cookies_0_moneyshot_0_phone.png", + "label": "cookies", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?cookie", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 95.04798689138578, + "misMatchPercentage": "95.05", + "analysisTime": 47 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_cookies_0_moneyshot_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_cookies_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_cookies_0_moneyshot_1_tablet.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_cookies_0_moneyshot_1_tablet.png", + "label": "cookies", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?cookie", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 90.51465346534654, + "misMatchPercentage": "90.51", + "analysisTime": 40 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_cookies_0_moneyshot_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_hover_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_hover_0_moneyshot_0_phone.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_hover_0_moneyshot_0_phone.png", + "label": "hover", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?click", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 94.60111788617887, + "misMatchPercentage": "94.60", + "analysisTime": 167 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_hover_0_moneyshot_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_hover_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_hover_0_moneyshot_1_tablet.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_hover_0_moneyshot_1_tablet.png", + "label": "hover", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?click", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 90.4340579710145, + "misMatchPercentage": "90.43", + "analysisTime": 63 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_hover_0_moneyshot_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_click_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_click_0_moneyshot_0_phone.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_click_0_moneyshot_0_phone.png", + "label": "click", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?click", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 97.92174796747967, + "misMatchPercentage": "97.92", + "analysisTime": 54 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_click_0_moneyshot_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_click_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_click_0_moneyshot_1_tablet.png", + "selector": ".moneyshot", + "fileName": "playwright_chromium_backstop_features_click_0_moneyshot_1_tablet.png", + "label": "click", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?click", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 97.45579710144926, + "misMatchPercentage": "97.46", + "analysisTime": 77 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_click_0_moneyshot_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scrollToSelector_0_lemurFace_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_scrollToSelector_0_lemurFace_0_phone.png", + "selector": ".lemurFace", + "fileName": "playwright_chromium_backstop_features_scrollToSelector_0_lemurFace_0_phone.png", + "label": "scrollToSelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/test/configs/special_cases/scrollToSelector.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": 0, + "height": 1 + }, + "rawMisMatchPercentage": 0, + "misMatchPercentage": "0.00", + "analysisTime": 57 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_scrollToSelector_0_lemurFace_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scrollToSelector_0_lemurFace_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_scrollToSelector_0_lemurFace_1_tablet.png", + "selector": ".lemurFace", + "fileName": "playwright_chromium_backstop_features_scrollToSelector_0_lemurFace_1_tablet.png", + "label": "scrollToSelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/test/configs/special_cases/scrollToSelector.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": 0, + "height": -1 + }, + "rawMisMatchPercentage": 0, + "misMatchPercentage": "0.00", + "analysisTime": 7 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_scrollToSelector_0_lemurFace_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports_0_document_0_Galaxy-S5.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_scenarioSpecificViewports_0_document_0_Galaxy-S5.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_scenarioSpecificViewports_0_document_0_Galaxy-S5.png", + "label": "scenarioSpecificViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "Galaxy-S5", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 36.33461718020541, + "misMatchPercentage": "36.33", + "analysisTime": 87 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_scenarioSpecificViewports_0_document_0_Galaxy-S5.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports_1_viewport_0_Galaxy-S5.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_scenarioSpecificViewports_1_viewport_0_Galaxy-S5.png", + "selector": "viewport", + "fileName": "playwright_chromium_backstop_features_scenarioSpecificViewports_1_viewport_0_Galaxy-S5.png", + "label": "scenarioSpecificViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "Galaxy-S5", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 53.10850694444444, + "misMatchPercentage": "53.11", + "analysisTime": 59 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_scenarioSpecificViewports_1_viewport_0_Galaxy-S5.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_0_phone.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_0_phone.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_0_phone.png", + "label": "scenarioSpecificViewports-withEmptyViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 27.306275406504067, + "misMatchPercentage": "27.31", + "analysisTime": 78 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_1_tablet.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_1_tablet.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_1_tablet.png", + "label": "scenarioSpecificViewports-withEmptyViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 28.784272942131402, + "misMatchPercentage": "28.78", + "analysisTime": 55 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_0_Pixel-2.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_0_Pixel-2.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_0_Pixel-2.png", + "label": "scenarioSpecificViewports-withMultipleViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "Pixel-2", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 40.3777692406198, + "misMatchPercentage": "40.38", + "analysisTime": 29 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_0_Pixel-2.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_1_Pixel2-XL.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_1_Pixel2-XL.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_1_Pixel2-XL.png", + "label": "scenarioSpecificViewports-withMultipleViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "Pixel2-XL", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 45.40760660776028, + "misMatchPercentage": "45.41", + "analysisTime": 26 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_1_Pixel2-XL.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_2_iPhone-X.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_2_iPhone-X.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_2_iPhone-X.png", + "label": "scenarioSpecificViewports-withMultipleViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "iPhone-X", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 44.89954814042405, + "misMatchPercentage": "44.90", + "analysisTime": 32 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_2_iPhone-X.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_3_iPad-Pro.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_3_iPad-Pro.png", + "selector": "document", + "fileName": "playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_3_iPad-Pro.png", + "label": "scenarioSpecificViewports-withMultipleViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "iPad-Pro", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 49.36566331899707, + "misMatchPercentage": "49.37", + "analysisTime": 52 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_3_iPad-Pro.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_0_getItBlock_0_iPad-Pro.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_0_getItBlock_0_iPad-Pro.png", + "selector": ".getItBlock", + "fileName": "playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_0_getItBlock_0_iPad-Pro.png", + "label": "scenarioSpecificViewports-withExpandSelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "iPad-Pro", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": 0, + "height": -2 + }, + "rawMisMatchPercentage": 13.662548222291731, + "misMatchPercentage": "13.66", + "analysisTime": 34 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_0_getItBlock_0_iPad-Pro.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_1_getItBlock__n1_0_iPad-Pro.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_1_getItBlock__n1_0_iPad-Pro.png", + "selector": ".getItBlock.__n1", + "fileName": "playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_1_getItBlock__n1_0_iPad-Pro.png", + "label": "scenarioSpecificViewports-withExpandSelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "iPad-Pro", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 2.300445357999315, + "misMatchPercentage": "2.30", + "analysisTime": 49 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_1_getItBlock__n1_0_iPad-Pro.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_2_getItBlock__n2_0_iPad-Pro.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_2_getItBlock__n2_0_iPad-Pro.png", + "selector": ".getItBlock.__n2", + "fileName": "playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_2_getItBlock__n2_0_iPad-Pro.png", + "label": "scenarioSpecificViewports-withExpandSelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "iPad-Pro", + "diff": { + "isSameDimensions": false, + "dimensionDifference": { + "width": 0, + "height": -1 + }, + "rawMisMatchPercentage": 1.2324876940552822, + "misMatchPercentage": "1.23", + "analysisTime": 96 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_2_getItBlock__n2_0_iPad-Pro.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_3_getItBlock__n3_0_iPad-Pro.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_3_getItBlock__n3_0_iPad-Pro.png", + "selector": ".getItBlock.__n3", + "fileName": "playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_3_getItBlock__n3_0_iPad-Pro.png", + "label": "scenarioSpecificViewports-withExpandSelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "iPad-Pro", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/playwright_chromium_backstop_features_keyPressSelector_0_dividnavbar_0_Desktop.png", + "test": "../bitmaps_test/20240101-165424/playwright_chromium_backstop_features_keyPressSelector_0_dividnavbar_0_Desktop.png", + "selector": "div[id=navbar]", + "fileName": "playwright_chromium_backstop_features_keyPressSelector_0_dividnavbar_0_Desktop.png", + "label": "keyPressSelector", + "misMatchThreshold": 5, + "url": "https://garris.github.io/BackstopJS/examples/featureTests/index.html", + "expect": 0, + "viewportLabel": "Desktop", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 12.058333333333334, + "misMatchPercentage": "12.06", + "analysisTime": 44 + }, + "diffImage": "../bitmaps_test/20240101-165424/failed_diff_playwright_chromium_backstop_features_keyPressSelector_0_dividnavbar_0_Desktop.png" + }, + "status": "fail" + } + ], + "id": "playwright_chromium_backstop_features" +} \ No newline at end of file diff --git a/test/__fixtures__/smoke-test.json b/test/__fixtures__/smoke-test.json new file mode 100644 index 000000000..dc6982f2f --- /dev/null +++ b/test/__fixtures__/smoke-test.json @@ -0,0 +1,1761 @@ +{ + "testSuite": "BackstopJS", + "tests": [ + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_Simple_0_document_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_Simple_0_document_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_Simple_0_document_0_phone.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_Simple_0_document_0_phone.png", + "label": "Simple", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.750635162601626, + "misMatchPercentage": "3.75", + "analysisTime": 210 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_Simple_0_document_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_Simple_0_document_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_Simple_0_document_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_Simple_0_document_1_tablet.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_Simple_0_document_1_tablet.png", + "label": "Simple", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.9487233813980136, + "misMatchPercentage": "1.95", + "analysisTime": 308 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_Simple_0_document_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_pkra_bug_test_0_pkratest_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_pkra_bug_test_0_pkratest_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_pkra_bug_test_0_pkratest_0_phone.log.json", + "selector": "#pkratest", + "fileName": "puppet_backstop_features_pkra_bug_test_0_pkratest_0_phone.png", + "label": "pkra bug test", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_pkra_bug_test_1_logoBlock_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_pkra_bug_test_1_logoBlock_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_pkra_bug_test_1_logoBlock_0_phone.log.json", + "selector": ".logoBlock", + "fileName": "puppet_backstop_features_pkra_bug_test_1_logoBlock_0_phone.png", + "label": "pkra bug test", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 10.98556183301946, + "misMatchPercentage": "10.99", + "analysisTime": 32 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_pkra_bug_test_1_logoBlock_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_pkra_bug_test_0_pkratest_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_pkra_bug_test_0_pkratest_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_pkra_bug_test_0_pkratest_1_tablet.log.json", + "selector": "#pkratest", + "fileName": "puppet_backstop_features_pkra_bug_test_0_pkratest_1_tablet.png", + "label": "pkra bug test", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_pkra_bug_test_1_logoBlock_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_pkra_bug_test_1_logoBlock_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_pkra_bug_test_1_logoBlock_1_tablet.log.json", + "selector": ".logoBlock", + "fileName": "puppet_backstop_features_pkra_bug_test_1_logoBlock_1_tablet.png", + "label": "pkra bug test", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.2769485903814262, + "misMatchPercentage": "1.28", + "analysisTime": 78 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_pkra_bug_test_1_logoBlock_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_delay_0_getItBlocknth-child3_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_delay_0_getItBlocknth-child3_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_delay_0_getItBlocknth-child3_0_phone.log.json", + "selector": ".getItBlock:nth-child(3)", + "fileName": "puppet_backstop_features_delay_0_getItBlocknth-child3_0_phone.png", + "label": "delay", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.4108801415302963, + "misMatchPercentage": "1.41", + "analysisTime": 88 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_delay_0_getItBlocknth-child3_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_delay_0_getItBlocknth-child3_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_delay_0_getItBlocknth-child3_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_delay_0_getItBlocknth-child3_1_tablet.log.json", + "selector": ".getItBlock:nth-child(3)", + "fileName": "puppet_backstop_features_delay_0_getItBlocknth-child3_1_tablet.png", + "label": "delay", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.8469414944235087, + "misMatchPercentage": "0.85", + "analysisTime": 200 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_delay_0_getItBlocknth-child3_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_readyEvent_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_readyEvent_0_moneyshot_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_readyEvent_0_moneyshot_0_phone.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_readyEvent_0_moneyshot_0_phone.png", + "label": "readyEvent", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.010670731707317, + "misMatchPercentage": "3.01", + "analysisTime": 253 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_readyEvent_0_moneyshot_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_readyEvent_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_readyEvent_0_moneyshot_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_readyEvent_0_moneyshot_1_tablet.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_readyEvent_0_moneyshot_1_tablet.png", + "label": "readyEvent", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.780072463768116, + "misMatchPercentage": "0.78", + "analysisTime": 216 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_readyEvent_0_moneyshot_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_readyEventTimeout_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_readyEventTimeout_0_moneyshot_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_readyEventTimeout_0_moneyshot_0_phone.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_readyEventTimeout_0_moneyshot_0_phone.png", + "label": "readyEventTimeout", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.6280487804878048, + "misMatchPercentage": "3.63", + "analysisTime": 233 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_readyEventTimeout_0_moneyshot_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_readyEventTimeout_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_readyEventTimeout_0_moneyshot_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_readyEventTimeout_0_moneyshot_1_tablet.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_readyEventTimeout_0_moneyshot_1_tablet.png", + "label": "readyEventTimeout", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.8199275362318841, + "misMatchPercentage": "0.82", + "analysisTime": 286 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_readyEventTimeout_0_moneyshot_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_readySelector_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_readySelector_0_moneyshot_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_readySelector_0_moneyshot_0_phone.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_readySelector_0_moneyshot_0_phone.png", + "label": "readySelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.010670731707317, + "misMatchPercentage": "3.01", + "analysisTime": 57 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_readySelector_0_moneyshot_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_readySelector_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_readySelector_0_moneyshot_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_readySelector_0_moneyshot_1_tablet.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_readySelector_0_moneyshot_1_tablet.png", + "label": "readySelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.780072463768116, + "misMatchPercentage": "0.78", + "analysisTime": 163 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_readySelector_0_moneyshot_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_readySelectorTimeout_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_readySelectorTimeout_0_moneyshot_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_readySelectorTimeout_0_moneyshot_0_phone.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_readySelectorTimeout_0_moneyshot_0_phone.png", + "label": "readySelectorTimeout", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "phone", + "engineErrorMsg": "Waiting for selector `._the_lemur_is_ready_to_see_you_timeout` failed: Waiting failed: 2000ms exceeded", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_readySelectorTimeout_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_readySelectorTimeout_0_moneyshot_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_readySelectorTimeout_0_moneyshot_1_tablet.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_readySelectorTimeout_0_moneyshot_1_tablet.png", + "label": "readySelectorTimeout", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "tablet", + "engineErrorMsg": "Waiting for selector `._the_lemur_is_ready_to_see_you_timeout` failed: Waiting failed: 2000ms exceeded", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_noDelay_0_getItBlocknth-child3_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_noDelay_0_getItBlocknth-child3_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_noDelay_0_getItBlocknth-child3_0_phone.log.json", + "selector": ".getItBlock:nth-child(3)", + "fileName": "puppet_backstop_features_noDelay_0_getItBlocknth-child3_0_phone.png", + "label": "noDelay", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.4108801415302963, + "misMatchPercentage": "1.41", + "analysisTime": 63 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_noDelay_0_getItBlocknth-child3_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_noDelay_0_getItBlocknth-child3_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_noDelay_0_getItBlocknth-child3_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_noDelay_0_getItBlocknth-child3_1_tablet.log.json", + "selector": ".getItBlock:nth-child(3)", + "fileName": "puppet_backstop_features_noDelay_0_getItBlocknth-child3_1_tablet.png", + "label": "noDelay", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?delay", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.8469414944235087, + "misMatchPercentage": "0.85", + "analysisTime": 181 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_noDelay_0_getItBlocknth-child3_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expanded_0_getItBlock_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_expanded_0_getItBlock_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_expanded_0_getItBlock_0_phone.log.json", + "selector": ".getItBlock", + "fileName": "puppet_backstop_features_expanded_0_getItBlock_0_phone.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 8.487737200143215, + "misMatchPercentage": "8.49", + "analysisTime": 34 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_expanded_0_getItBlock_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expanded_1_getItBlock__n1_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_expanded_1_getItBlock__n1_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_expanded_1_getItBlock__n1_0_phone.log.json", + "selector": ".getItBlock.__n1", + "fileName": "puppet_backstop_features_expanded_1_getItBlock__n1_0_phone.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.715016708437761, + "misMatchPercentage": "3.72", + "analysisTime": 55 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_expanded_1_getItBlock__n1_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expanded_2_getItBlock__n2_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_expanded_2_getItBlock__n2_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_expanded_2_getItBlock__n2_0_phone.log.json", + "selector": ".getItBlock.__n2", + "fileName": "puppet_backstop_features_expanded_2_getItBlock__n2_0_phone.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.4108801415302963, + "misMatchPercentage": "1.41", + "analysisTime": 130 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_expanded_2_getItBlock__n2_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expanded_3_getItBlock__n3_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_expanded_3_getItBlock__n3_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_expanded_3_getItBlock__n3_0_phone.log.json", + "selector": ".getItBlock.__n3", + "fileName": "puppet_backstop_features_expanded_3_getItBlock__n3_0_phone.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expanded_0_getItBlock_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_expanded_0_getItBlock_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_expanded_0_getItBlock_1_tablet.log.json", + "selector": ".getItBlock", + "fileName": "puppet_backstop_features_expanded_0_getItBlock_1_tablet.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 5.729701952723536, + "misMatchPercentage": "5.73", + "analysisTime": 296 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_expanded_0_getItBlock_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expanded_1_getItBlock__n1_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_expanded_1_getItBlock__n1_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_expanded_1_getItBlock__n1_1_tablet.log.json", + "selector": ".getItBlock.__n1", + "fileName": "puppet_backstop_features_expanded_1_getItBlock__n1_1_tablet.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 2.195101062007537, + "misMatchPercentage": "2.20", + "analysisTime": 157 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_expanded_1_getItBlock__n1_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expanded_2_getItBlock__n2_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_expanded_2_getItBlock__n2_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_expanded_2_getItBlock__n2_1_tablet.log.json", + "selector": ".getItBlock.__n2", + "fileName": "puppet_backstop_features_expanded_2_getItBlock__n2_1_tablet.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.8469414944235087, + "misMatchPercentage": "0.85", + "analysisTime": 230 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_expanded_2_getItBlock__n2_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expanded_3_getItBlock__n3_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_expanded_3_getItBlock__n3_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_expanded_3_getItBlock__n3_1_tablet.log.json", + "selector": ".getItBlock.__n3", + "fileName": "puppet_backstop_features_expanded_3_getItBlock__n3_1_tablet.png", + "label": "expanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_notExpanded_0_getItBlock_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_notExpanded_0_getItBlock_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_notExpanded_0_getItBlock_0_phone.log.json", + "selector": ".getItBlock", + "fileName": "puppet_backstop_features_notExpanded_0_getItBlock_0_phone.png", + "label": "notExpanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 8.487737200143215, + "misMatchPercentage": "8.49", + "analysisTime": 170 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_notExpanded_0_getItBlock_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_notExpanded_0_getItBlock_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_notExpanded_0_getItBlock_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_notExpanded_0_getItBlock_1_tablet.log.json", + "selector": ".getItBlock", + "fileName": "puppet_backstop_features_notExpanded_0_getItBlock_1_tablet.png", + "label": "notExpanded", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 5.729701952723536, + "misMatchPercentage": "5.73", + "analysisTime": 101 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_notExpanded_0_getItBlock_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expect_0_getItBlock_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_expect_0_getItBlock_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_expect_0_getItBlock_0_phone.log.json", + "selector": ".getItBlock", + "fileName": "puppet_backstop_features_expect_0_getItBlock_0_phone.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 8.487737200143215, + "misMatchPercentage": "8.49", + "analysisTime": 101 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_expect_0_getItBlock_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expect_1_getItBlock__n1_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_expect_1_getItBlock__n1_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_expect_1_getItBlock__n1_0_phone.log.json", + "selector": ".getItBlock.__n1", + "fileName": "puppet_backstop_features_expect_1_getItBlock__n1_0_phone.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.715016708437761, + "misMatchPercentage": "3.72", + "analysisTime": 38 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_expect_1_getItBlock__n1_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expect_2_getItBlock__n2_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_expect_2_getItBlock__n2_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_expect_2_getItBlock__n2_0_phone.log.json", + "selector": ".getItBlock.__n2", + "fileName": "puppet_backstop_features_expect_2_getItBlock__n2_0_phone.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.4108801415302963, + "misMatchPercentage": "1.41", + "analysisTime": 134 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_expect_2_getItBlock__n2_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expect_3_getItBlock__n3_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_expect_3_getItBlock__n3_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_expect_3_getItBlock__n3_0_phone.log.json", + "selector": ".getItBlock.__n3", + "fileName": "puppet_backstop_features_expect_3_getItBlock__n3_0_phone.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expect_0_getItBlock_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_expect_0_getItBlock_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_expect_0_getItBlock_1_tablet.log.json", + "selector": ".getItBlock", + "fileName": "puppet_backstop_features_expect_0_getItBlock_1_tablet.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 5.729701952723536, + "misMatchPercentage": "5.73", + "analysisTime": 294 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_expect_0_getItBlock_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expect_1_getItBlock__n1_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_expect_1_getItBlock__n1_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_expect_1_getItBlock__n1_1_tablet.log.json", + "selector": ".getItBlock.__n1", + "fileName": "puppet_backstop_features_expect_1_getItBlock__n1_1_tablet.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 2.195101062007537, + "misMatchPercentage": "2.20", + "analysisTime": 137 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_expect_1_getItBlock__n1_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expect_2_getItBlock__n2_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_expect_2_getItBlock__n2_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_expect_2_getItBlock__n2_1_tablet.log.json", + "selector": ".getItBlock.__n2", + "fileName": "puppet_backstop_features_expect_2_getItBlock__n2_1_tablet.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.8469414944235087, + "misMatchPercentage": "0.85", + "analysisTime": 159 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_expect_2_getItBlock__n2_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_expect_3_getItBlock__n3_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_expect_3_getItBlock__n3_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_expect_3_getItBlock__n3_1_tablet.log.json", + "selector": ".getItBlock.__n3", + "fileName": "puppet_backstop_features_expect_3_getItBlock__n3_1_tablet.png", + "label": "expect", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 4, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_magicSelectors_0_document_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_magicSelectors_0_document_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_magicSelectors_0_document_0_phone.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_magicSelectors_0_document_0_phone.png", + "label": "magicSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.750635162601626, + "misMatchPercentage": "3.75", + "analysisTime": 174 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_magicSelectors_0_document_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_magicSelectors_1_viewport_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_magicSelectors_1_viewport_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_magicSelectors_1_viewport_0_phone.log.json", + "selector": "viewport", + "fileName": "puppet_backstop_features_magicSelectors_1_viewport_0_phone.png", + "label": "magicSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.8776041666666665, + "misMatchPercentage": "3.88", + "analysisTime": 155 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_magicSelectors_1_viewport_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_magicSelectors_0_document_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_magicSelectors_0_document_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_magicSelectors_0_document_1_tablet.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_magicSelectors_0_document_1_tablet.png", + "label": "magicSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.9487233813980136, + "misMatchPercentage": "1.95", + "analysisTime": 114 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_magicSelectors_0_document_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_magicSelectors_1_viewport_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_magicSelectors_1_viewport_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_magicSelectors_1_viewport_1_tablet.log.json", + "selector": "viewport", + "fileName": "puppet_backstop_features_magicSelectors_1_viewport_1_tablet.png", + "label": "magicSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.7199198404947917, + "misMatchPercentage": "1.72", + "analysisTime": 90 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_magicSelectors_1_viewport_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_hideSelectors_0_document_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_hideSelectors_0_document_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_hideSelectors_0_document_0_phone.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_hideSelectors_0_document_0_phone.png", + "label": "hideSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.5303607723577236, + "misMatchPercentage": "0.53", + "analysisTime": 218 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_hideSelectors_0_document_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_hideSelectors_0_document_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_hideSelectors_0_document_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_hideSelectors_0_document_1_tablet.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_hideSelectors_0_document_1_tablet.png", + "label": "hideSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.25230973071046603, + "misMatchPercentage": "0.25", + "analysisTime": 174 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_hideSelectors_0_document_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_removeSelectors_0_document_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_removeSelectors_0_document_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_removeSelectors_0_document_0_phone.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_removeSelectors_0_document_0_phone.png", + "label": "removeSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.0872395833333333, + "misMatchPercentage": "1.09", + "analysisTime": 136 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_removeSelectors_0_document_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_removeSelectors_0_document_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_removeSelectors_0_document_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_removeSelectors_0_document_1_tablet.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_removeSelectors_0_document_1_tablet.png", + "label": "removeSelectors", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.4300435384114583, + "misMatchPercentage": "0.43", + "analysisTime": 303 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_removeSelectors_0_document_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_notFound_0_monkey_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_notFound_0_monkey_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_notFound_0_monkey_0_phone.log.json", + "selector": ".monkey", + "fileName": "puppet_backstop_features_notFound_0_monkey_0_phone.png", + "label": "notFound", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_notFound_0_monkey_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_notFound_0_monkey_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_notFound_0_monkey_1_tablet.log.json", + "selector": ".monkey", + "fileName": "puppet_backstop_features_notFound_0_monkey_1_tablet.png", + "label": "notFound", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_notVisible_0_noShow_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_notVisible_0_noShow_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_notVisible_0_noShow_0_phone.log.json", + "selector": "#noShow", + "fileName": "puppet_backstop_features_notVisible_0_noShow_0_phone.png", + "label": "notVisible", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_notVisible_0_noShow_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_notVisible_0_noShow_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_notVisible_0_noShow_1_tablet.log.json", + "selector": "#noShow", + "fileName": "puppet_backstop_features_notVisible_0_noShow_1_tablet.png", + "label": "notVisible", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_cookies_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_cookies_0_moneyshot_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_cookies_0_moneyshot_0_phone.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_cookies_0_moneyshot_0_phone.png", + "label": "cookies", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?cookie", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.2806647940074907, + "misMatchPercentage": "3.28", + "analysisTime": 91 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_cookies_0_moneyshot_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_cookies_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_cookies_0_moneyshot_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_cookies_0_moneyshot_1_tablet.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_cookies_0_moneyshot_1_tablet.png", + "label": "cookies", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?cookie", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.2706930693069307, + "misMatchPercentage": "1.27", + "analysisTime": 131 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_cookies_0_moneyshot_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_hover_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_hover_0_moneyshot_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_hover_0_moneyshot_0_phone.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_hover_0_moneyshot_0_phone.png", + "label": "hover", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?click", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.039888211382114, + "misMatchPercentage": "3.04", + "analysisTime": 33 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_hover_0_moneyshot_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_hover_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_hover_0_moneyshot_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_hover_0_moneyshot_1_tablet.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_hover_0_moneyshot_1_tablet.png", + "label": "hover", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?click", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.7996376811594202, + "misMatchPercentage": "0.80", + "analysisTime": 238 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_hover_0_moneyshot_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_click_0_moneyshot_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_click_0_moneyshot_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_click_0_moneyshot_0_phone.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_click_0_moneyshot_0_phone.png", + "label": "click", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?click", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 10.240091463414634, + "misMatchPercentage": "10.24", + "analysisTime": 85 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_click_0_moneyshot_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_click_0_moneyshot_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_click_0_moneyshot_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_click_0_moneyshot_1_tablet.log.json", + "selector": ".moneyshot", + "fileName": "puppet_backstop_features_click_0_moneyshot_1_tablet.png", + "label": "click", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html?click", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 12.13876811594203, + "misMatchPercentage": "12.14", + "analysisTime": 149 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_click_0_moneyshot_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scrollToSelector_0_lemurFace_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_scrollToSelector_0_lemurFace_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_scrollToSelector_0_lemurFace_0_phone.log.json", + "selector": ".lemurFace", + "fileName": "puppet_backstop_features_scrollToSelector_0_lemurFace_0_phone.png", + "label": "scrollToSelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/test/configs/special_cases/scrollToSelector.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0, + "misMatchPercentage": "0.00", + "analysisTime": 35 + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scrollToSelector_0_lemurFace_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_scrollToSelector_0_lemurFace_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_scrollToSelector_0_lemurFace_1_tablet.log.json", + "selector": ".lemurFace", + "fileName": "puppet_backstop_features_scrollToSelector_0_lemurFace_1_tablet.png", + "label": "scrollToSelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/test/configs/special_cases/scrollToSelector.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0, + "misMatchPercentage": "0.00", + "analysisTime": 17 + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scenarioSpecificViewports_0_document_0_Galaxy-S5.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_scenarioSpecificViewports_0_document_0_Galaxy-S5.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_scenarioSpecificViewports_0_document_0_Galaxy-S5.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_scenarioSpecificViewports_0_document_0_Galaxy-S5.png", + "label": "scenarioSpecificViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "Galaxy-S5", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.5775560224089635, + "misMatchPercentage": "3.58", + "analysisTime": 144 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_scenarioSpecificViewports_0_document_0_Galaxy-S5.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scenarioSpecificViewports_1_viewport_0_Galaxy-S5.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_scenarioSpecificViewports_1_viewport_0_Galaxy-S5.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_scenarioSpecificViewports_1_viewport_0_Galaxy-S5.log.json", + "selector": "viewport", + "fileName": "puppet_backstop_features_scenarioSpecificViewports_1_viewport_0_Galaxy-S5.png", + "label": "scenarioSpecificViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "Galaxy-S5", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 4.380642361111111, + "misMatchPercentage": "4.38", + "analysisTime": 264 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_scenarioSpecificViewports_1_viewport_0_Galaxy-S5.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_0_phone.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_0_phone.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_0_phone.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_0_phone.png", + "label": "scenarioSpecificViewports-withEmptyViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "phone", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.750635162601626, + "misMatchPercentage": "3.75", + "analysisTime": 119 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_0_phone.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_1_tablet.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_1_tablet.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_1_tablet.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_1_tablet.png", + "label": "scenarioSpecificViewports-withEmptyViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "tablet", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.9487233813980136, + "misMatchPercentage": "1.95", + "analysisTime": 86 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_1_tablet.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_0_Pixel-2.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_0_Pixel-2.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_0_Pixel-2.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_0_Pixel-2.png", + "label": "scenarioSpecificViewports-withMultipleViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "Pixel-2", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.1105135100525034, + "misMatchPercentage": "3.11", + "analysisTime": 112 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_0_Pixel-2.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_1_Pixel2-XL.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_1_Pixel2-XL.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_1_Pixel2-XL.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_1_Pixel2-XL.png", + "label": "scenarioSpecificViewports-withMultipleViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "Pixel2-XL", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.1105135100525034, + "misMatchPercentage": "3.11", + "analysisTime": 216 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_1_Pixel2-XL.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_2_iPhone-X.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_2_iPhone-X.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_2_iPhone-X.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_2_iPhone-X.png", + "label": "scenarioSpecificViewports-withMultipleViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "iPhone-X", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 3.484741049704553, + "misMatchPercentage": "3.48", + "analysisTime": 204 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_2_iPhone-X.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_3_iPad-Pro.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_3_iPad-Pro.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_3_iPad-Pro.log.json", + "selector": "document", + "fileName": "puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_3_iPad-Pro.png", + "label": "scenarioSpecificViewports-withMultipleViewports", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "iPad-Pro", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 1.8674076912518303, + "misMatchPercentage": "1.87", + "analysisTime": 79 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_3_iPad-Pro.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_0_getItBlock_0_iPad-Pro.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_0_getItBlock_0_iPad-Pro.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_0_getItBlock_0_iPad-Pro.log.json", + "selector": ".getItBlock", + "fileName": "puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_0_getItBlock_0_iPad-Pro.png", + "label": "scenarioSpecificViewports-withExpandSelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "iPad-Pro", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 5.729701952723536, + "misMatchPercentage": "5.73", + "analysisTime": 109 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_0_getItBlock_0_iPad-Pro.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_1_getItBlock__n1_0_iPad-Pro.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_1_getItBlock__n1_0_iPad-Pro.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_1_getItBlock__n1_0_iPad-Pro.log.json", + "selector": ".getItBlock.__n1", + "fileName": "puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_1_getItBlock__n1_0_iPad-Pro.png", + "label": "scenarioSpecificViewports-withExpandSelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "iPad-Pro", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 2.195101062007537, + "misMatchPercentage": "2.20", + "analysisTime": 84 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_1_getItBlock__n1_0_iPad-Pro.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_2_getItBlock__n2_0_iPad-Pro.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_2_getItBlock__n2_0_iPad-Pro.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_2_getItBlock__n2_0_iPad-Pro.log.json", + "selector": ".getItBlock.__n2", + "fileName": "puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_2_getItBlock__n2_0_iPad-Pro.png", + "label": "scenarioSpecificViewports-withExpandSelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "iPad-Pro", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 0.8469414944235087, + "misMatchPercentage": "0.85", + "analysisTime": 130 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_2_getItBlock__n2_0_iPad-Pro.png" + }, + "status": "fail" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_3_getItBlock__n3_0_iPad-Pro.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_3_getItBlock__n3_0_iPad-Pro.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_3_getItBlock__n3_0_iPad-Pro.log.json", + "selector": ".getItBlock.__n3", + "fileName": "puppet_backstop_features_scenarioSpecificViewports-withExpandSelector_3_getItBlock__n3_0_iPad-Pro.png", + "label": "scenarioSpecificViewports-withExpandSelector", + "misMatchThreshold": 0.1, + "url": "https://garris.github.io/BackstopJS/index.html", + "expect": 0, + "viewportLabel": "iPad-Pro", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "misMatchPercentage": "0.00" + } + }, + "status": "pass" + }, + { + "pair": { + "reference": "../bitmaps_reference/puppet_backstop_features_keyPressSelector_0_dividnavbar_0_Desktop.png", + "test": "../bitmaps_test/20240115-015541/puppet_backstop_features_keyPressSelector_0_dividnavbar_0_Desktop.png", + "testLog": "../bitmaps_test/20240115-015541/puppet_backstop_features_keyPressSelector_0_dividnavbar_0_Desktop.log.json", + "selector": "div[id=navbar]", + "fileName": "puppet_backstop_features_keyPressSelector_0_dividnavbar_0_Desktop.png", + "label": "keyPressSelector", + "misMatchThreshold": 5, + "url": "https://garris.github.io/BackstopJS/examples/featureTests/index.html", + "expect": 0, + "viewportLabel": "Desktop", + "diff": { + "isSameDimensions": true, + "dimensionDifference": { + "width": 0, + "height": 0 + }, + "rawMisMatchPercentage": 12.102777777777778, + "misMatchPercentage": "12.10", + "analysisTime": 57 + }, + "diffImage": "../bitmaps_test/20240115-015541/failed_diff_puppet_backstop_features_keyPressSelector_0_dividnavbar_0_Desktop.png" + }, + "status": "fail" + } + ], + "id": "puppet_backstop_features" +} \ No newline at end of file diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_Simple_0_document_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_Simple_0_document_0_phone.png new file mode 100644 index 000000000..c0b7b6b8a Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_Simple_0_document_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_Simple_0_document_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_Simple_0_document_1_tablet.png new file mode 100644 index 000000000..92d13bc1a Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_Simple_0_document_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_click_0_moneyshot_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_click_0_moneyshot_0_phone.png new file mode 100644 index 000000000..b5cfabc87 Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_click_0_moneyshot_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_click_0_moneyshot_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_click_0_moneyshot_1_tablet.png new file mode 100644 index 000000000..4a5a03539 Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_click_0_moneyshot_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_cookies_0_moneyshot_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_cookies_0_moneyshot_0_phone.png new file mode 100644 index 000000000..21cd1c6c2 Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_cookies_0_moneyshot_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_cookies_0_moneyshot_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_cookies_0_moneyshot_1_tablet.png new file mode 100644 index 000000000..4f99eb753 Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_cookies_0_moneyshot_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_delay_0_getItBlocknth-child3_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_delay_0_getItBlocknth-child3_0_phone.png new file mode 100644 index 000000000..dcd18fc9f Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_delay_0_getItBlocknth-child3_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_delay_0_getItBlocknth-child3_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_delay_0_getItBlocknth-child3_1_tablet.png new file mode 100644 index 000000000..af8c496ae Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_delay_0_getItBlocknth-child3_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expanded_0_getItBlock_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expanded_0_getItBlock_0_phone.png new file mode 100644 index 000000000..8d48c5b53 Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expanded_0_getItBlock_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expanded_0_getItBlock_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expanded_0_getItBlock_1_tablet.png new file mode 100644 index 000000000..1ec5f60cf Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expanded_0_getItBlock_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expanded_1_getItBlock__n1_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expanded_1_getItBlock__n1_0_phone.png new file mode 100644 index 000000000..7847e564f Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expanded_1_getItBlock__n1_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expanded_1_getItBlock__n1_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expanded_1_getItBlock__n1_1_tablet.png new file mode 100644 index 000000000..be74bf6de Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expanded_1_getItBlock__n1_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expanded_2_getItBlock__n2_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expanded_2_getItBlock__n2_0_phone.png new file mode 100644 index 000000000..dcd18fc9f Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expanded_2_getItBlock__n2_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expanded_2_getItBlock__n2_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expanded_2_getItBlock__n2_1_tablet.png new file mode 100644 index 000000000..af8c496ae Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expanded_2_getItBlock__n2_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expanded_3_getItBlock__n3_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expanded_3_getItBlock__n3_0_phone.png new file mode 100644 index 000000000..6362e904b Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expanded_3_getItBlock__n3_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expanded_3_getItBlock__n3_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expanded_3_getItBlock__n3_1_tablet.png new file mode 100644 index 000000000..6362e904b Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expanded_3_getItBlock__n3_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expect_0_getItBlock_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expect_0_getItBlock_0_phone.png new file mode 100644 index 000000000..8d48c5b53 Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expect_0_getItBlock_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expect_0_getItBlock_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expect_0_getItBlock_1_tablet.png new file mode 100644 index 000000000..1ec5f60cf Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expect_0_getItBlock_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expect_1_getItBlock__n1_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expect_1_getItBlock__n1_0_phone.png new file mode 100644 index 000000000..7847e564f Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expect_1_getItBlock__n1_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expect_1_getItBlock__n1_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expect_1_getItBlock__n1_1_tablet.png new file mode 100644 index 000000000..be74bf6de Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expect_1_getItBlock__n1_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expect_2_getItBlock__n2_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expect_2_getItBlock__n2_0_phone.png new file mode 100644 index 000000000..dcd18fc9f Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expect_2_getItBlock__n2_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expect_2_getItBlock__n2_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expect_2_getItBlock__n2_1_tablet.png new file mode 100644 index 000000000..af8c496ae Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expect_2_getItBlock__n2_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expect_3_getItBlock__n3_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expect_3_getItBlock__n3_0_phone.png new file mode 100644 index 000000000..6362e904b Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expect_3_getItBlock__n3_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expect_3_getItBlock__n3_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expect_3_getItBlock__n3_1_tablet.png new file mode 100644 index 000000000..6362e904b Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_expect_3_getItBlock__n3_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_hideSelectors_0_document_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_hideSelectors_0_document_0_phone.png new file mode 100644 index 000000000..8d530c182 Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_hideSelectors_0_document_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_hideSelectors_0_document_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_hideSelectors_0_document_1_tablet.png new file mode 100644 index 000000000..0d9b54edd Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_hideSelectors_0_document_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_hover_0_moneyshot_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_hover_0_moneyshot_0_phone.png new file mode 100644 index 000000000..d03fd2483 Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_hover_0_moneyshot_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_hover_0_moneyshot_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_hover_0_moneyshot_1_tablet.png new file mode 100644 index 000000000..54f3517bc Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_hover_0_moneyshot_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_keyPressSelector_0_dividnavbar_0_Desktop.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_keyPressSelector_0_dividnavbar_0_Desktop.png new file mode 100644 index 000000000..48e6a52ba Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_keyPressSelector_0_dividnavbar_0_Desktop.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_magicSelectors_0_document_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_magicSelectors_0_document_0_phone.png new file mode 100644 index 000000000..c0b7b6b8a Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_magicSelectors_0_document_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_magicSelectors_0_document_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_magicSelectors_0_document_1_tablet.png new file mode 100644 index 000000000..92d13bc1a Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_magicSelectors_0_document_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_magicSelectors_1_viewport_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_magicSelectors_1_viewport_0_phone.png new file mode 100644 index 000000000..4b41ff6f8 Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_magicSelectors_1_viewport_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_magicSelectors_1_viewport_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_magicSelectors_1_viewport_1_tablet.png new file mode 100644 index 000000000..0d85148ca Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_magicSelectors_1_viewport_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_noDelay_0_getItBlocknth-child3_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_noDelay_0_getItBlocknth-child3_0_phone.png new file mode 100644 index 000000000..e35d0d025 Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_noDelay_0_getItBlocknth-child3_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_noDelay_0_getItBlocknth-child3_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_noDelay_0_getItBlocknth-child3_1_tablet.png new file mode 100644 index 000000000..654a7324c Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_noDelay_0_getItBlocknth-child3_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_notExpanded_0_getItBlock_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_notExpanded_0_getItBlock_0_phone.png new file mode 100644 index 000000000..8d48c5b53 Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_notExpanded_0_getItBlock_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_notExpanded_0_getItBlock_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_notExpanded_0_getItBlock_1_tablet.png new file mode 100644 index 000000000..1ec5f60cf Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_notExpanded_0_getItBlock_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_notFound_0_monkey_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_notFound_0_monkey_0_phone.png new file mode 100644 index 000000000..f848f7cfd Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_notFound_0_monkey_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_notFound_0_monkey_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_notFound_0_monkey_1_tablet.png new file mode 100644 index 000000000..f848f7cfd Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_notFound_0_monkey_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_notVisible_0_noShow_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_notVisible_0_noShow_0_phone.png new file mode 100644 index 000000000..6362e904b Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_notVisible_0_noShow_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_notVisible_0_noShow_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_notVisible_0_noShow_1_tablet.png new file mode 100644 index 000000000..6362e904b Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_notVisible_0_noShow_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_pkra_bug_test_0_pkratest_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_pkra_bug_test_0_pkratest_0_phone.png new file mode 100644 index 000000000..f848f7cfd Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_pkra_bug_test_0_pkratest_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_pkra_bug_test_0_pkratest_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_pkra_bug_test_0_pkratest_1_tablet.png new file mode 100644 index 000000000..f848f7cfd Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_pkra_bug_test_0_pkratest_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_pkra_bug_test_1_logoBlock_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_pkra_bug_test_1_logoBlock_0_phone.png new file mode 100644 index 000000000..0b735a642 Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_pkra_bug_test_1_logoBlock_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_pkra_bug_test_1_logoBlock_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_pkra_bug_test_1_logoBlock_1_tablet.png new file mode 100644 index 000000000..eb447561a Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_pkra_bug_test_1_logoBlock_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_readyEventTimeout_0_moneyshot_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_readyEventTimeout_0_moneyshot_0_phone.png new file mode 100644 index 000000000..b5cfabc87 Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_readyEventTimeout_0_moneyshot_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_readyEventTimeout_0_moneyshot_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_readyEventTimeout_0_moneyshot_1_tablet.png new file mode 100644 index 000000000..4a5a03539 Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_readyEventTimeout_0_moneyshot_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_readyEvent_0_moneyshot_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_readyEvent_0_moneyshot_0_phone.png new file mode 100644 index 000000000..2e364c7b6 Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_readyEvent_0_moneyshot_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_readyEvent_0_moneyshot_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_readyEvent_0_moneyshot_1_tablet.png new file mode 100644 index 000000000..e3ebdaabc Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_readyEvent_0_moneyshot_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_readySelectorTimeout_0_moneyshot_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_readySelectorTimeout_0_moneyshot_0_phone.png new file mode 100644 index 000000000..25deaa434 Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_readySelectorTimeout_0_moneyshot_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_readySelectorTimeout_0_moneyshot_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_readySelectorTimeout_0_moneyshot_1_tablet.png new file mode 100644 index 000000000..25deaa434 Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_readySelectorTimeout_0_moneyshot_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_readySelector_0_moneyshot_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_readySelector_0_moneyshot_0_phone.png new file mode 100644 index 000000000..2e364c7b6 Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_readySelector_0_moneyshot_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_readySelector_0_moneyshot_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_readySelector_0_moneyshot_1_tablet.png new file mode 100644 index 000000000..e3ebdaabc Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_readySelector_0_moneyshot_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_removeSelectors_0_document_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_removeSelectors_0_document_0_phone.png new file mode 100644 index 000000000..f79d0e32f Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_removeSelectors_0_document_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_removeSelectors_0_document_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_removeSelectors_0_document_1_tablet.png new file mode 100644 index 000000000..c828b87cf Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_removeSelectors_0_document_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_0_phone.png new file mode 100644 index 000000000..c0b7b6b8a Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_1_tablet.png new file mode 100644 index 000000000..92d13bc1a Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withEmptyViewports_0_document_1_tablet.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_0_getItBlock_0_iPad-Pro.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_0_getItBlock_0_iPad-Pro.png new file mode 100644 index 000000000..1ec5f60cf Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_0_getItBlock_0_iPad-Pro.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_1_getItBlock__n1_0_iPad-Pro.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_1_getItBlock__n1_0_iPad-Pro.png new file mode 100644 index 000000000..be74bf6de Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_1_getItBlock__n1_0_iPad-Pro.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_2_getItBlock__n2_0_iPad-Pro.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_2_getItBlock__n2_0_iPad-Pro.png new file mode 100644 index 000000000..af8c496ae Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_2_getItBlock__n2_0_iPad-Pro.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_3_getItBlock__n3_0_iPad-Pro.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_3_getItBlock__n3_0_iPad-Pro.png new file mode 100644 index 000000000..6362e904b Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withExpandSelector_3_getItBlock__n3_0_iPad-Pro.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_0_Pixel-2.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_0_Pixel-2.png new file mode 100644 index 000000000..deb6698ad Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_0_Pixel-2.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_1_Pixel2-XL.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_1_Pixel2-XL.png new file mode 100644 index 000000000..deb6698ad Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_1_Pixel2-XL.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_2_iPhone-X.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_2_iPhone-X.png new file mode 100644 index 000000000..ecd983002 Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_2_iPhone-X.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_3_iPad-Pro.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_3_iPad-Pro.png new file mode 100644 index 000000000..373494c6f Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports-withMultipleViewports_0_document_3_iPad-Pro.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports_0_document_0_Galaxy-S5.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports_0_document_0_Galaxy-S5.png new file mode 100644 index 000000000..49a058d36 Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports_0_document_0_Galaxy-S5.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports_1_viewport_0_Galaxy-S5.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports_1_viewport_0_Galaxy-S5.png new file mode 100644 index 000000000..22035b59a Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scenarioSpecificViewports_1_viewport_0_Galaxy-S5.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scrollToSelector_0_lemurFace_0_phone.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scrollToSelector_0_lemurFace_0_phone.png new file mode 100644 index 000000000..51a75dd1a Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scrollToSelector_0_lemurFace_0_phone.png differ diff --git a/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scrollToSelector_0_lemurFace_1_tablet.png b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scrollToSelector_0_lemurFace_1_tablet.png new file mode 100644 index 000000000..51a75dd1a Binary files /dev/null and b/test/configs/backstop_data/bitmaps_reference/playwright_chromium_backstop_features_scrollToSelector_0_lemurFace_1_tablet.png differ