コード例 #1
0
ファイル: test_security.py プロジェクト: VoteIT/voteit.core
 def _fixture(self):
     root = bootstrap_voteit(echo=False)
     from voteit.core.models.user import User
     #Note that creators also fixes ownership
     for userid in ('fredrik', 'anders', 'hanna', 'robin'):
         root.users[userid] = User(creators = [userid])
     return root
コード例 #2
0
 def _fixture(self):
     root = bootstrap_voteit(echo=False)
     from voteit.core.models.user import User
     #Note that creators also fixes ownership
     for userid in ('fredrik', 'anders', 'hanna', 'robin'):
         root.users[userid] = User(creators=[userid])
     return root
コード例 #3
0
ファイル: testing_helpers.py プロジェクト: waytai/voteit.core
def bootstrap_and_fixture(config):
    config.include('pyramid_zcml')
    config.load_zcml('voteit.core:configure.zcml')
    config.scan('voteit.core.models.site')
    config.scan('voteit.core.models.agenda_templates')
    config.scan('voteit.core.models.user')
    config.scan('voteit.core.models.users')
    config.include('voteit.core.models.fanstatic_resources')
    config.scan('betahaus.pyracont.fields.password')
    return bootstrap_voteit(echo=False)
コード例 #4
0
    def _fixture(self):
        self.config.scan('betahaus.pyracont.fields.password')
        root = bootstrap_voteit(echo=False)
        from voteit.core.models.user import User

        #Note that creators also fixes ownership
        for userid in ('fredrik', 'anders', 'hanna', 'robin'):
            root.users[userid] = User(creators=[userid])

        return root
コード例 #5
0
def bootstrap_and_fixture(config):
    config.include('pyramid_zcml')
    config.include('arche.testing')
    config.include('voteit.core.security')
    config.load_zcml('voteit.core:configure.zcml')
    config.include('voteit.core.models.site')
    config.include('voteit.core.models.agenda_templates')
    config.include('voteit.core.models.user')
    config.include('voteit.core.models.users')
    return bootstrap_voteit(echo=False)
コード例 #6
0
def bootstrap_and_fixture(config):
    config.include('pyramid_zcml')
    config.include('pyramid_chameleon')
    config.load_zcml('voteit.core:configure.zcml')
    config.scan('voteit.core.models.site')
    config.scan('voteit.core.models.agenda_templates')
    config.scan('voteit.core.models.user')
    config.scan('voteit.core.models.users')
    config.include('voteit.core.models.fanstatic_resources')
    config.scan('betahaus.pyracont.fields.password')
    return bootstrap_voteit(echo=False)
コード例 #7
0
 def _fixture(self, num=10):
     root = bootstrap_voteit(echo=False)
     from voteit.core.models.meeting import Meeting
     from voteit.core.models.agenda_item import AgendaItem
     from voteit.core.models.discussion_post import DiscussionPost
     from voteit.core import security
     root['m'] = m = Meeting()
     m.local_roles.add('admin', [security.MODERATE_MEETING, security.VIEW])
     m['ai'] = ai = AgendaItem()
     for i in range(num):
         ai['d%s' % i] = DiscussionPost()
     return root
コード例 #8
0
ファイル: test_helpers.py プロジェクト: VoteIT/voteit.core
 def _fixture(self, num = 10):
     root = bootstrap_voteit(echo = False)
     from voteit.core.models.meeting import Meeting
     from voteit.core.models.agenda_item import AgendaItem
     from voteit.core.models.discussion_post import DiscussionPost
     from voteit.core import security
     root['m'] = m = Meeting()
     m.local_roles.add('admin', [security.MODERATE_MEETING, security.VIEW])
     m['ai'] = ai = AgendaItem()
     for i in range(num):
         ai['d%s' % i] = DiscussionPost()
     return root
コード例 #9
0
ファイル: test_helpers.py プロジェクト: VoteIT/voteit.core
 def _fixture(self):
     root = bootstrap_voteit(echo = False)
     from voteit.core.models.meeting import Meeting
     from voteit.core.models.poll import Poll
     root['m'] = m = Meeting()
     m['p1'] = Poll(title = 'Hello from one')
     m['p2'] = Poll(title = 'Hello from two')
     m['p3'] = Poll(title = 'Hello from three')
     request = testing.DummyRequest()
     request.root = root
     request.meeting = m
     request.is_moderator = False
     attach_request_method(request, resolve_docids, 'resolve_docids')
     return m, request
