NAME

run-bookmark-browser-smoke.pl - fast browser-backed smoke runner for saved bookmark files

SYNOPSIS

integration/browser/run-bookmark-browser-smoke.pl

integration/browser/run-bookmark-browser-smoke.pl \
  --bookmark-file ~/.developer-dashboard/dashboards/test \
  --expect-page-fragment "set_chain_value(foo,'bar','/ajax/foobar?type=text')" \
  --expect-ajax-path /ajax/foobar?type=text \
  --expect-ajax-body 123 \
  --expect-dom-fragment '<span class="display">123</span>'

DESCRIPTION

This host-side smoke runner creates an isolated temporary dashboard runtime, starts the checkout-local web app, loads one saved bookmark page through a real headless browser, and verifies optional page, ajax, and final DOM fragments.

With no --bookmark-file, it runs the built-in legacy jQuery/Ajax bookmark sample that checks the exact foo.bar binding flow used by the bookmark regressions fixed in the 1.06 and 1.07 releases.

PURPOSE

Integration helper script in the Developer Dashboard codebase. This file runs browser-driven bookmark smoke checks against a live Developer Dashboard web instance. Open this file when you need the implementation, regression coverage, or runtime entrypoint for that responsibility rather than guessing which part of the tree owns it.

WHY IT EXISTS

It exists to make a repeatable host-or-container integration workflow explicit instead of burying release verification steps in ad-hoc shell history.

WHEN TO USE

Use this file when you are rerunning the documented integration workflow for its environment or debugging a release/install problem in that path.

HOW TO USE

Run the script as part of the documented integration plan for its environment. Treat failures here as release blockers, because these scripts represent the supported rerun path.

WHAT USES IT

It is used by maintainers running the documented install/runtime verification workflow for that environment, and by tests that validate the checked-in integration assets.

EXAMPLES

perl integration/browser/run-bookmark-browser-smoke.pl

Run the script from the documented integration environment so it can find the expected tarball, browser, or container prerequisites.