Example #1
0
 def test_poll_state_change(self):
     register_workflows(self.config)
     root = self._fixture()
     meeting = root['m']
     ai = meeting['ai']
     meeting.set_workflow_state(self.request, 'upcoming')
     meeting.set_workflow_state(self.request, 'ongoing')
     ai.set_workflow_state(self.request, 'upcoming')
     ai.set_workflow_state(self.request, 'ongoing')
     from voteit.core.models.proposal import Proposal
     ai['p1'] = p1 = Proposal()
     ai['p2'] = p2 = Proposal()
     self.config.include('voteit.feed')
     from voteit.core.models.poll import Poll
     poll = Poll()
     poll.proposal_uids = (p1.uid, p2.uid)
     self.config.include('voteit.core.plugins.majority_poll')
     poll.set_field_value('poll_plugin', u'majority_poll')
     ai['p'] = poll
     poll.set_workflow_state(self.request, 'upcoming')
     poll.set_workflow_state(self.request, 'ongoing')
     adapter = self.config.registry.queryAdapter(meeting, IFeedHandler)
     self.assertEqual(len(adapter.feed_storage), 1)
     self.assertEqual(adapter.feed_storage[len(adapter.feed_storage)-1].tags, ('poll', 'ongoing',))
     poll.set_workflow_state(self.request, 'closed')
     self.assertEqual(len(adapter.feed_storage), 2)
     self.assertEqual(adapter.feed_storage[len(adapter.feed_storage)-1].tags, ('poll', 'closed',))