X-Git-Url: https://git.mdrn.pl/librarian.git/blobdiff_plain/6ec15224f3482ea18d339df7e2acc160d799be43..97987728a2c8ca9d3527d9ef34b5d84d8f28ead7:/tests/test_html.py?ds=sidebyside diff --git a/tests/test_html.py b/tests/test_html.py index 8d3aede..a3d042d 100644 --- a/tests/test_html.py +++ b/tests/test_html.py @@ -1,43 +1,58 @@ # -*- 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 Nowoczesna Polska. See NOTICE for more information. # -from librarian import html, NoDublinCore +from __future__ import unicode_literals + +import io +from unittest import TestCase +from librarian import NoDublinCore +from librarian.builders import builders +from librarian.document import WLDocument +from librarian.parser import WLDocument as LegacyWLDocument from nose.tools import * -from utils import get_fixture, remove_output_file +from .utils import get_fixture + + +class TransformTest(TestCase): + maxDiff = None + + def test_transform_legacy(self): + expected_output_file_path = get_fixture('text', 'asnyk_miedzy_nami_expected.legacy.html') -def teardown_transform(): - remove_output_file('text', 'asnyk_miedzy_nami.html') + html = LegacyWLDocument.from_file( + get_fixture('text', 'miedzy-nami-nic-nie-bylo.xml') + ).as_html().get_bytes().decode('utf-8') + self.assertEqual(html, io.open(expected_output_file_path).read()) -@with_setup(None, teardown_transform) -def test_transform(): - output_file_path = get_fixture('text', 'asnyk_miedzy_nami.html') - expected_output_file_path = get_fixture('text', 'asnyk_miedzy_nami_expected.html') - - html.transform( - get_fixture('text', 'asnyk_miedzy_nami.xml'), - output_file_path, - ) - - assert_equal(file(output_file_path).read(), file(expected_output_file_path).read()) + 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') + + self.assertEqual(html, io.open(expected_output_file_path).read()) -@with_setup(None, teardown_transform) @raises(NoDublinCore) def test_no_dublincore(): - html.transform( - get_fixture('text', 'asnyk_miedzy_nami_nodc.xml'), - get_fixture('text', 'asnyk_miedzy_nami_nodc.html'), - ) + LegacyWLDocument.from_file( + get_fixture('text', 'asnyk_miedzy_nami_nodc.xml') + ).as_html() -@with_setup(None, teardown_transform) def test_passing_parse_dublincore_to_transform(): """Passing parse_dublincore=False to transform omits DublinCore parsing.""" - html.transform( - get_fixture('text', 'asnyk_miedzy_nami_nodc.xml'), - get_fixture('text', 'asnyk_miedzy_nami.html'), - parse_dublincore=False, - ) + LegacyWLDocument.from_file( + get_fixture('text', 'asnyk_miedzy_nami_nodc.xml'), + parse_dublincore=False, + ).as_html() + + +def test_empty(): + assert not LegacyWLDocument.from_bytes( + b'', + parse_dublincore=False, + ).as_html()