Example #1
0
 def _before_returning_wait_page(self):
     session_configs = get_session_configs_dict()
     try:
         session_config = session_configs[self.session_config_name]
     except KeyError:
         msg = (
             "Session type '{}' not found"
         ).format(self.session_config_name)
         raise Http404(msg)
     # check that it divides evenly
     # need to check here so that the user knows upfront
     session_lcm = otree.session.get_lcm(session_config)
     num_participants = session_config['num_demo_participants']
     if num_participants % session_lcm:
         msg = (
             'Session Config {}: Number of participants ({}) does not '
             'divide evenly into group size ({})'
         ).format(
             self.session_config_name,
             num_participants,
             session_lcm
         )
         raise Http404(msg)
     t = threading.Thread(
         target=ensure_enough_spare_sessions,
         args=(self.session_config_name,)
     )
     t.start()
Example #2
0
 def build_suite(self, session_names, extra_tests, preserve_data, **kwargs):
     suite = self.test_suite()
     if not session_names:
         session_names = sorted(session.get_session_configs_dict().keys())
     for session_name in session_names:
         case = OTreeExperimentFunctionTest(session_name, preserve_data)
         suite.addTest(case)
Example #3
0
 def build_suite(self, session_names, extra_tests, preserve_data, **kwargs):
     suite = self.test_suite()
     if not session_names:
         session_names = sorted(session.get_session_configs_dict().keys())
     for session_name in session_names:
         case = OTreeExperimentFunctionTest(session_name, preserve_data)
         suite.addTest(case)
     return suite
Example #4
0
def session_description_dict(session):

    context_data = {
        'display_name': session.config['display_name'],
    }

    session_config = get_session_configs_dict()[session.config['name']]
    context_data.update(info_about_session_config(session_config))

    return context_data
Example #5
0
def session_description_dict(session):

    context_data = {
        'display_name': session.config['display_name'],
    }

    session_config = get_session_configs_dict(

    )[session.config['name']]
    context_data.update(info_about_session_config(session_config))

    return context_data
Example #6
0
 def _before_returning_wait_page(self):
     session_configs = get_session_configs_dict()
     try:
         session_config = session_configs[self.session_config_name]
     except KeyError:
         msg = ("Session type '{}' not found").format(
             self.session_config_name)
         raise Http404(msg)
     # check that it divides evenly
     # need to check here so that the user knows upfront
     session_lcm = otree.session.get_lcm(session_config)
     num_participants = session_config['num_demo_participants']
     if num_participants % session_lcm:
         msg = ('Session Config {}: Number of participants ({}) does not '
                'divide evenly into group size ({})').format(
                    self.session_config_name, num_participants, session_lcm)
         raise Http404(msg)
     t = threading.Thread(target=ensure_enough_spare_sessions,
                          args=(self.session_config_name, ))
     t.start()
Example #7
0
 def dispatch(self, request, *args, **kwargs):
     session_config_name = urllib.unquote_plus(kwargs.pop('session_config'))
     self.session_config = get_session_configs_dict()[session_config_name]
     self.for_mturk = (int(self.request.GET.get('mturk', 0)) == 1)
     return super(CreateSession, self).dispatch(request, *args, **kwargs)
Example #8
0
 def dispatch(self, request, *args, **kwargs):
     session_config_name = urllib.unquote_plus(kwargs.pop('session_config'))
     self.session_config = get_session_configs_dict()[session_config_name]
     self.for_mturk = (int(self.request.GET.get('mturk', 0)) == 1)
     return super(CreateSession, self).dispatch(request, *args, **kwargs)