def prepare_data(self): """Create some real data (real Event, Task, Person, or action).""" # totally fake Task, Role and Event data Tag.objects.bulk_create( [ Tag(name="SWC"), Tag(name="DC"), Tag(name="LC"), ] ) self.event = Event.objects.create( slug="test-event", host=Organization.objects.first(), start=date.today() + timedelta(days=7), end=date.today() + timedelta(days=8), country="GB", venue="Ministry of Magic", address="Underground", latitude=20.0, longitude=20.0, url="https://test-event.example.com", ) self.event.tags.set(Tag.objects.filter(name__in=["SWC", "DC", "LC"])) self.person = Person.objects.create( personal="Harry", family="Potter", email="*****@*****.**" ) self.role = Role.objects.create(name="instructor") self.task = Task.objects.create( event=self.event, person=self.person, role=self.role )
def setUp(self): super().setUp() self._setUpRoles() self._setUpUsersAndLogin() # we're missing some tags Tag.objects.bulk_create( [ Tag(name="automated-email", priority=0), Tag(name="SWC", priority=10), Tag(name="DC", priority=20), Tag(name="LC", priority=30), Tag(name="TTT", priority=40), ] ) self.wr1 = WorkshopRequest.objects.create( state="p", personal="Harry", family="Potter", email="*****@*****.**", institution_other_name="Hogwarts", location="Scotland", country="GB", preferred_dates=None, other_preferred_dates="soon", language=Language.objects.get(name="English"), number_attendees="10-40", audience_description="Students of Hogwarts", administrative_fee="nonprofit", scholarship_circumstances="", travel_expences_management="booked", travel_expences_management_other="", institution_restrictions="no_restrictions", institution_restrictions_other="", carpentries_info_source_other="", user_notes="", ) template1 = EmailTemplate.objects.create( slug="sample-template1", subject="Welcome to {{ site.name }}", to_header="*****@*****.**", from_header="*****@*****.**", cc_header="*****@*****.**", bcc_header="*****@*****.**", reply_to_header="{{ reply_to }}", body_template="Sample text.", ) self.trigger1 = Trigger.objects.create( action="week-after-workshop-completion", template=template1, ) self.url = reverse("workshoprequest_accept_event", args=[self.wr1.pk]) # save scheduler and connection data self._saved_scheduler = extrequests.views.scheduler self._saved_redis_connection = extrequests.views.redis_connection # overwrite them extrequests.views.scheduler = self.scheduler extrequests.views.redis_connection = self.connection
def setUp(self): super().setUp() # prepare some necessary objects self.template = EmailTemplate.objects.create() self.trigger = Trigger.objects.create(action='test-action', template=self.template) # totally fake Task, Role and Event data Tag.objects.bulk_create([ Tag(name='SWC'), Tag(name='DC'), Tag(name='LC'), ]) self.event = Event.objects.create( slug='test-event', host=Organization.objects.first(), start=date.today() + timedelta(days=7), end=date.today() + timedelta(days=8), country='GB', venue='Ministry of Magic', address='Underground', latitude=20.0, longitude=20.0, url='https://test-event.example.com', ) self.event.tags.set(Tag.objects.filter(name__in=['SWC', 'DC', 'LC'])) self.person = Person.objects.create(personal='Harry', family='Potter', email='*****@*****.**') self.role = Role.objects.create(name='instructor') self.task = Task.objects.create(event=self.event, person=self.person, role=self.role)
def setUp(self): super().setUp() Role.objects.create(name="host") Tag.objects.bulk_create( [ Tag(name="SWC"), Tag(name="DC"), Tag(name="LC"), Tag(name="automated-email"), ] ) Organization.objects.bulk_create( [ Organization( domain="librarycarpentry.org", fullname="Library Carpentry" ), Organization(domain="carpentries.org", fullname="Instructor Training"), ] ) test_event_1 = Event.objects.create( slug="test-event", host=Organization.objects.first(), administrator=Organization.objects.get(domain="librarycarpentry.org"), start=date.today() + timedelta(days=7), end=date.today() + timedelta(days=8), country="GB", venue="Ministry of Magic", address="Underground", latitude=20.0, longitude=20.0, url="https://test-event.example.com", ) test_event_1.tags.set( Tag.objects.filter(name__in=["SWC", "DC", "LC", "automated-email"]) ) template = EmailTemplate.objects.create( slug="sample-template", subject="Welcome!", to_header="", from_header="*****@*****.**", cc_header="*****@*****.**", bcc_header="*****@*****.**", reply_to_header="", body_template="# Welcome", ) Trigger.objects.create(action="new-instructor", template=template) # save scheduler and connection data self._saved_scheduler = workshops.views.scheduler self._saved_redis_connection = workshops.views.redis_connection # overwrite them workshops.views.scheduler = self.scheduler workshops.views.redis_connection = self.connection self.csv = """personal,family,email,event,role
def _setUpTags(self): """Set up tags (the same as in production database, minus some added via migrations).""" Tag.objects.bulk_create([ Tag(name="TTT", details=""), Tag(name="WiSE", details=""), Tag(name="LC", details=""), Tag(name="DC", details=""), Tag(name="SWC", details=""), ])
def _setUpTags(self): """Set up tags (the same as in production database, minus some added via migrations).""" Tag.objects.bulk_create([ Tag(name='TTT', details=''), Tag(name='WiSE', details=''), Tag(name='LC', details=''), Tag(name='DC', details=''), Tag(name='SWC', details=''), ])
def setUp(self): super().setUp() Role.objects.create(name='host') Tag.objects.bulk_create([ Tag(name='SWC'), Tag(name='DC'), Tag(name='LC'), Tag(name='automated-email'), ]) Organization.objects.bulk_create([ Organization(domain='librarycarpentry.org', fullname='Library Carpentry'), Organization(domain='carpentries.org', fullname='Instructor Training'), ]) test_event_1 = Event.objects.create( slug='test-event', host=Organization.objects.first(), administrator=Organization.objects.get( domain='librarycarpentry.org'), start=date.today() + timedelta(days=7), end=date.today() + timedelta(days=8), country='GB', venue='Ministry of Magic', address='Underground', latitude=20.0, longitude=20.0, url='https://test-event.example.com', ) test_event_1.tags.set( Tag.objects.filter( name__in=['SWC', 'DC', 'LC', 'automated-email'])) template = EmailTemplate.objects.create( slug='sample-template', subject='Welcome!', to_header='', from_header='*****@*****.**', cc_header='*****@*****.**', bcc_header='*****@*****.**', reply_to_header='', body_template='# Welcome', ) trigger = Trigger.objects.create(action='new-instructor', template=template) # save scheduler and connection data self._saved_scheduler = workshops.views.scheduler self._saved_redis_connection = workshops.views.redis_connection # overwrite them workshops.views.scheduler = self.scheduler workshops.views.redis_connection = self.connection self.csv = """personal,family,email,event,role
def setUp(self): # we're missing some tags Tag.objects.bulk_create([ Tag(name="automated-email", priority=0), Tag(name="SWC", priority=10), Tag(name="DC", priority=20), Tag(name="LC", priority=30), Tag(name="TTT", priority=40), ]) # by default there's only self-organized organization Organization.objects.bulk_create([ Organization(domain="carpentries.org", fullname="Instructor Training") ]) self.host = Role.objects.create(name="host") self.instructor = Role.objects.create(name="instructor") self.supporting_instructor = Role.objects.create( name="supporting-instructor") self.person1 = Person.objects.create( personal="Harry", family="Potter", email="*****@*****.**", username="******", ) self.person2 = Person.objects.create( personal="Ron", family="Weasley", email="*****@*****.**", username="******", ) self.person3 = Person.objects.create( personal="Hermione", family="Granger", email="*****@*****.**", username="******", ) self.person4 = Person.objects.create( personal="Peter", family="Parker", email="*****@*****.**", username="******", ) self.person5 = Person.objects.create( personal="Tony", family="Stark", email="*****@*****.**", username="******", )
def setUp(self): # we're missing some tags Tag.objects.bulk_create([ Tag(name="automated-email", priority=0), Tag(name="SWC", priority=10), Tag(name="DC", priority=20), Tag(name="LC", priority=30), Tag(name="TTT", priority=40), ]) # by default there's only self-organized organization, but it can't be # used in SelfOrganisedRequestAction Organization.objects.bulk_create([ Organization(domain="carpentries.org", fullname="Instructor Training"), Organization(domain="librarycarpentry.org", fullname="Library Carpentry"), ])
def setUp(self): Tag.objects.bulk_create([ Tag(name="SWC"), Tag(name="DC"), Tag(name="LC"), Tag(name="automated-email"), ]) Organization.objects.bulk_create([ Organization(domain="librarycarpentry.org", fullname="Library Carpentry"), Organization(domain="datacarpentry.org", fullname="Data Carpentry"), Organization(domain="software-carpentry.org", fullname="Software Carpentry"), Organization(domain="carpentries.org", fullname="Instructor Training"), ])
def setUp(self): # we're missing some tags Tag.objects.bulk_create([ Tag(name="SWC"), Tag(name="DC"), Tag(name="LC"), Tag(name="TTT"), Tag(name="automated-email"), ]) # by default there's only self-organized organization, but it can't be # used in AskForWebsiteAction Organization.objects.bulk_create([ Organization(domain="carpentries.org", fullname="Instructor Training"), Organization(domain="librarycarpentry.org", fullname="Library Carpentry"), ])
def setUp(self): # we're missing some tags Tag.objects.bulk_create([ Tag(name="SWC"), Tag(name="DC"), Tag(name="LC"), Tag(name="TTT"), Tag(name="automated-email"), ]) # by default there's only self-organized organization, but it can't be # used in RecruitHelpersAction Organization.objects.bulk_create([ Organization(domain="carpentries.org", fullname="Instructor Training"), Organization(domain="librarycarpentry.org", fullname="Library Carpentry"), ]) self.host_role = Role.objects.create(name="host") self.instructor_role = Role.objects.create(name="instructor") self.helper_role = Role.objects.create(name="helper") self.person1 = Person.objects.create( personal="Harry", family="Potter", email="*****@*****.**", username="******", ) self.person2 = Person.objects.create( personal="Ron", family="Weasley", email="*****@*****.**", username="******", ) self.person3 = Person.objects.create( personal="Hermione", family="Granger", email="*****@*****.**", username="******", )
def setUp(self): # we're missing some tags Tag.objects.bulk_create([ Tag(name="automated-email", priority=0), Tag(name="SWC", priority=10), Tag(name="DC", priority=20), Tag(name="LC", priority=30), Tag(name="TTT", priority=40), ]) self.instructor_role = Role.objects.create(name="instructor") self.person1 = Person.objects.create( personal="Harry", family="Potter", email="*****@*****.**", username="******", ) self.person2 = Person.objects.create( personal="Ron", family="Weasley", email="*****@*****.**", username="******", )
def setUp(self): super().setUp() self._setUpRoles() self._setUpUsersAndLogin() # we're missing some tags Tag.objects.bulk_create([ Tag(name="automated-email", priority=0), Tag(name="SWC", priority=10), Tag(name="DC", priority=20), Tag(name="LC", priority=30), Tag(name="TTT", priority=40), ]) self.sos = SelfOrganisedSubmission.objects.create( state="p", personal="Harry", family="Potter", email="*****@*****.**", institution_other_name="Hogwarts", workshop_url="", workshop_format="", workshop_format_other="", workshop_types_other_explain="", language=Language.objects.get(name="English"), additional_contact="*****@*****.**", ) self.sos.workshop_types.set(Curriculum.objects.filter(carpentry="LC")) template1 = EmailTemplate.objects.create( slug="sample-template1", subject="Welcome to {{ site.name }}", to_header="*****@*****.**", from_header="*****@*****.**", cc_header="*****@*****.**", bcc_header="*****@*****.**", reply_to_header="{{ reply_to }}", body_template="Sample text.", ) template2 = EmailTemplate.objects.create( slug="sample-template2", subject="Welcome to {{ site.name }}", to_header="*****@*****.**", from_header="*****@*****.**", cc_header="*****@*****.**", bcc_header="*****@*****.**", reply_to_header="{{ reply_to }}", body_template="Sample text.", ) self.trigger1 = Trigger.objects.create( action="self-organised-request-form", template=template1, ) self.trigger2 = Trigger.objects.create( action="week-after-workshop-completion", template=template2, ) self.url = reverse("selforganisedsubmission_accept_event", args=[self.sos.pk]) # save scheduler and connection data self._saved_scheduler = extrequests.views.scheduler self._saved_redis_connection = extrequests.views.redis_connection # overwrite them extrequests.views.scheduler = self.scheduler extrequests.views.redis_connection = self.connection
def setUp(self): super().setUp() # get instructor badges swc_instructor, _ = Badge.objects.get_or_create(name='swc-instructor') dc_instructor, _ = Badge.objects.get_or_create(name='dc-instructor') lc_instructor, _ = Badge.objects.get_or_create(name='lc-instructor') # prepare tags Tag.objects.bulk_create([ Tag(name='TTT', details=''), Tag(name='LC', details=''), Tag(name='DC', details=''), Tag(name='SWC', details=''), ]) # prepare an instructor instructor = Person.objects.create( username='******', personal='Harry', family='Potter', email='*****@*****.**', country='GB', ) # prepare instructor role instructor_role, _ = Role.objects.get_or_create(name='instructor') # create an organization host host = Organization.objects.create(domain='host.edu', fullname='Organization EDU') # set up events event1 = Event.objects.create(slug='event1', host=host) event2 = Event.objects.create(slug='event2', host=host) event2.tags.set( Tag.objects.filter(name__in=['SWC', 'DC', 'LC', 'TTT'])) Task.objects.create(event=event1, person=instructor, role=instructor_role) Task.objects.create(event=event2, person=instructor, role=instructor_role) # Award a SWC, DC and LC badges Award.objects.create(person=instructor, badge=swc_instructor) Award.objects.create(person=instructor, badge=dc_instructor) Award.objects.create(person=instructor, badge=lc_instructor) # make sure we *do not* get twice the number expected self.expecting = [ { 'person': 'http://testserver/api/v1/persons/{}/?format=json'.format( instructor.pk, ), 'name': 'Harry Potter', 'country': 'GB', 'num_taught_SWC': 1, 'num_taught_DC': 1, 'num_taught_LC': 1, 'num_taught_TTT': 1, 'num_taught_total': 2, }, ]