Пример #1
0
 def test_empty_string(self):
     """Should return an empty list."""
     text = ''
     wrap = 10
     expected = []
     observed = ImageContent._wrap_text(text=text, wrap_characters=wrap)
     self.assertEqual(expected, observed)
Пример #2
0
 def test_no_newline_greater_than_wrap_char(self):
     """Should return text broken on the wrap character amount."""
     text = 'This is some text with no internal punctuation.'
     wrap = int(len(text) / 2)
     expected = ['This is some text with', 'no internal', 'punctuation.']
     observed = ImageContent._wrap_text(text=text, wrap_characters=wrap)
     self.assertEqual(expected, observed)
Пример #3
0
 def test_newline_less_than_wrap_char(self):
     """Should return text broken on the internal punctuation."""
     text = 'This is some text. It has internal punctuation.'
     wrap = int(len(text) + 1)
     expected = ['This is some text.', ' ', 'It has internal punctuation.']
     observed = ImageContent._wrap_text(text=text, wrap_characters=wrap)
     self.assertEqual(expected, observed)
Пример #4
0
 def test_no_newline_less_than_wrap_char(self):
     """Should return text as a list with no breaks."""
     text = 'This is some text with no internal punctuation.'
     wrap = int(len(text) + 1)
     expected = [text]
     observed = ImageContent._wrap_text(text=text, wrap_characters=wrap)
     self.assertEqual(expected, observed)
Пример #5
0
 def test_read_survey_image_content_values(self):
     """Should return content values with expected keys."""
     expected = {'item_type', 'file_name_column', 'text_label_column',
                 'text_hint_column', 'nest_image_column', }
     settings = {2: {'language': 'english',
                     'item_type': 'text',
                     'file_name_column': 'name',
                     'text_label_column': 'label',
                     'text_hint_column': 'hint',
                     'nest_image_column': 'image'}}
     sheet = self.xlsform1_workbook.sheet_by_name(sheet_name='survey')
     column_locations = ImageContent._locate_image_content_columns(
         survey_sheet=sheet, settings_values=settings[2])
     observed = ImageContent._read_survey_image_content_values(
         survey_sheet=sheet, column_locations=column_locations)
     self.assertEqual(expected, set(observed[0].keys()))
Пример #6
0
 def test_newline_greater_than_wrap_char(self):
     """Should return text broken at both wrap char and punctuation."""
     text = 'This is some text. It has internal punctuation.'
     wrap = int(len(text) / 3)
     expected = [
         'This is some', 'text.', ' ', 'It has', 'internal', 'punctuation.']
     observed = ImageContent._wrap_text(text=text, wrap_characters=wrap)
     self.assertEqual(expected, observed)
Пример #7
0
 def test_read_from_image_settings(self):
     """Should return expected sample image content values."""
     settings = ImageSettings.read(
         xlsform_workbook=self.xlsform1_workbook)
     observed = ImageContent.read(
         xlsform_workbook=self.xlsform1_workbook, settings=settings[2])
     image_content = observed['image_content']
     self.assertEqual('nl_visit', image_content[0]['file_name_column'])
     self.assertEqual(['Subject ID'], image_content[2]['text_label_column'])
Пример #8
0
    def setUp(self):
        super().setUp()

        # Must be run level since the tests modify this complex object.
        settings = ImageContent.read(
            xlsform_workbook=self.xlsform1_workbook, settings=self.template[2])
        settings['image_content'] = [x for x in settings['image_content']
                                     if x['file_name_column'] == 'da2d10ye']
        self.settings = settings
Пример #9
0
 def test_write_single_language(self):
     """Should create the expected number of images."""
     self.clean_test_output_folder = True
     settings = ImageSettings.read(xlsform_workbook=self.xlsform1_workbook)
     add_content = ImageContent.read(
         xlsform_workbook=self.xlsform1_workbook, settings=settings[2])
     Images.write(self.xlsform1, add_content)
     output_files = os.listdir(self.test_output_folder)
     self.assertEqual(184, len(output_files))
Пример #10
0
 def test_locate_image_content_columns(self):
     """Should return the column index of the image content columns."""
     expected = {'item_type': 0,
                 'file_name_column': 1,
                 'text_label_column': 2,
                 'text_hint_column': 3,
                 'nest_image_column': 4}
     settings = {2: {'language': 'english',
                     'file_name_column': 'name',
                     'text_label_column': 'label',
                     'text_hint_column': 'hint',
                     'nest_image_column': 'image'}}
     sheet = self.xlsform1_workbook.sheet_by_name(sheet_name='survey')
     observed = ImageContent._locate_image_content_columns(
         survey_sheet=sheet, settings_values=settings[2])
     self.assertEqual(expected, observed)