forked from openlp/openlp
More Service item tests
This commit is contained in:
parent
40ac589470
commit
d4db88d2a4
@ -629,10 +629,10 @@ class ServiceItem(object):
|
|||||||
if self.is_image() and not os.path.exists((frame[u'path'])):
|
if self.is_image() and not os.path.exists((frame[u'path'])):
|
||||||
self.is_valid = False
|
self.is_valid = False
|
||||||
elif self.is_command():
|
elif self.is_command():
|
||||||
file = os.path.join(frame[u'path'],frame[u'title'])
|
file_name = os.path.join(frame[u'path'], frame[u'title'])
|
||||||
if not os.path.exists(file):
|
if not os.path.exists(file_name):
|
||||||
self.is_valid = False
|
self.is_valid = False
|
||||||
if suffix_list and not self.is_text():
|
if suffix_list and not self.is_text():
|
||||||
type = frame[u'title'].split(u'.')[-1]
|
file_suffix = frame[u'title'].split(u'.')[-1]
|
||||||
if type.lower() not in suffix_list:
|
if file_suffix.lower() not in suffix_list:
|
||||||
self.is_valid = False
|
self.is_valid = False
|
||||||
|
@ -474,8 +474,7 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
Name of the theme to load from file
|
Name of the theme to load from file
|
||||||
"""
|
"""
|
||||||
log.debug(u'getthemedata for theme %s', theme_name)
|
log.debug(u'getthemedata for theme %s', theme_name)
|
||||||
xml_file = os.path.join(self.path, unicode(theme_name),
|
xml_file = os.path.join(self.path, unicode(theme_name), unicode(theme_name) + u'.xml')
|
||||||
unicode(theme_name) + u'.xml')
|
|
||||||
xml = get_text_file_string(xml_file)
|
xml = get_text_file_string(xml_file)
|
||||||
if not xml:
|
if not xml:
|
||||||
log.debug(u'No theme data - using default theme')
|
log.debug(u'No theme data - using default theme')
|
||||||
|
@ -465,7 +465,7 @@ def get_uno_instance(resolver):
|
|||||||
|
|
||||||
def format_time(text, local_time):
|
def format_time(text, local_time):
|
||||||
"""
|
"""
|
||||||
Workaround for Python built-in time formatting fuction time.strftime().
|
Workaround for Python built-in time formatting function time.strftime().
|
||||||
|
|
||||||
time.strftime() accepts only ascii characters. This function accepts
|
time.strftime() accepts only ascii characters. This function accepts
|
||||||
unicode string and passes individual % placeholders to time.strftime().
|
unicode string and passes individual % placeholders to time.strftime().
|
||||||
|
@ -0,0 +1,96 @@
|
|||||||
|
(lp1
|
||||||
|
(dp2
|
||||||
|
Vserviceitem
|
||||||
|
p3
|
||||||
|
(dp4
|
||||||
|
Vheader
|
||||||
|
p5
|
||||||
|
(dp6
|
||||||
|
Vfooter
|
||||||
|
p7
|
||||||
|
(lp8
|
||||||
|
VTest Custom Credits
|
||||||
|
p9
|
||||||
|
asVaudit
|
||||||
|
p10
|
||||||
|
V
|
||||||
|
sVsearch
|
||||||
|
p11
|
||||||
|
V
|
||||||
|
sVwill_auto_start
|
||||||
|
p12
|
||||||
|
I00
|
||||||
|
sVname
|
||||||
|
p13
|
||||||
|
Vcustom
|
||||||
|
p14
|
||||||
|
sVplugin
|
||||||
|
p15
|
||||||
|
g14
|
||||||
|
sVdata
|
||||||
|
p16
|
||||||
|
V
|
||||||
|
sVnotes
|
||||||
|
p17
|
||||||
|
V
|
||||||
|
sVtitle
|
||||||
|
p18
|
||||||
|
VTest Custom
|
||||||
|
p19
|
||||||
|
sVfrom_plugin
|
||||||
|
p20
|
||||||
|
I00
|
||||||
|
sVcapabilities
|
||||||
|
p21
|
||||||
|
(lp22
|
||||||
|
I2
|
||||||
|
aI1
|
||||||
|
aI5
|
||||||
|
aI13
|
||||||
|
aI8
|
||||||
|
asVmedia_length
|
||||||
|
p23
|
||||||
|
I0
|
||||||
|
sVtheme_overwritten
|
||||||
|
p24
|
||||||
|
I00
|
||||||
|
sVtheme
|
||||||
|
p25
|
||||||
|
NsVxml_version
|
||||||
|
p26
|
||||||
|
NsVend_time
|
||||||
|
p27
|
||||||
|
I0
|
||||||
|
sVbackground_audio
|
||||||
|
p28
|
||||||
|
(lp29
|
||||||
|
sVtype
|
||||||
|
p30
|
||||||
|
I1
|
||||||
|
sVstart_time
|
||||||
|
p31
|
||||||
|
I0
|
||||||
|
sVicon
|
||||||
|
p32
|
||||||
|
V:/plugins/plugin_custom.png
|
||||||
|
p33
|
||||||
|
ssg16
|
||||||
|
(lp34
|
||||||
|
(dp35
|
||||||
|
VverseTag
|
||||||
|
p36
|
||||||
|
NsVraw_slide
|
||||||
|
p37
|
||||||
|
VSlide 1
|
||||||
|
p38
|
||||||
|
sVtitle
|
||||||
|
p39
|
||||||
|
g38
|
||||||
|
sa(dp40
|
||||||
|
g36
|
||||||
|
Nsg37
|
||||||
|
VSlide 2
|
||||||
|
p41
|
||||||
|
sg39
|
||||||
|
g41
|
||||||
|
sassa.
|
@ -2,6 +2,7 @@
|
|||||||
Package to test the openlp.core.lib package.
|
Package to test the openlp.core.lib package.
|
||||||
"""
|
"""
|
||||||
import os
|
import os
|
||||||
|
import cPickle
|
||||||
|
|
||||||
from unittest import TestCase
|
from unittest import TestCase
|
||||||
from mock import MagicMock
|
from mock import MagicMock
|
||||||
@ -18,11 +19,12 @@ FOOTER = [u'Arky Arky (Unknown)', u'Public Domain', u'CCLI 123456']
|
|||||||
|
|
||||||
TESTPATH = os.path.abspath(os.path.join(os.path.dirname(__file__), u'resources'))
|
TESTPATH = os.path.abspath(os.path.join(os.path.dirname(__file__), u'resources'))
|
||||||
|
|
||||||
|
|
||||||
class TestServiceItem(TestCase):
|
class TestServiceItem(TestCase):
|
||||||
|
|
||||||
def serviceitem_basic_test(self):
|
def serviceitem_basic_test(self):
|
||||||
"""
|
"""
|
||||||
Test the Service Item basic test
|
Test the Service Item - basic test
|
||||||
"""
|
"""
|
||||||
# GIVEN: A new service item
|
# GIVEN: A new service item
|
||||||
|
|
||||||
@ -35,7 +37,7 @@ class TestServiceItem(TestCase):
|
|||||||
|
|
||||||
def serviceitem_add_text_test(self):
|
def serviceitem_add_text_test(self):
|
||||||
"""
|
"""
|
||||||
Test the Service Item add text test
|
Test the Service Item - add text test
|
||||||
"""
|
"""
|
||||||
# GIVEN: A new service item
|
# GIVEN: A new service item
|
||||||
service_item = ServiceItem(None)
|
service_item = ServiceItem(None)
|
||||||
@ -63,7 +65,7 @@ class TestServiceItem(TestCase):
|
|||||||
|
|
||||||
def serviceitem_add_image_test(self):
|
def serviceitem_add_image_test(self):
|
||||||
"""
|
"""
|
||||||
Test the Service Item add image test
|
Test the Service Item - add image test
|
||||||
"""
|
"""
|
||||||
# GIVEN: A new service item and a mocked renderer
|
# GIVEN: A new service item and a mocked renderer
|
||||||
service_item = ServiceItem(None)
|
service_item = ServiceItem(None)
|
||||||
@ -120,7 +122,7 @@ class TestServiceItem(TestCase):
|
|||||||
|
|
||||||
def serviceitem_add_command_test(self):
|
def serviceitem_add_command_test(self):
|
||||||
"""
|
"""
|
||||||
Test the Service Item add command test
|
Test the Service Item - add command test
|
||||||
"""
|
"""
|
||||||
# GIVEN: A new service item and a mocked renderer
|
# GIVEN: A new service item and a mocked renderer
|
||||||
service_item = ServiceItem(None)
|
service_item = ServiceItem(None)
|
||||||
@ -161,3 +163,35 @@ class TestServiceItem(TestCase):
|
|||||||
|
|
||||||
# THEN the service item should not be valid
|
# THEN the service item should not be valid
|
||||||
assert service_item.is_valid is False, u'The service item is not valid'
|
assert service_item.is_valid is False, u'The service item is not valid'
|
||||||
|
|
||||||
|
def serviceitem_load_custom_from_service_test(self):
|
||||||
|
"""
|
||||||
|
Test the Service Item - adding from a saved service
|
||||||
|
"""
|
||||||
|
# GIVEN: A new service item and a mocked add icon function
|
||||||
|
service_item = ServiceItem(None)
|
||||||
|
mocked_add_icon = MagicMock()
|
||||||
|
service_item.add_icon = mocked_add_icon
|
||||||
|
mocked_renderer = MagicMock()
|
||||||
|
service_item.renderer = mocked_renderer
|
||||||
|
|
||||||
|
# WHEN: adding a custom from a saved Service
|
||||||
|
line = self.convert_file_service_item(u'serviceitem_custom1.osd')
|
||||||
|
service_item.set_from_service(line)
|
||||||
|
|
||||||
|
# THEN: We should get back a valid service item
|
||||||
|
assert service_item.is_valid is True, u'The new service item should be valid'
|
||||||
|
assert len(service_item._display_frames) == 0, u'The service item has no display frames'
|
||||||
|
assert len(service_item.capabilities) == 5, u'There are 5 default custom item capabilities'
|
||||||
|
service_item.render(True)
|
||||||
|
assert (service_item.get_display_title()) == u'Test Custom', u'The custom title is correct'
|
||||||
|
|
||||||
|
def convert_file_service_item(self, name):
|
||||||
|
service_file = os.path.join(TESTPATH, name)
|
||||||
|
try:
|
||||||
|
open_file = open(service_file, u'r')
|
||||||
|
items = cPickle.load(open_file)
|
||||||
|
first_line = items[0]
|
||||||
|
except:
|
||||||
|
first_line = u''
|
||||||
|
return first_line
|
||||||
|
Loading…
Reference in New Issue
Block a user