# SSR smoke of the playground (one MenuNav code="main", one code="missing"
# with a fallback slot) against testing/fixtures. Run: pnpm build:playground
# && pnpm smoke:ssr. Vue's SSR markers (<!--[-->) sit around slot content.
200 / contains=<nav class="menu-nav nav-main" aria-label="Main menu">
200 /about contains=<a href="/" class="menu-nav__link"><!--[-->Home<!--]--></a>
200 / contains=<a href="/about" class="menu-nav__link"><!--[-->About<!--]--></a>
200 / contains=<span class="menu-nav__sr">Show submenu: About</span>
200 / contains=<a href="/first-topic" class="menu-nav__link"><!--[-->First topic<!--]--></a>
200 / contains=<li class="menu-nav__divider" aria-hidden="true"></li>
# The parent of a list type with the placeholder URL "#" is one disclosure button.
200 / contains=class="menu-nav__link menu-nav__subtoggle" aria-expanded="false"
# javascript: never reaches an href; it renders as text.
200 / notcontains=href="javascript:
200 / contains=<span class="menu-nav__text"><!--[-->Unsafe topic<!--]--></span>
200 / contains=target="_blank" rel="noopener noreferrer"
200 / contains=<span class="menu-nav__sr">Open menu</span>
# The active link and the trail of its ancestors.
200 /about contains=<a href="/about" class="menu-nav__link menu-nav__link--active" aria-current="page">
200 /about/team contains=menu-nav__item--parent menu-nav__item--trail
200 /about/team/ contains=<a href="/about/team" class="menu-nav__link menu-nav__link--active" aria-current="page">
200 /?x=1 contains=<a href="/" class="menu-nav__link menu-nav__link--active" aria-current="page">
# A missing menu renders its fallback, never an empty nav.
200 / contains=<p class="playground-fallback">No menu</p>
200 / notcontains=aria-label="missing"
