def test_should_get_questionnaires_for_user(self): form_model_id = self._create_sample_questionnaire() user_permission = UserPermission(self.manager, 1, [form_model_id]) user_permission.save() questionnaires = get_questionnaires_for_user(1, self.manager) self.assertEqual(questionnaires[0]['_id'], form_model_id) self.assertEqual(questionnaires[0].get('is_project_manager'), True)
def test_should_get_user_permission(self): user_permission = UserPermission(self.manager, 1, ["q1", "q2"]) user_permission.save() saved_user_permission = get_user_permission(1, self.manager) self.assertEquals(saved_user_permission.project_ids, ["q1", "q2"], "Questionnaires doesn't match") self.assertEquals(saved_user_permission.user_id, 1, "User id doesn't match")
def test_should_update_user_permission(self): user_permission = UserPermission(self.manager, 1, ['q1', 'q2']) user_permission.save() #Remove all questionnaires update_user_permission(self.manager, 1, []) questionnaires = get_questionnaires_for_user(1, self.manager) self.assertEqual(len(questionnaires), 0) #Again add some questionnaires form_model_id = self._create_sample_questionnaire() update_user_permission(self.manager, 1, [form_model_id]) questionnaires = get_questionnaires_for_user(1, self.manager) self.assertEqual(questionnaires[0]['_id'], form_model_id) self.assertEqual(questionnaires[0].get('is_project_manager'), True)
def link_user_to_some_projects(user_id, *projects): user = User.objects.get(pk=user_id) reporter_id = user.get_profile().reporter_id manager = get_database_manager(user) UserPermission(manager, user_id, list(projects)).save() for projet in projects: make_user_data_sender_with_project(manager, reporter_id, projet)
def test_should_get_questionnaires_for_user_excluding_deleted_questionnaires( self): entity_type = [] question3 = IntegerField( name="Father's age", code="Q2", label="What is your Father's Age", constraints=[NumericRangeConstraint(min=15, max=120)]) form_model = FormModel(self.manager, name='New survey', label='Survey122', form_code='S122', fields=[question3], is_registration_model=False) form_model.void(True) form_model_id = form_model.save() user_permission = UserPermission(self.manager, 1, [form_model_id]) user_permission.save() questionnaires = get_questionnaires_for_user(1, self.manager) self.assertEqual(len(questionnaires), 0)
def associate_user_with_projects(manager, reporter_id, user_id, project_ids): make_user_data_sender_for_projects(manager, project_ids, reporter_id) UserPermission(manager, user_id, project_ids).save()
def test_should_check_user_has_permission(self): form_model_id = self._create_sample_questionnaire() user_permission = UserPermission(self.manager, 1, [form_model_id]) user_permission.save() self.assertTrue(has_permission(self.manager, 1, form_model_id)) self.assertFalse(has_permission(self.manager, 1, 'some_other_project'))
def test_should_save_user_permission(self): user_permission = UserPermission(self.manager, 1, ["q1", "q2"]) user_permission_id = user_permission.save() self.assertIsNotNone(user_permission_id, "Id not present. User Permission is not saved")