当前位置: 首页>>代码示例>>Python>>正文


Python EnvironmentStub.upgrade方法代码示例

本文整理汇总了Python中trac.test.EnvironmentStub.upgrade方法的典型用法代码示例。如果您正苦于以下问题:Python EnvironmentStub.upgrade方法的具体用法?Python EnvironmentStub.upgrade怎么用?Python EnvironmentStub.upgrade使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在trac.test.EnvironmentStub的用法示例。


在下文中一共展示了EnvironmentStub.upgrade方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: CrashDumpModelTestCase

# 需要导入模块: from trac.test import EnvironmentStub [as 别名]
# 或者: from trac.test.EnvironmentStub import upgrade [as 别名]
class CrashDumpModelTestCase(unittest.TestCase):
    def setUp(self):
        self.env = EnvironmentStub(enable=['trac.*', 'crashdump.*'])
        self.env.path = tempfile.mkdtemp()
        self.db_mgr = DatabaseManager(self.env)
        self.env.upgrade()
        #self.db = self.env.get_db_cnx()
        self.crashdump_module = CrashDumpModule(self.env)

    def tearDown(self):
        #self.db.close()
        self.env.shutdown()
        shutil.rmtree(self.env.path)

    def _insert_crashdump(self, **kw):
        """Helper for inserting a ticket into the database"""
        crash = CrashDump(env=self.env)
        for k, v in kw.items():
            crash[k] = v
        crash.insert()
        return crash

    def test_new_crash(self):
        crash = CrashDump(env=self.env)
        crash.insert()
        self.assertIsNotNone(crash)
        self.assertIsNone(crash.uuid)
        self.assertIsNotNone(crash.id)

    def test_existing_crash(self):

        crash = CrashDump(env=self.env, uuid='67cbc89f-1001-4691-a2c2-c1bb40aac806', must_exist=False)
        crash.insert()
        self.assertIsNotNone(crash.uuid)
        self.assertEqual(crash.uuid, '67cbc89f-1001-4691-a2c2-c1bb40aac806')

        crash2 = CrashDump(id=crash.id, env=self.env)
        self.assertIsNotNone(crash2.uuid)

        self.assertEqual(crash.id, crash2.id)
        self.assertEqual(crash.uuid, crash2.uuid)

        crash3 = CrashDump(uuid=crash.uuid, env=self.env)

        self.assertEqual(crash.uuid, crash3.uuid)
        self.assertEqual(crash.id, crash3.id)


        crash4 = CrashDump(id='      #%i           ' % crash.id, env=self.env)

        self.assertEqual(crash.uuid, crash4.uuid)
        self.assertEqual(crash.id, crash4.id)

    def test_non_existing_crash(self):
        self.assertRaises(ResourceNotFound,
                          CrashDump, id='#1742', env=self.env)

        self.assertRaises(ResourceNotFound,
                          CrashDump, id='42', env=self.env)
开发者ID:aroth-arsoft,项目名称:trac-crashdump,代码行数:61,代码来源:model.py

示例2: CrashDumpWebUiTestCase

# 需要导入模块: from trac.test import EnvironmentStub [as 别名]
# 或者: from trac.test.EnvironmentStub import upgrade [as 别名]
class CrashDumpWebUiTestCase(unittest.TestCase):
    def setUp(self):
        self.env = EnvironmentStub(enable=['trac.*', 'crashdump.*'])
        self.env.path = tempfile.mkdtemp()
        self.db_mgr = DatabaseManager(self.env)
        self.env.upgrade()
        #self.db = self.env.get_db_cnx()
        self.crashdump_module = CrashDumpModule(self.env)

    def tearDown(self):
        #self.db.close()
        self.env.shutdown()
        shutil.rmtree(self.env.path)

    def _create_ticket_with_change(self, old_props, new_props,
                                   author='anonymous'):
        """Create a ticket with `old_props` and apply properties
        in `new_props`.
        """
        t = Ticket(self.env)
        t.populate(old_props)
        t.insert()
        comment = new_props.pop('comment', None)
        t.populate(new_props)
        t.save_changes(author, comment=comment)
        return t

    def _insert_ticket(self, **kw):
        """Helper for inserting a ticket into the database"""
        ticket = Ticket(self.env)
        for k, v in kw.items():
            ticket[k] = v
        ticket.insert()
        with self.env.db_transaction as db:
            links = CrashDumpTicketLinks(self.env, ticket, db=db)
            if 'linked_crashes' in kw:
                links.crashes = kw['linked_crashes']
                links.save(author='anonymous', db=db)
            db.commit()
        return ticket, links

    def _insert_crashdump(self, **kw):
        """Helper for inserting a ticket into the database"""
        crash = CrashDump(env=self.env)
        for k, v in kw.items():
            crash[k] = v
        crash.insert()
        return crash

    def test_no_crash_id(self):
        req = MockRequest(self.env, authname='user', method='GET',
                          args={'without-crashid':'42'})
        self.assertRaises(ResourceNotFound,
                          self.crashdump_module.process_request, req)

    def test_non_existing_crash_id(self):
        req = MockRequest(self.env, authname='user', method='GET',
                          args={'crashid':'42'})
        self.assertRaises(ResourceNotFound,
                          self.crashdump_module.process_request, req)

    def test_action_view_crash(self):
        """Full name of reporter and owner are used in ticket properties."""
        self.env.insert_users([('user1', 'User One', ''),
                               ('user2', 'User Two', '')])
        crash = self._insert_crashdump(reporter='user1', owner='user2')
        req = MockRequest(self.env, authname='user', method='GET',
                          args={'crashid':crash.id, 'action': 'view'})
        tmpl, data, extra = self.crashdump_module.process_request(req)

        self.assertEqual(tmpl, 'report.html')


    def test_action_view_crash_child(self):
        """Full name of reporter and owner are used in ticket properties."""
        self.env.insert_users([('user1', 'User One', ''),
                               ('user2', 'User Two', '')])
        crash = self._insert_crashdump(reporter='user1', owner='user2')

        for param in ['sysinfo', 'sysinfo_ex', 'fast_protect_version_info', 'exception', 'memory_regions', 'modules', 'threads', 'memory_block', 'stackdump']:
            req = MockRequest(self.env, authname='user', method='GET',
                            args={'crashid':crash.id, 'action': 'view', 'params': [param] })
            tmpl, data, extra = self.crashdump_module.process_request(req)

            self.assertEqual(tmpl, param + '.html')

    def test_action_view_ticket_linked_crash(self):
        """Full name of reporter and owner are used in ticket properties."""
        self.env.insert_users([('user1', 'User One', ''),
                               ('user2', 'User Two', '')])
        crash = self._insert_crashdump(reporter='user1', owner='user2')
        tkt, tkt_links = self._insert_ticket(reporter='user1', owner='user2', linked_crashes='%i' % crash.id)

        req = MockRequest(self.env, authname='user', method='GET',
                          args={'crashid':crash.id, 'action': 'view'})
        tmpl, data, extra = self.crashdump_module.process_request(req)

        self.assertEqual(tmpl, 'report.html')
        self.assertEqual(crash.linked_tickets, [tkt.id])

#.........这里部分代码省略.........
开发者ID:aroth-arsoft,项目名称:trac-crashdump,代码行数:103,代码来源:web_ui.py


注:本文中的trac.test.EnvironmentStub.upgrade方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。