コード例 #1
0
 def test_add_remove_project(self):
     self.failUnlessEqual(Project.objects.count(),0)
     proj = Project(name='test',order=0, doc_type='STD', description='test_add_remove_project', task_group='TGx', par_date=datetime.datetime.now())
     proj.save()
     self.failUnlessEqual(Project.objects.count(),1)
     run_test_task_queue(self.client)
     self.failUnlessEqual(Project.objects.count(),1)
     self.failUnlessEqual(DenormalizedProject.objects.count(),1)
     dn = DenormalizedProject.objects.get(pk=proj.pk)
     self.failIfEqual(dn,None)
     self.failUnlessEqual(Project.objects.count(),1)
     proj.delete()
     self.failUnlessEqual(Project.objects.count(),0)
     run_test_task_queue(self.client)
     self.failUnlessEqual(DenormalizedProject.objects.count(),0)
コード例 #2
0
ファイル: project_bl.py プロジェクト: mayns/scienc
 def delete(cls, project_id):
     """
     Удалить участников, удалить вакансии, поставить статус откликам - удаленные.
     У ученого убрать из managing_project_ids.
     """
     project = yield Project.get_by_id(project_id)
     for participant_id in project.participants:
         yield cls.delete_participant(participant_id)
     for vacancy_id in project.vacancies:
         yield cls.delete_vacancy(vacancy_id)
     for response_id in project.responses:
         yield cls.set_del_status_response(response_id)
     scientist = yield Scientist.get_by_id(project.manager_id)
     scientist.managing_project_ids.remove(project_id)
     yield scientist.save(fields=[u'managing_project_ids'], columns=[u'managing_project_ids'])
     yield Project.delete(project_id, tbl=Project.TABLE)
コード例 #3
0
 def delete(cls, project_id):
     """
     Удалить участников, удалить вакансии, поставить статус откликам - удаленные.
     У ученого убрать из managing_project_ids.
     """
     project = yield Project.get_by_id(project_id)
     for participant_id in project.participants:
         yield cls.delete_participant(participant_id)
     for vacancy_id in project.vacancies:
         yield cls.delete_vacancy(vacancy_id)
     for response_id in project.responses:
         yield cls.set_del_status_response(response_id)
     scientist = yield Scientist.get_by_id(project.manager_id)
     scientist.managing_project_ids.remove(project_id)
     yield scientist.save(fields=[u'managing_project_ids'],
                          columns=[u'managing_project_ids'])
     yield Project.delete(project_id, tbl=Project.TABLE)