This repository has been archived on 2020-09-29. You can view files and clone it, but cannot push or open issues/pull-requests.
flatfilecms/tests/test_pages.py

57 lines
1.4 KiB
Python

import pytest
@pytest.fixture
def current_directory():
from pathlib import Path
return Path(__file__).parent
@pytest.fixture
def pages(current_directory):
from flatfilecms.resources import Root
return Root(
str(current_directory / 'pages'),
str(current_directory / 'data'))
@pytest.fixture
def request():
from pyramid.testing import DummyRequest
return DummyRequest()
@pytest.fixture
def config(current_directory):
from pyramid.testing import testConfig
with testConfig() as config:
config.include('pyramid_jinja2')
yield config
def test_loading(pages):
assert 'index' in pages
def test_loading_markdown(pages):
assert pages['index'].page['title'] == 'Заглушка для тестов БД'
def test_generating_markdown(pages, request, config):
from flatfilecms.views.pages import PagesView
view = PagesView(pages['index'], request)
assert view.process_yaml().text == 'Hello World!'
def test_view(pages, request, config):
from flatfilecms.views.pages import PagesView
view = PagesView(pages['view'], request)
assert view.process_yaml().text == 'Hello World! View1'
def test_views(pages, request, config):
from flatfilecms.views.pages import PagesView
view = PagesView(pages['views'], request)
assert view.process_yaml().text == \
'Hello World! View1 View2 View3(a:1, b:2)'