コード例 #10
0
 def _fixture(self):
     root = bootstrap_voteit(echo=False)
     from voteit.core.models.meeting import Meeting
     from voteit.core.models.poll import Poll
     root['m'] = m = Meeting()
     m['p1'] = Poll(title='Hello from one')
     m['p2'] = Poll(title='Hello from two')
     m['p3'] = Poll(title='Hello from three')
     request = testing.DummyRequest()
     request.root = root
     request.meeting = m
     request.is_moderator = False
     attach_request_method(request, resolve_docids, 'resolve_docids')
     return m, request
コード例 #11
0
 def setUp(self):
     self.config = testing.setUp(request=testing.DummyRequest())
     self.config.include('arche.testing')
     self.config.include('arche.models.catalog')
     self.config.include('voteit.core.models.meeting')
     self.config.include('voteit.core.models.site')
     self.config.include('voteit.core.models.agenda_templates')
     self.config.include('voteit.core.models.user')
     self.config.include('voteit.core.models.users')
     self.config.include('voteit.core.models.catalog')
     self.root = bootstrap_voteit(echo=False)
     self.query = self.root.catalog.query
     self.search = self.root.catalog.search
     self.get_metadata = self.root.document_map.get_metadata
     self.config.include('voteit.core.testing_helpers.register_workflows')
コード例 #12
0
ファイル: test_catalog.py プロジェクト: tobsan/voteit.core
    def setUp(self):
        self.config = testing.setUp()
        self.config.scan('voteit.core.models.meeting')
        self.config.scan('voteit.core.models.site')
        self.config.scan('voteit.core.models.agenda_template')
        self.config.scan('voteit.core.models.agenda_templates')
        self.config.scan('voteit.core.models.user')
        self.config.scan('voteit.core.models.users')
        self.config.scan('voteit.core.subscribers.catalog')
        self.config.include('voteit.core.models.user_tags')
        self.config.include('voteit.core.models.catalog')
        self.config.scan('betahaus.pyracont.fields.password')

        self.root = bootstrap_voteit(echo=False)
        self.query = self.root.catalog.query
        self.search = self.root.catalog.search
        self.get_metadata = self.root.catalog.document_map.get_metadata
        self.config.include('pyramid_zcml')
        self.config.load_zcml('voteit.core:configure.zcml')
コード例 #13
0
    def setUp(self):
        self.config = testing.setUp()
        self.config.scan('voteit.core.models.meeting')
        self.config.scan('voteit.core.models.site')
        self.config.scan('voteit.core.models.agenda_template')
        self.config.scan('voteit.core.models.agenda_templates')
        self.config.scan('voteit.core.models.user')
        self.config.scan('voteit.core.models.users')
        self.config.scan('voteit.core.subscribers.catalog')
        self.config.include('voteit.core.models.user_tags')
        self.config.include('voteit.core.models.catalog')
        self.config.scan('betahaus.pyracont.fields.password')

        self.root = bootstrap_voteit(echo=False)
        self.query = self.root.catalog.query
        self.search = self.root.catalog.search
        self.get_metadata = self.root.catalog.document_map.get_metadata
        self.config.include('pyramid_zcml')
        self.config.load_zcml('voteit.core:configure.zcml')
コード例 #14
0
def appmaker(zodb_root):
    """ This determines the root object for each request. If no site root exists,
        this function will run bootstrap_voteit and create one.
        Read more about traversal in the Pyramid docs.
        
        The funny looking try / except here is to bootstrap the site in case it hasn't been bootstrapped.
        This is faster than using an if statement.
    """
    try:
        return zodb_root['app_root']
    except KeyError:
        from voteit.core.bootstrap import bootstrap_voteit
        zodb_root['app_root'] = bootstrap_voteit() #Returns a site root
        import transaction
        transaction.commit()
        #Set intitial version of database
        from repoze.evolution import ZODBEvolutionManager
        from voteit.core.evolve import VERSION
        manager = ZODBEvolutionManager(zodb_root['app_root'], evolve_packagename='voteit.core.evolve', sw_version=VERSION)
        manager.set_db_version(VERSION)
        manager.transaction.commit()
        return zodb_root['app_root']
