コード例 #1
0
def test_initiator_can_create_topic_before_phase(client, phase_factory,
                                                 category_factory, admin):
    phase = phase_factory(phase_content=phases.PrioritizePhase())
    module = phase.module
    project = module.project
    category = category_factory(module=module)
    initiator = project.organisation.initiators.first()
    url = reverse('a4dashboard:topic-create',
                  kwargs={'module_slug': module.slug})
    with freeze_pre_phase(phase):
        client.login(username=initiator.email, password='******')
        response = client.get(url)
        assert_template_response(
            response, 'meinberlin_topicprio/topic_create_form.html')
        assert response.status_code == 200
        topic = {
            'name': 'Topic',
            'description': 'description',
            'category': category.pk,
        }
        response = client.post(url, topic)
        assert response.status_code == 302
        assert redirect_target(response) == 'topic-list'
        count = models.Topic.objects.all().count()
        assert count == 1
コード例 #2
0
def test_anonymous_cannot_create_topic(client, phase_factory):
    phase = phase_factory(phase_content=phases.PrioritizePhase())
    module = phase.module
    url = reverse('a4dashboard:topic-create',
                  kwargs={'module_slug': module.slug})
    with freeze_phase(phase):
        count = models.Topic.objects.all().count()
        assert count == 0
        response = client.get(url)
        assert response.status_code == 302
        assert redirect_target(response) == 'account_login'
コード例 #3
0
def test_user_cannot_create_topic(client, phase_factory, user):
    phase = phase_factory(phase_content=phases.PrioritizePhase())
    module = phase.module
    url = reverse('a4dashboard:topic-create',
                  kwargs={'module_slug': module.slug})
    with freeze_phase(phase):
        response = client.get(url)
        assert response.status_code == 302
        client.login(username=user.email, password='******')
        response = client.get(url)
        assert response.status_code == 403
コード例 #4
0
      title=_('Poll'),
      description=_(
          'Create a poll with multiple questions and possible answers. '
          'Anyone can cast votes and comment on the poll.'),
      content=[
          poll_phases.VotingPhase(),
      ],
      image='images/poll.svg',
      settings_model=None,
  )),
 ('topic-prioritization',
  ProjectBlueprint(
      title=_('Topic Prioritization'),
      description=_('Comment and prioritize topics.'),
      content=[
          topicprio_phases.PrioritizePhase(),
      ],
      image='images/priorization.svg',
      settings_model=None,
  )),
 ('map-topic-prioritization',
  ProjectBlueprint(
      title=_('Place Prioritization'),
      description=_('Comment and prioritize places located on a map.'),
      content=[
          maptopicprio_phases.PrioritizePhase(),
      ],
      image='images/place-priotization.svg',
      settings_model=('a4maps', 'AreaSettings'),
  )),
 ('bplan',