Page Menu
Home
c4science
Search
Configure Global Search
Log In
Files
F62459604
test_page.py
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Mon, May 13, 08:46
Size
3 KB
Mime Type
text/x-python
Expires
Wed, May 15, 08:46 (2 d)
Engine
blob
Format
Raw Data
Handle
17649350
Attached To
rNIETZSCHEPYTHON nietzsche-python
test_page.py
View Options
import
unittest
from
os
import
sep
,
path
from
os.path
import
isdir
,
dirname
,
basename
import
lxml.etree
as
ET
import
sys
dir_changed
=
False
if
not
isdir
(
'datatypes'
):
sys
.
path
.
append
(
dirname
(
sys
.
path
[
0
]))
dir_changed
=
True
from
datatypes.page
import
Page
from
datatypes.word
import
Word
from
datatypes.lineNumber
import
LineNumber
class
TestPage
(
unittest
.
TestCase
):
def
setUp
(
self
):
DATADIR
=
dirname
(
__file__
)
+
sep
+
'test_data'
if
not
isdir
(
DATADIR
):
DATADIR
=
dirname
(
dirname
(
__file__
))
+
sep
+
'test_data'
self
.
test_file
=
DATADIR
+
sep
+
'test.xml'
self
.
test_svg_file
=
DATADIR
+
sep
+
'test421.svg'
def
test_Page
(
self
):
page
=
Page
(
xml_source_file
=
self
.
test_file
,
svg_file
=
self
.
test_svg_file
)
self
.
assertEqual
(
page
.
title
,
'Mp XIV 1'
)
self
.
assertEqual
(
page
.
number
,
'421'
)
self
.
assertEqual
(
len
(
page
.
sonderzeichen_list
),
2
)
self
.
assertEqual
(
'st21'
in
page
.
sonderzeichen_list
,
True
)
self
.
assertEqual
(
'st23'
in
page
.
sonderzeichen_list
,
True
)
self
.
assertEqual
(
page
.
style_dict
[
'st0'
][
'fill'
],
'#F8F9F8'
)
self
.
assertEqual
(
page
.
width
,
493.23
)
def
test_get_biggest_fontSize4styles
(
self
):
page
=
Page
(
xml_source_file
=
self
.
test_file
)
style_set
=
{
'st12'
,
'st2'
,
'st14'
,
'st13'
}
self
.
assertEqual
(
page
.
get_biggest_fontSize4styles
(
style_set
=
style_set
),
10
)
def
test_get_words
(
self
):
page
=
Page
(
xml_source_file
=
self
.
test_file
)
words
=
page
.
words
self
.
assertEqual
(
len
(
words
),
438
)
self
.
assertEqual
(
words
[
0
]
.
text
,
'$'
)
self
.
assertEqual
(
words
[
437
]
.
text
,
'mußte!'
)
def
test_init_words
(
self
):
page
=
Page
(
xml_source_file
=
self
.
test_file
)
words
=
page
.
words
""" word insertions are not tested for the moment!!
self.assertEqual(words[31].is_before_inserted_words, True)
self.assertEqual(words[31].word_insertion_mark.id, 0)
self.assertEqual(words[20].is_head_of_inserted_words, True)
self.assertEqual(words[25].is_tail_of_inserted_words, True)
for i in range(20, 25):
self.assertEqual(words[i].word_insertion_mark is not None, True)
"""
def
test_init_line_numbers
(
self
):
page
=
Page
(
xml_source_file
=
self
.
test_file
)
line_numbers
=
[
LineNumber
(
id
=
2
,
top
=
20
,
bottom
=
40
),
LineNumber
(
id
=
4
,
top
=
50
,
bottom
=
60
),
LineNumber
(
id
=
6
,
top
=
70
,
bottom
=
90
)
]
page
.
init_line_numbers
(
line_numbers
,
122.345
)
self
.
assertEqual
(
len
(
page
.
line_numbers
),
7
)
self
.
assertEqual
(
page
.
line_numbers
[
0
]
.
id
,
1
)
self
.
assertEqual
(
page
.
line_numbers
[
6
]
.
id
,
7
)
self
.
assertEqual
(
page
.
line_numbers
[
6
]
.
top
,
91
)
self
.
assertEqual
(
page
.
line_numbers
[
6
]
.
bottom
,
122.345
)
self
.
assertEqual
(
page
.
get_line_number
(
122
),
7
)
self
.
assertEqual
(
page
.
get_line_number
(
92
),
7
)
self
.
assertEqual
(
page
.
get_line_number
(
22
),
2
)
def
test_get_line_number
(
self
):
page
=
Page
(
xml_source_file
=
self
.
test_file
)
self
.
assertEqual
(
page
.
get_line_number
(
(
page
.
words
[
0
]
.
transkription_positions
[
0
]
.
bottom
+
page
.
words
[
0
]
.
transkription_positions
[
0
]
.
top
)
/
2
),
1
)
self
.
assertEqual
(
page
.
get_line_number
(
(
page
.
words
[
27
]
.
transkription_positions
[
0
]
.
bottom
+
page
.
words
[
27
]
.
transkription_positions
[
0
]
.
top
)
/
2
),
2
)
self
.
assertEqual
(
page
.
get_line_number
(
(
page
.
words
[
105
]
.
transkription_positions
[
0
]
.
bottom
+
page
.
words
[
105
]
.
transkription_positions
[
0
]
.
top
)
/
2
),
7
)
def
test_get_word_insertion
(
self
):
page
=
Page
(
self
.
test_file
)
insertions
=
page
.
word_insertion_marks
self
.
assertEqual
(
len
(
insertions
),
8
)
#for insertion in insertions:
# self.assertEqual(insertion.inserted_words[0].is_head_of_inserted_words, True)
def
test_get_semanticAndDataDictionaries
(
self
):
page
=
Page
(
xml_source_file
=
self
.
test_file
)
#print(page.get_data_dictionary())
#self.assertEqual(page.get_data_dictionary()['body'].get('svg_image').get('file_name'), page.svg_file)
if
__name__
==
"__main__"
:
unittest
.
main
()
Event Timeline
Log In to Comment