コード例 #15
0
    def test_mentioned_email(self):
        request = testing.DummyRequest()
        self.config = testing.setUp(request=request)
        self.config.include('pyramid_mailer.testing')
        self.config.scan('voteit.core.models.site')
        self.config.scan('voteit.core.models.agenda_template')
        self.config.scan('voteit.core.models.agenda_templates')
        self.config.scan('voteit.core.models.user')
        self.config.scan('voteit.core.models.users')
        self.config.scan('voteit.core.subscribers.mention')
        self.config.include('voteit.core.models.user_tags')
        self.config.include('voteit.core.models.catalog')
        self.config.scan('betahaus.pyracont.fields.password')

        from voteit.core.bootstrap import bootstrap_voteit
        root = bootstrap_voteit(echo=False)
        root.users['admin'].set_field_value('email', '*****@*****.**')

        from voteit.core.models.meeting import Meeting
        meeting = Meeting()
        root['meeting'] = meeting

        from voteit.core.models.agenda_item import AgendaItem
        agenda_item = AgendaItem()
        meeting['agenda_item'] = agenda_item

        from voteit.core.models.discussion_post import DiscussionPost
        discussion_post = DiscussionPost()
        discussion_post.set_field_value('text', '@admin')
        agenda_item['discussion_post'] = discussion_post

        mailer = get_mailer(request)
        self.assertEqual(len(mailer.outbox), 1)

        msg = mailer.outbox[0]
        self.failUnless(resource_url(discussion_post, request) in msg.html)
コード例 #16
0
def appmaker(zodb_root):
    """ This determines the root object for each request. If no site root exists,
        this function will run bootstrap_voteit and create one.
        Read more about traversal in the Pyramid docs.
        
        The funny looking try / except here is to bootstrap the site in case it hasn't been bootstrapped.
        This is faster than using an if statement.
    """
    try:
        return zodb_root['app_root']
    except KeyError:
        from voteit.core.bootstrap import bootstrap_voteit
        zodb_root['app_root'] = bootstrap_voteit()  #Returns a site root
        import transaction
        transaction.commit()
        #Set intitial version of database
        from repoze.evolution import ZODBEvolutionManager
        from voteit.core.evolve import VERSION
        manager = ZODBEvolutionManager(zodb_root['app_root'],
                                       evolve_packagename='voteit.core.evolve',
                                       sw_version=VERSION)
        manager.set_db_version(VERSION)
        manager.transaction.commit()
        return zodb_root['app_root']
コード例 #17
0
ファイル: test_user.py プロジェクト: tobsan/voteit.core
    def test_mentioned_email(self):
        request = testing.DummyRequest()
        self.config = testing.setUp(request=request)
        self.config.include('pyramid_mailer.testing')
        self.config.scan('voteit.core.models.site')
        self.config.scan('voteit.core.models.agenda_template')
        self.config.scan('voteit.core.models.agenda_templates')
        self.config.scan('voteit.core.models.user')
        self.config.scan('voteit.core.models.users')
        self.config.scan('voteit.core.subscribers.mention')
        self.config.include('voteit.core.models.user_tags')
        self.config.include('voteit.core.models.catalog')
        self.config.scan('betahaus.pyracont.fields.password')

        from voteit.core.bootstrap import bootstrap_voteit
        root = bootstrap_voteit(echo=False)
        root.users['admin'].set_field_value('email', '*****@*****.**')

        from voteit.core.models.meeting import Meeting
        meeting = Meeting()
        root['meeting'] = meeting
        
        from voteit.core.models.agenda_item import AgendaItem
        agenda_item = AgendaItem()
        meeting['agenda_item'] = agenda_item

        from voteit.core.models.discussion_post import DiscussionPost
        discussion_post = DiscussionPost()
        discussion_post.set_field_value('text', '@admin')
        agenda_item['discussion_post'] = discussion_post

        mailer = get_mailer(request)
        self.assertEqual(len(mailer.outbox), 1)
        
        msg = mailer.outbox[0]
        self.failUnless(resource_url(discussion_post, request) in msg.html)