def add_notice_to_origins(self, orig_string, notice): orij = self.get_origin(orig_string) if orij: orij.add_notice(notice) else: notice_orij = NoticeOrigin(orig_string) notice_orij.add_notice(notice) self.__origins.append(notice_orij)
def setUp(self): self.notice_info = Notice("info") self.notice_warn = Notice("warning", "warning") self.notice_errr = Notice("error", "error") self.notice_hint = Notice("hint", "hint") self.notices = [ self.notice_info, self.notice_warn, self.notice_errr, self.notice_hint ] self.notice_origin = NoticeOrigin('origin_str')
class TestClassNoticeOrigin(unittest.TestCase): def setUp(self): self.notice_info = Notice("info") self.notice_warn = Notice("warning", "warning") self.notice_errr = Notice("error", "error") self.notice_hint = Notice("hint", "hint") self.notices = [ self.notice_info, self.notice_warn, self.notice_errr, self.notice_hint ] self.notice_origin = NoticeOrigin('origin_str') def tearDown(self): del self.notice_origin def testInstance(self): self.assertEqual(self.notice_origin.origin_str, 'origin_str') self.assertEqual(self.notice_origin.notices, []) def testAddNotice(self): exp = "Object type String, should be Notice" with self.assertRaises(TypeError, msg=exp): self.notice_origin.add_notice("not_a_notice") self.notice_origin.add_notice(self.notice_info) self.assertEqual(len(self.notice_origin.notices), 1) self.notice_origin.add_notice(self.notice_errr) self.assertEqual(len(self.notice_origin.notices), 2) def testPrintNotices(self): self.notice_origin.add_notice(self.notice_info) self.assertEqual( self.notice_origin.print_notices(), formats.notice_format.format( origin="origin_str", info='info', warnings='', errors='', hints='') ) self.notice_origin.add_notice(self.notice_warn) self.assertEqual( self.notice_origin.print_notices(), formats.notice_format.format( origin="origin_str", info='info', warnings='warning', errors='', hints='') ) self.notice_origin.add_notice(self.notice_errr) self.assertEqual( self.notice_origin.print_notices(), formats.notice_format.format( origin="origin_str", info='info', warnings='warning', errors='error', hints='') ) self.notice_origin.add_notice(self.notice_hint) self.assertEqual( self.notice_origin.print_notices(), formats.notice_format.format( origin="origin_str", info='info', warnings='warning', errors='error', hints='hint') ) def testToDict(self): exp = { 'origin_str': 'origin_str', 'notices': [{ 'message': 'info', 'level': 'info' }, { 'message': 'warning', 'level': 'warning' }, { 'message': 'error', 'level': 'error' }, { 'message': 'hint', 'level': 'hint' }] } for note in self.notices: self.notice_origin.add_notice(note) self.assertEqual(self.notice_origin.to_dict(), exp)
def add_notice_origin(self, orig_string): self.__origins.append(NoticeOrigin(orig_string))