X-Git-Url: https://git.mdrn.pl/librarian.git/blobdiff_plain/4e329824f40367945de11d3647396859092f5c2c..4b0833f222da430d31356b6f065e56073b849d0f:/tests/test_html.py diff --git a/tests/test_html.py b/tests/test_html.py index d77d8fe..1d698fd 100644 --- a/tests/test_html.py +++ b/tests/test_html.py @@ -1,43 +1,55 @@ -# -*- coding: utf-8 -*- -# # This file is part of Librarian, licensed under GNU Affero GPLv3 or later. -# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information. +# Copyright © Fundacja Wolne Lektury. See NOTICE for more information. # -from __future__ import unicode_literals - +import re +from unittest import TestCase from librarian import NoDublinCore -from librarian.parser import WLDocument -from nose.tools import * +from librarian.builders import builders +from librarian.document import WLDocument +from librarian.parser import WLDocument as LegacyWLDocument from .utils import get_fixture -def test_transform(): - expected_output_file_path = get_fixture('text', 'asnyk_miedzy_nami_expected.html') - - html = WLDocument.from_file( - get_fixture('text', 'miedzy-nami-nic-nie-bylo.xml') - ).as_html().get_bytes() - - assert_equal(html, open(expected_output_file_path, 'rb').read()) - - -@raises(NoDublinCore) -def test_no_dublincore(): - WLDocument.from_file( - get_fixture('text', 'asnyk_miedzy_nami_nodc.xml') - ).as_html() +class TransformTest(TestCase): + maxDiff = None + def test_transform_legacy(self): + expected_output_file_path = get_fixture('text', 'asnyk_miedzy_nami_expected.legacy.html') -def test_passing_parse_dublincore_to_transform(): - """Passing parse_dublincore=False to transform omits DublinCore parsing.""" - WLDocument.from_file( + html = LegacyWLDocument.from_file( + get_fixture('text', 'miedzy-nami-nic-nie-bylo.xml') + ).as_html().get_bytes().decode('utf-8') + + html = re.sub(r'idm\d+', 'idmNNN', html) + with open(expected_output_file_path) as f: + self.assertEqual(f.read(), html) + + def test_transform(self): + expected_output_file_path = get_fixture('text', 'asnyk_miedzy_nami_expected.html') + html = WLDocument( + filename=get_fixture('text', 'miedzy-nami-nic-nie-bylo.xml') + ).build(builders['html']).get_bytes().decode('utf-8') + + with open(expected_output_file_path) as f: + self.assertEqual(html, f.read()) + + def test_no_dublincore(self): + with self.assertRaises(NoDublinCore): + LegacyWLDocument.from_file( + get_fixture('text', 'asnyk_miedzy_nami_nodc.xml') + ).as_html() + + def test_passing_parse_dublincore_to_transform(self): + """Passing parse_dublincore=False to transform omits DublinCore parsing.""" + LegacyWLDocument.from_file( get_fixture('text', 'asnyk_miedzy_nami_nodc.xml'), parse_dublincore=False, ).as_html() - -def test_empty(): - assert not WLDocument.from_bytes( - b'', - parse_dublincore=False, - ).as_html() + def test_empty(self): + self.assertIsNone( + LegacyWLDocument.from_bytes( + b'', + parse_dublincore=False, + ).as_html() + )