# SSR expectations against the fixture SEO API (testing/fixtures).
# Grammar: STATUS PATH [contains=TEXT] [notcontains=TEXT] [type=PREFIX] [header=NAME: TEXT]
# report PATH
# The playground pages set their own head; the answer's values win, an
# empty value leaves the page's own tag, and a page the API does not know
# keeps its own head.
# An ok answer: every value from the answer, none of the page's.
200 / contains=
Home | Acme notcontains=Own home
200 / contains= notcontains=Own home description
200 / contains= notcontains=Own home og
200 / contains=
200 / contains=
200 / header=X-Robots-Tag: index, follow
200 /about contains=About us | Acme notcontains=Own about
200 /about contains= notcontains=own-canonical.test
200 /about contains= notcontains=content="noindex"
200 /about contains=
# Empty values keep the page's own tags; the template still applies.
200 /partial contains=Partial own | Playground
200 /partial contains=
200 /partial contains=
# Not known to the API: the page's own head, no robots added.
200 /plain contains=Plain page | Playground notcontains=name="robots"
# Staging: noindex wins over the page's index, also on a page the API does not know.
200 /staging contains= notcontains=index, follow
200 /staging header=X-Robots-Tag: noindex, nofollow
# Redirects: the site's own origin becomes a path, another host stays absolute.
301 /old-path header=Location: /about
302 /old-temp?ref=1 header=Location: /about?x=1
301 /moved header=Location: https://other.test/x
# 410 wins over the route, also over a page that would render.
410 /gone-path
410 /posts/gone-post
200 /posts/known contains=Known post | Playground
# 404s, from an unknown route and from a page, are reported to the log.
404 /missing-page
404 /posts/nope
report /missing-page
report /posts/nope
# Verification files at the root; anything else falls through.
200 /google0123.html contains=google-site-verification: google0123.html header=X-Content-Type-Options: nosniff
404 /unknown0123.html
404 /robots.txt