def test_get_sheet(self): """ Test that accessing a sheet that doesn't exists return None and not throw an exception """ wb = Workbook() wb.create_sheet(0, 'Test') self.assertTrue('Test' in utils.get_sheet_titles(wb)) ws = utils.get_sheet(wb, 'Test') self.assertIsNotNone(ws) wb.remove_sheet(ws) self.assertIsNone(utils.get_sheet(wb, 'Test'))
def test_get_sheet_case_insensitive(self): """ By default it is case insensitive """ wb = Workbook() wb.create_sheet(0, 'Test') self.assertTrue('Test' in utils.get_sheet_titles(wb)) ws = utils.get_sheet(wb, 'test') self.assertIsNotNone(ws) self.assertIsNone(utils.get_sheet(wb, 'test', case_insensitive=False)) wb.remove_sheet(ws) self.assertIsNone(utils.get_sheet(wb, 'test'))
def _write_meta(self): mapping = DATASHEET_META_MAPPING meta_ws = util_xls.get_sheet(self.wb, mapping.sheet_name) or util_xls.get_sheet(self.wb, 'Sheet') # rewrite the sheet name in case of the 'Sheet' selection. meta_ws.title = mapping.sheet_name if meta_ws is None: meta_ws = self.wb.create_sheet(0, mapping.sheet_name) # write the visit name # populate Meta with visit/site details (very rough) col_headers = [util_model.get_field_verbose_name(Visit, 'name'), util_model.get_field_verbose_name(Site, 'site_code')] # write column headers top_cell = meta_ws.cell(row=mapping.top_left_row, column=mapping.top_left_column) writing_direction = mapping.next_col_direction util_xls.write_values_from_cell(top_cell, col_headers, writing_direction, self.column_header_font) # write values if self.visit and self.site: values = [self.visit.name, self.site.site_code] top_cell = util_xls.get_cell_neighbour(top_cell, mapping.next_row_direction) util_xls.write_values_from_cell(top_cell, values, writing_direction) return meta_ws