Page MenuHomec4science

test_convert_wordPositions.py
No OneTemporary

File Metadata

Created
Mon, May 13, 00:59

test_convert_wordPositions.py

import unittest
from os import sep, path, remove
import lxml.etree as ET
import lxml.html
import sys
sys.path.append('svgscripts')
import convert_wordPositions
from convert_wordPositions import Converter, SVGConverter, HTMLConverter, JSONConverter
from datatypes.page import Page
from datatypes.page_creator import PageCreator
from datatypes.transkription_position import TranskriptionPosition
class TestConverter(unittest.TestCase):
def setUp(self):
DATADIR = path.dirname(__file__) + sep + 'test_data'
self.test_file = DATADIR + sep + 'test.xml'
self.test_svg_file = DATADIR + sep + 'test421.svg'
self.outputfile_txt = 'test.txt'
self.outputfile_html = 'test.html'
self.outputfile_svg = 'test.svg'
self.outputfile_json = 'test.json'
def test_main(self):
argv = ['-t', '-s', self.test_svg_file, self.test_file]
self.assertEqual(convert_wordPositions.main(argv), 0)
argv = ['-t', '-s', self.test_svg_file, '-o', self.outputfile_txt, self.test_file]
self.assertEqual(convert_wordPositions.main(argv), 0)
self.assertEqual(path.isfile(self.outputfile_txt), True)
argv = ['-t', '-s', self.test_svg_file, '-o', self.outputfile_html, self.test_file]
self.assertEqual(convert_wordPositions.main(argv), 0)
self.assertEqual(path.isfile(self.outputfile_html), True)
html_tree = lxml.html.parse(self.outputfile_html)
self.assertEqual(html_tree.getroot().tag, 'html')
argv = ['-t', '-s', self.test_svg_file, '-o', self.outputfile_svg, self.test_file]
self.assertEqual(convert_wordPositions.main(argv), 0)
self.assertEqual(path.isfile(self.outputfile_svg), True)
svg_tree = ET.parse(self.outputfile_svg)
self.assertEqual(svg_tree.getroot().tag, '{http://www.w3.org/2000/svg}svg')
argv = ['-t', '-k', 'number', '-o', self.outputfile_json, self.test_file]
self.assertEqual(convert_wordPositions.main(argv), 0)
def test_create_converter(self):
page = PageCreator(self.test_file, svg_file=self.test_svg_file)
converter = Converter.CREATE_CONVERTER(page, False, 'SVG')
self.assertEqual(isinstance(converter, SVGConverter), True)
converter = Converter.CREATE_CONVERTER(page, False, 'HTML')
self.assertEqual(isinstance(converter, HTMLConverter), True)
converter = Converter.CREATE_CONVERTER(page, False, 'JSON')
self.assertEqual(isinstance(converter, JSONConverter), True)
converter = Converter.CREATE_CONVERTER(page, False)
self.assertEqual(isinstance(converter, Converter), True)
def test_get_transkription_positions(self):
tp = [ TranskriptionPosition(), TranskriptionPosition(), TranskriptionPosition() ]
page = PageCreator(self.test_file, svg_file=self.test_svg_file)
converter = Converter.CREATE_CONVERTER(page, False, 'SVG')
converter._get_transkription_positions(tp, stage_version='1+')
def tearDown(self):
bool(path.isfile(self.outputfile_txt)) and remove(self.outputfile_txt)
bool(path.isfile(self.outputfile_html)) and remove(self.outputfile_html)
bool(path.isfile(self.outputfile_svg)) and remove(self.outputfile_svg)
if __name__ == "__main__":
unittest.main()

Event Timeline