Page MenuHomec4science

test_transformSVG2TranskriptionField.py
No OneTemporary

File Metadata

Created
Mon, Jun 10, 15:19

test_transformSVG2TranskriptionField.py

import unittest
import xml.etree.ElementTree as ET
from xml.parsers.expat import ExpatError
import os
from os import sep, path
from os.path import isfile, isdir, dirname
import sys
sys.path.append('svgscripts')
from datatypes.transkriptionField import TranskriptionField
def createEmptySVGFile():
""" Creates an empty file and returns the name of this file.
:return: (str) file name
"""
empty_file = 'empty.svg'
if not bool(os.path.exists(empty_file)):
root = ET.Element('svg')
ET.SubElement(root, 'g')
et = ET.ElementTree(root)
et.write(empty_file)
return empty_file
def deleteFile(file_name):
"""Deletes file.
"""
bool(os.path.exists(file_name)) and os.remove(file_name)
class TestTF(unittest.TestCase):
def setUp(self):
DATADIR = dirname(__file__) + sep + 'test_data'
self.test_file = DATADIR + sep + 'test_ai.svg'
self.test_tr = TranskriptionField(self.test_file)
self.empty_file = createEmptySVGFile()
self.svg_test_file = 'python_test.svg'
self.test_empty_file = DATADIR + sep + 'my_empty_test.svg'
self.verso_svg = DATADIR + sep + 'W_I_8_neu_125-01.svg'
self.recto_svg = DATADIR + sep + 'N_VII_1_xp5_4_page6.svg'
def test_init_tf(self):
""" Tests init function of transformSVG2TranskriptionField.TranskriptionField.
"""
self.assertEqual(self.test_tr.transkription_field_found(), True)
with self.assertRaises(ExpatError):
TranskriptionField(self.test_empty_file)
def test_is_shrunk(self):
self.assertEqual(self.test_tr.is_shrunk(), False)
self.test_tr.shrink_svg_to_transkription_field(self.svg_test_file)
test_tr = TranskriptionField(self.svg_test_file)
self.assertEqual(test_tr.is_shrunk(), True)
def test_getWidth_Height(self):
self.assertEqual(self.test_tr.getWidth(), 835.7)
self.assertEqual(self.test_tr.getHeight(), 1161.7)
def test_init_with_empty_file(self):
"""Tests init function of transformSVG2TranskriptionField.TranskriptionField with empty svg file.
"""
with self.assertRaises(Exception):
TranskriptionField(self.empty_file)
def test_tf_dimensions(self):
"""Tests dimensions of transformSVG2TranskriptionField.TranskriptionField.
"""
self.assertEqual(self.test_tr.width, 493.2)
self.assertEqual(self.test_tr.height, 623.6999999999999)
self.assertEqual(self.test_tr.xmin, 190.7)
self.assertEqual(self.test_tr.ymin, 74.9)
def test_tf_shrink_svg_to_transkription_field(self):
"""Tests transformSVG2TranskriptionField.shrink_svg_to_transkription_field.
"""
self.assertEqual(self.test_tr.shrink_svg_to_transkription_field(self.svg_test_file), 0)
deleteFile(self.svg_test_file)
def test_tf_shrink_svg_to_transkription_field(self):
"""Tests transformSVG2TranskriptionField.shrink_svg_to_transkription_field with a file that has already been shrunk.
"""
self.test_tr.shrink_svg_to_transkription_field(self.svg_test_file)
test_tr = TranskriptionField(self.svg_test_file)
self.assertEqual(test_tr.shrink_svg_to_transkription_field(), 1)
test_tr = TranskriptionField(self.svg_test_file)
self.assertEqual(test_tr.transkription_field_found(), False)
deleteFile(self.svg_test_file)
def test_is_page_verso(self):
tf = TranskriptionField(self.verso_svg)
self.assertEqual(tf.is_page_verso(), True)
tf = TranskriptionField(self.recto_svg)
self.assertEqual(tf.is_page_verso(), False)
def test_add_line_number_area_width(self):
tf = TranskriptionField(self.verso_svg)
tf.add_line_number_area_width(tf.xmin)
self.assertEqual(tf.line_number_area_width, 0.0)
tf = TranskriptionField(self.recto_svg)
tf.add_line_number_area_width(tf.xmax)
self.assertEqual(tf.line_number_area_width, 0.0)
def tearDown(self):
deleteFile(self.empty_file)
if __name__ == "__main__":
unittest.main()

Event Timeline