def test_write_raw_data(self): """ Check that writerow() can accept raw data record. """ data = [ 'SS CYG', '2450702.1234', '<11.1', 'na', '110', '113', '070613', 'This is a test', ] writer = VisualFormatWriter(self.fp, 'XYZ') writer.writerow(data) lines = self.fp.getvalue().splitlines() self.assertEqual( lines[6], "SS CYG,2450702.1234,<11.1,na,110,113,070613,This is a test" )
def test_header_obscode(self): """ Check that observer code is written into file. """ writer = VisualFormatWriter(self.fp, 'XYZ') contents = self.fp.getvalue() self.assertIn("#OBSCODE=XYZ", contents)
def test_normalize_empty_fields(self): """ Check that dict_to_row() inserts 'na' values for empty fields. """ data = { 'name': 'SS CYG', 'date': '2450702.1234', 'magnitude': '<11.1', 'comment_code': '', 'comp1': '110', 'comp2': '', 'chart': '070613', 'notes': '', } row = VisualFormatWriter.dict_to_row(data) expected_row = [ 'SS CYG', '2450702.1234', '<11.1', 'na', '110', 'na', '070613', 'na', ] self.assertEqual(row, expected_row)
def test_header_obstype(self): """ Check that OBSTYPE parameter is correctly set. """ writer = VisualFormatWriter(self.fp, 'XYZ', obstype='Visual') contents = self.fp.getvalue() self.assertIn("#OBSTYPE=Visual", contents)
def test_header_obstype_ptg(self): """ Check that OBSTYPE can be set to PTG (Photographic). """ writer = VisualFormatWriter(self.fp, 'XYZ', obstype='PTG') contents = self.fp.getvalue() self.assertIn("#OBSTYPE=PTG", contents)
def test_header_type(self): """ Check that TYPE parameter is always Visual. """ writer = VisualFormatWriter(self.fp, 'XYZ') contents = self.fp.getvalue() self.assertIn("#TYPE=Visual", contents)
def test_header_date(self): """ Check that the DATE parameter represents date format used. """ writer = VisualFormatWriter(self.fp, 'XYZ', date_format='jd') contents = self.fp.getvalue() self.assertIn("#DATE=JD", contents)
def test_header_software(self): """ Check that the SOFTWARE parameter is correct. """ writer = VisualFormatWriter(self.fp, 'XYZ') contents = self.fp.getvalue() self.assertIn("#SOFTWARE=pyaavso %s" % pyaavso.get_version(), contents)
def test_write_raw_data(self): """ Check that writerow() can accept raw data record. """ data = [ 'SS CYG', '2450702.1234', '<11.1', 'na', '110', '113', '070613', 'This is a test', ] writer = VisualFormatWriter(self.fp, 'XYZ') writer.writerow(data) lines = self.fp.getvalue().splitlines() self.assertEqual( lines[6], "SS CYG,2450702.1234,<11.1,na,110,113,070613,This is a test")
def test_write_dict(self): """ Check that dictionary of observation data can be written to file. """ data = { 'name': 'SS CYG', 'date': '2450702.1234', 'magnitude': '<11.1', 'comment_code': '', 'comp1': '110', 'comp2': '113', 'chart': '070613', 'notes': 'This is a test', } writer = VisualFormatWriter(self.fp, 'XYZ') writer.writerow(data) lines = self.fp.getvalue().splitlines() self.assertEqual( lines[6], "SS CYG,2450702.1234,<11.1,na,110,113,070613,This is a test")
def test_roundtrip_row(self): """ Check that a data row onverted to dict and back to row is the same. """ row = [ 'SS CYG', '2450702.1234', '<11.1', 'na', '110', '113', '070613', 'This is a test', ] data = VisualFormatReader.row_to_dict(row) output_row = VisualFormatWriter.dict_to_row(data) self.assertEqual(output_row, row)
def test_write_dict(self): """ Check that dictionary of observation data can be written to file. """ data = { 'name': 'SS CYG', 'date': '2450702.1234', 'magnitude': '<11.1', 'comment_code': '', 'comp1': '110', 'comp2': '113', 'chart': '070613', 'notes': 'This is a test', } writer = VisualFormatWriter(self.fp, 'XYZ') writer.writerow(data) lines = self.fp.getvalue().splitlines() self.assertEqual( lines[6], "SS CYG,2450702.1234,<11.1,na,110,113,070613,This is a test" )
def test_normalize_mising_fields(self): """ Check that dict_to_row() inserts 'na' values for missing fields. """ data = { 'name': 'SS CYG', 'date': '2450702.1234', 'magnitude': '<11.1', 'comp1': '', 'chart': '', } row = VisualFormatWriter.dict_to_row(data) expected_row = [ 'SS CYG', '2450702.1234', '<11.1', 'na', 'na', 'na', 'na', 'na', ] self.assertEqual(row, expected_row)
def test_roundtrip_dict(self): """ Check that observation converted to row and back to dict is the same. """ data = { 'name': 'SS CYG', 'date': '2450702.1234', 'magnitude': '<11.1', 'comment_code': '', 'comp1': '110', 'comp2': '113', 'chart': '070613', 'notes': 'This is a test', } row = VisualFormatWriter.dict_to_row(data) output_data = VisualFormatReader.row_to_dict(row) self.assertEqual(output_data, data)