Esempio n. 1
0
 def test_get_context_data(self, initialize_task_data_mock: MagicMock,
                           _get_task_mock: MagicMock):
     request = self.factory.get(self.fake_path)
     view = TaskView()
     view = setup_view(view, request)
     view.task = AbstractTask()
     context = view.get_context_data()
     self.assertIsInstance(context['task'], AbstractTask)
     self.assertEqual(context['task'], view.task)
Esempio n. 2
0
 def test_get_context_data_presenter_typeerror(
         self, get_presenter_mock: MagicMock,
         initialize_task_data_mock: MagicMock, _get_task_mock: MagicMock):
     get_presenter_mock.side_effect = TypeError
     request = self.factory.get(self.fake_path)
     view = TaskView()
     view = setup_view(view, request)
     view.task = AbstractTask()
     with self.assertRaises(PresenterNotDefined):
         view.get_context_data()
Esempio n. 3
0
 def test_initialize_task_data(self, klass_from_name_mock: MagicMock):
     del self.task_data['info']['task_form']
     request = self.factory.get(self.fake_path)
     view = TaskView()
     view = setup_view(view, request)
     view.task = AbstractTask(**self.task_data)
     view.initialize_task_data()
     # TODO: divide to 2 test cases
     # self.assertEqual(view.template_name, self.task_data.get('info').get('template_name'))
     self.assertEqual(view.template_name,
                      self.task_data.get('info').get('template_name'))
Esempio n. 4
0
 def test_get_context_data(self, initialize_task_data_mock: MagicMock,
                           _get_task_mock: MagicMock):
     request = self.factory.get(self.fake_path)
     view = TaskView()
     view = setup_view(view, request)
     view.task = AbstractTask()
     context = view.get_context_data()
     self.assertIsInstance(context['task'], AbstractTask)
     self.assertEqual(context['task'], view.task)
     self.assertEqual(context['project_id'], PYBOSSA_PROJECT_ID)
     from moonsheep.settings import PYBOSSA_BASE_URL
     self.assertEqual(context['pybossa_url'], PYBOSSA_BASE_URL)
Esempio n. 5
0
 def test_get_no_tasks(self, get_context_data_mock: MagicMock,
                       _get_form_class_data_mock: MagicMock,
                       _get_task_mock: MagicMock):
     _get_task_mock.side_effect = NoTasksLeft
     request = self.factory.get(self.fake_path)
     view = TaskView()
     view = setup_view(view, request, **self.task_data)
     view.task = AbstractTask()
     view.template_name = self.template_name
     response = view.get(request)
     self.assertEqual(view.task, None)
     self.assertEqual(view.error_message, 'Broker returned no tasks')
     self.assertEqual(view.error_template, 'error-messages/no-tasks.html')
     self.assertEqual(response.status_code, 200)
     _get_task_mock.assert_any_call()
     _get_form_class_data_mock.assert_not_called()
     get_context_data_mock.assert_any_call()
Esempio n. 6
0
 def test_get_presenter_not_defined(self, get_context_data_mock: MagicMock,
                                    _get_form_class_data_mock: MagicMock,
                                    _get_task_mock: MagicMock):
     _get_task_mock.side_effect = PresenterNotDefined
     request = self.factory.get(self.fake_path)
     view = TaskView()
     view = setup_view(view, request, **self.task_data)
     view.task = AbstractTask()
     view.template_name = self.template_name
     response = view.get(request)
     self.assertEqual(view.task, None)
     self.assertEqual(view.error_message, 'Presenter not defined')
     self.assertEqual(view.error_template,
                      'error-messages/presenter-not-defined.html')
     self.assertEqual(response.status_code, 200)
     _get_task_mock.assert_any_call()
     _get_form_class_data_mock.assert_not_called()
     get_context_data_mock.assert_any_call()
Esempio n. 7
0
 def test_get_improperly_configured(self, get_context_data_mock: MagicMock,
                                    _get_form_class_data_mock: MagicMock,
                                    _get_task_mock: MagicMock):
     _get_task_mock.side_effect = ImproperlyConfigured
     request = self.factory.get(self.fake_path)
     view = TaskView()
     view = setup_view(view, request, **self.task_data)
     view.task = AbstractTask()
     view.template_name = self.template_name
     response = view.get(request)
     self.assertEqual(view.task, None)
     self.assertEqual(view.error_message, 'Improperly configured PyBossa')
     self.assertEqual(view.error_template,
                      'error-messages/improperly-configured.html')
     self.assertEqual(response.status_code, 200)
     _get_task_mock.assert_any_call()
     _get_form_class_data_mock.assert_not_called()
     get_context_data_mock.assert_any_call()