Files
tildes/tildes/tests/webtests/test_w3_validator.py
Andrew Shu 87dce83f26 Install html5validator, validate HTML in tests
Installs the Nu Html Checker and starts using it to validate the home
page's HTML: https://validator.github.io/validator/

Also includes fixes to some lists that were nested in an invalid way.
2020-08-02 19:16:52 -06:00

23 lines
680 B
Python

# Copyright (c) 2020 Tildes contributors <code@tildes.net>
# SPDX-License-Identifier: AGPL-3.0-or-later
import subprocess
def test_homepage_html_loggedout(webtest_loggedout):
"""Validate HTML5 on the Tildes homepage, logged out."""
homepage = webtest_loggedout.get("/")
_run_html5validator(homepage.body)
def test_homepage_html_loggedin(webtest):
"""Validate HTML5 on the Tildes homepage, logged in."""
homepage = webtest.get("/")
_run_html5validator(homepage.body)
def _run_html5validator(html):
"""Raises CalledProcessError on validation error."""
result = subprocess.run(["html5validator", "-"], input=html)
result.check_returncode()