コード例 #1
0
ファイル: origins.py プロジェクト: vegis360/tern
 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)
コード例 #2
0
    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')
コード例 #3
0
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)
コード例 #4
0
ファイル: origins.py プロジェクト: vegis360/tern
 def add_notice_origin(self, orig_string):
     self.__origins.append(NoticeOrigin(orig_string))