2020-03-07 14:06:57 -06:00
|
|
|
"""Test page views and helper methods."""
|
2020-03-07 15:39:12 -06:00
|
|
|
import re
|
|
|
|
|
2020-03-15 18:52:49 -05:00
|
|
|
from incorporealcms.pages import resolve_page_file
|
2020-03-07 14:06:57 -06:00
|
|
|
|
|
|
|
|
2020-03-15 18:52:49 -05:00
|
|
|
def test_resolve_page_file_dir_to_index():
|
|
|
|
assert resolve_page_file('foo/') == 'pages/foo/index.md'
|
2020-03-07 14:06:57 -06:00
|
|
|
|
|
|
|
|
2020-03-15 18:52:49 -05:00
|
|
|
def test_resolve_page_file_subdir_to_index():
|
|
|
|
assert resolve_page_file('foo/bar/') == 'pages/foo/bar/index.md'
|
2020-03-07 14:06:57 -06:00
|
|
|
|
|
|
|
|
2020-03-15 18:52:49 -05:00
|
|
|
def test_resolve_page_file_other_requests_fine():
|
|
|
|
assert resolve_page_file('foo/baz') == 'pages/foo/baz.md'
|
2020-03-07 14:06:57 -06:00
|
|
|
|
|
|
|
|
|
|
|
def test_page_that_exists(client):
|
|
|
|
response = client.get('/')
|
|
|
|
assert response.status_code == 200
|
|
|
|
assert b'<h1>test index</h1>' in response.data
|
|
|
|
|
|
|
|
|
|
|
|
def test_page_that_doesnt_exist(client):
|
|
|
|
response = client.get('/ohuesthaoeusth')
|
|
|
|
assert response.status_code == 404
|
|
|
|
|
|
|
|
|
|
|
|
def test_page_with_title_metadata(client):
|
|
|
|
response = client.get('/')
|
|
|
|
assert response.status_code == 200
|
|
|
|
assert b'<title>Index - incorporeal.org</title>' in response.data
|
|
|
|
|
|
|
|
|
|
|
|
def test_page_without_title_metadata(client):
|
|
|
|
response = client.get('/no-title')
|
|
|
|
assert response.status_code == 200
|
|
|
|
assert b'<title>incorporeal.org</title>' in response.data
|
|
|
|
assert b'<h1>this page doesn\'t have a title!</h1>' in response.data
|
2020-03-07 15:39:12 -06:00
|
|
|
|
|
|
|
|
|
|
|
def test_page_has_modified_timestamp(client):
|
|
|
|
response = client.get('/')
|
|
|
|
assert response.status_code == 200
|
|
|
|
assert re.search(r'Last modified: ....-..-.. ..:..:.. ...', response.data.decode()) is not None
|