Initial version of test_speaker, which creates all of the boilerplate for proposals
This commit is contained in:
parent
b3d86e2148
commit
9134fa5ed2
1 changed files with 106 additions and 0 deletions
106
registrasion/tests/test_speaker.py
Normal file
106
registrasion/tests/test_speaker.py
Normal file
|
@ -0,0 +1,106 @@
|
|||
import pytz
|
||||
|
||||
from django.core.exceptions import ValidationError
|
||||
|
||||
from registrasion.models import commerce
|
||||
from registrasion.models import conditions
|
||||
from registrasion.controllers.category import CategoryController
|
||||
from controller_helpers import TestingCartController
|
||||
from controller_helpers import TestingInvoiceController
|
||||
from registrasion.controllers.product import ProductController
|
||||
|
||||
from symposion.conference import models as conference_models
|
||||
from symposion.proposals import models as proposal_models
|
||||
from symposion.speakers import models as speaker_models
|
||||
|
||||
from test_cart import RegistrationCartTestCase
|
||||
|
||||
UTC = pytz.timezone('UTC')
|
||||
|
||||
|
||||
class SpeakerTestCase(RegistrationCartTestCase):
|
||||
|
||||
@classmethod
|
||||
def _create_proposals(cls):
|
||||
''' Creates two proposals:
|
||||
|
||||
- User 1 will be presenter
|
||||
- User 2 will be an additional presenter
|
||||
|
||||
Each proposal is of a different ProposalKind.
|
||||
'''
|
||||
|
||||
conference = conference_models.Conference.objects.create(
|
||||
title="TEST CONFERENCE.",
|
||||
)
|
||||
section = conference_models.Section.objects.create(
|
||||
conference=conference,
|
||||
name="TEST_SECTION",
|
||||
slug="testsection",
|
||||
)
|
||||
proposal_section = proposal_models.ProposalSection.objects.create(
|
||||
section=section,
|
||||
closed=False,
|
||||
published=False,
|
||||
)
|
||||
|
||||
kind_1 = proposal_models.ProposalKind.objects.create(
|
||||
section=section,
|
||||
name="Kind 1",
|
||||
slug="kind1",
|
||||
)
|
||||
kind_2 = proposal_models.ProposalKind.objects.create(
|
||||
section=section,
|
||||
name="Kind 2",
|
||||
slug="kind2",
|
||||
)
|
||||
|
||||
speaker_1 = speaker_models.Speaker.objects.create(
|
||||
user=cls.USER_1,
|
||||
name="Speaker 1",
|
||||
annotation="",
|
||||
)
|
||||
speaker_2 = speaker_models.Speaker.objects.create(
|
||||
user=cls.USER_2,
|
||||
name="Speaker 2",
|
||||
annotation="",
|
||||
)
|
||||
|
||||
proposal_1 = proposal_models.ProposalBase.objects.create(
|
||||
kind=kind_1,
|
||||
title="Proposal 1",
|
||||
abstract="Abstract",
|
||||
description="Description",
|
||||
speaker=speaker_1,
|
||||
)
|
||||
proposal_models.AdditionalSpeaker.objects.create(
|
||||
speaker=speaker_2,
|
||||
proposalbase=proposal_1,
|
||||
status=proposal_models.AdditionalSpeaker.SPEAKING_STATUS_ACCEPTED,
|
||||
)
|
||||
|
||||
proposal_2 = proposal_models.ProposalBase.objects.create(
|
||||
kind=kind_2,
|
||||
title="Proposal 2",
|
||||
abstract="Abstract",
|
||||
description="Description",
|
||||
speaker=speaker_1,
|
||||
)
|
||||
proposal_models.AdditionalSpeaker.objects.create(
|
||||
speaker=speaker_2,
|
||||
proposalbase=proposal_2,
|
||||
status=proposal_models.AdditionalSpeaker.SPEAKING_STATUS_ACCEPTED,
|
||||
)
|
||||
|
||||
cls.KIND_1 = kind_1
|
||||
cls.KIND_2 = kind_2
|
||||
cls.PROPOSAL_1 = proposal_1
|
||||
cls.PROPOSAL_2 = proposal_2
|
||||
|
||||
def test_create_proposals(self):
|
||||
self._create_proposals()
|
||||
|
||||
self.assertIsNotNone(self.KIND_1)
|
||||
self.assertIsNotNone(self.KIND_2)
|
||||
self.assertIsNotNone(self.PROPOSAL_1)
|
||||
self.assertIsNotNone(self.PROPOSAL_2)
|
Loading…
Reference in a new issue