def setUp(self): super().setUp() self.user = UserFactory() self.client.force_login(self.user) self.task_activity = TaskActivityTypeFactory() self.project = ProjectFactory() self.project.members.add(self.user) self.report = ReportFactory(author=self.user, project=self.project, task_activity=self.task_activity) self.url = reverse("custom-report-detail", args=(self.report.pk, )) self.data = { "date": self.report.date, "description": self.report.description, "project": self.project.pk, "author": self.report.author.pk, "task_activity": self.task_activity.pk, "work_hours": self.report.work_hours_str, } self.expected_success_message = SuccessPopUpMessages.REPORT_UPDATE.value.format( report_date=self.report.date, project_name=self.project.name)
def setUp(self): super().setUp() self.employee1 = UserFactory(first_name="Cezar", last_name="Goldstein") self.employee2 = UserFactory(first_name="", last_name="", email="*****@*****.**") self.employee3 = UserFactory(first_name="Abimelek", last_name="Zuckerberg") self.manager = ManagerUserFactory() self.project = ProjectFactory() self.project.members.add(self.employee1) self.project.members.add(self.employee2) self.project.members.add(self.employee3) reports_in_day = 2 # creating reports in desc order number_of_days = 4 self.year = "2019" self.month = "06" for i in range(number_of_days, 0, -1): for _ in range(reports_in_day): ReportFactory(author=self.employee2, project=self.project, date=f"{self.year}-{self.month}-{i}") ReportFactory(author=self.employee3, project=self.project, date=f"{self.year}-{self.month}-{i}") ReportFactory(author=self.employee1, project=self.project, date=f"{self.year}-{self.month}-{i}") self.report_asc = Report.objects.filter(author__id=self.employee1.pk).order_by("date") self.reports_per_user = reports_in_day * number_of_days
def setUp(self): super().setUp() self.admin = AdminUserFactory() self.user = UserFactory() self.task_activity = TaskActivityTypeFactory() self.project = ProjectFactory() self.project.members.add(self.user) self.client.force_login(self.admin) self.report = ReportFactory(author=self.user, project=self.project, task_activity=self.task_activity) self.url = reverse("admin-report-detail", kwargs={"pk": self.report.pk}) self.data = { "date": timezone.now().date(), "description": "Some other description", "project": self.report.project.pk, "author": self.user.pk, "task_activity": self.task_activity.pk, "work_hours": "8:00", "current-project-pk": self.report.project.pk, }
def setUp(self): super().setUp() self.project = ProjectFactory() self.url = reverse("custom-projects-list")
def setUp(self): super().setUp() self.project = ProjectFactory() self.url = reverse("custom-project-detail", kwargs={"pk": self.project.pk})
def setUp(self) -> None: self.number_of_reports = 6 self.project = ProjectFactory(name="Test project") self.user = UserFactory() self.project.members.add(self.user) self._generate_user_reports()
def setUp(self) -> None: self.user = UserFactory(user_type=CustomUser.UserType.EMPLOYEE.name) for _project_number in range(2): ProjectFactory(start_date=timezone.now(), suspended=True)
def setUp(self): super().setUp() self.user = UserFactory() self.project_1 = ProjectFactory() self.project_2 = ProjectFactory()
def create_project(self, project_type: str, number_of_projects_to_create: int) -> None: factory_parameters = self._set_project_factory_parameters(project_type) for project_number in range(number_of_projects_to_create): logging.info(f"{number_of_projects_to_create - project_number} {project_type} project(s) left to create") ProjectFactory(**factory_parameters)
def handle(self, *args, **options): # # Users # user_admin = User.objects.filter(email="*****@*****.**").first() if user_admin is None: user_admin = UserFactory(email="*****@*****.**", user_type=User.UserType.ADMIN.name, is_superuser=True, is_staff=True) user_admin.set_password("superuser") # pylint: disable=no-value-for-parameter user_admin.save() user_employee_1 = User.objects.filter( email="*****@*****.**").first() if user_employee_1 is None: user_employee_1 = UserFactory( email="*****@*****.**", user_type=User.UserType.EMPLOYEE.name, first_name="Mieczysław", last_name="Mietkowiak", ) user_employee_1.set_password("passwduser") # pylint: disable=no-value-for-parameter user_employee_1.save() user_employee_2 = User.objects.filter( email="*****@*****.**").first() if user_employee_2 is None: user_employee_2 = UserFactory( email="*****@*****.**", user_type=User.UserType.EMPLOYEE.name, first_name="Andromeda", last_name="Adamiak", ) user_employee_2.set_password("passwduser") # pylint: disable=no-value-for-parameter user_employee_2.save() user_manager_1 = User.objects.filter( email="*****@*****.**").first() if user_manager_1 is None: user_manager_1 = UserFactory( email="*****@*****.**", user_type=User.UserType.MANAGER.name, first_name="Jan", last_name="Nowakowski", ) user_manager_1.set_password("passwduser") # pylint: disable=no-value-for-parameter user_manager_1.save() user_manager_2 = User.objects.filter( email="*****@*****.**").first() if user_manager_2 is None: user_manager_2 = UserFactory( email="*****@*****.**", user_type=User.UserType.MANAGER.name, first_name="Anna", last_name="Małomówna", ) user_manager_2.set_password("passwduser") # pylint: disable=no-value-for-parameter user_manager_2.save() user_employee_3 = User.objects.filter( email="*****@*****.**").first() if user_employee_3 is None: user_employee_3 = UserFactory( email="*****@*****.**", user_type=User.UserType.EMPLOYEE.name, first_name="Kurt", last_name="Schmidt", ) user_employee_3.set_password("passwduser") # pylint: disable=no-value-for-parameter user_employee_3.save() # # Projects # project_stopped = Project.objects.filter(name="Time monkey").first() if project_stopped is None: project_stopped = ProjectFactory( name="Time monkey", start_date=timezone.now() - timezone.timedelta(days=4 * 7), stop_date=timezone.now() - timezone.timedelta(days=2 * 7), ) self._add_manager_to_project_if_not_added_yet(project_stopped, user_manager_1) self._add_member_to_project_if_not_added_yet(project_stopped, user_employee_1) self._add_member_to_project_if_not_added_yet(project_stopped, user_employee_2) self._add_member_to_project_if_not_added_yet(project_stopped, user_manager_1) self._add_member_to_project_if_not_added_yet(project_stopped, user_manager_2) project_pending = Project.objects.filter(name="Sheet storm").first() if project_pending is None: project_pending = ProjectFactory(name="Sheet storm", start_date=timezone.now() - timezone.timedelta(days=2 * 7)) self._add_manager_to_project_if_not_added_yet(project_pending, user_manager_1) self._add_member_to_project_if_not_added_yet(project_pending, user_employee_1) self._add_member_to_project_if_not_added_yet(project_pending, user_employee_2) self._add_member_to_project_if_not_added_yet(project_pending, user_manager_1) project_suspended = Project.objects.filter(name="e_munchkin").first() if project_suspended is None: project_suspended = ProjectFactory(name="e_munchkin", start_date=timezone.now() - timezone.timedelta(days=7), suspended=True) self._add_manager_to_project_if_not_added_yet(project_suspended, user_manager_1) self._add_member_to_project_if_not_added_yet(project_suspended, user_employee_2) self._add_member_to_project_if_not_added_yet(project_suspended, user_employee_3) self._add_member_to_project_if_not_added_yet(project_suspended, user_manager_1) self._add_member_to_project_if_not_added_yet(project_suspended, user_manager_2) # # Task activities # task_activity_review, _ = TaskActivityType.objects.get_or_create( name="Review") task_activity_backend_development, _ = TaskActivityType.objects.get_or_create( name="Backend Development") task_activity_frontend_development, _ = TaskActivityType.objects.get_or_create( name="Frontend Development") task_activity_meeting, _ = TaskActivityType.objects.get_or_create( name="Meeting") # # Reports # ReportFactory( date=timezone.now() - timezone.timedelta(days=2), description= "Some report\r\ncontaining multiple lines\r\\nin description.", author=user_employee_1, project=project_pending, work_hours=timezone.timedelta(hours=8), editable=True, task_activities=task_activity_review, ) ReportFactory( date=timezone.now() - timezone.timedelta(days=1), description="Some report", author=user_employee_1, project=project_pending, work_hours=timezone.timedelta(hours=4), editable=True, task_activities=task_activity_review, ) ReportFactory( date=timezone.now() - timezone.timedelta(days=1), description="Some report on the same day as other.", author=user_employee_1, project=project_stopped, work_hours=timezone.timedelta(hours=4), editable=True, task_activities=task_activity_review, ) ReportFactory( date=timezone.now() - timezone.timedelta(days=1), description="Some report", author=user_employee_2, project=project_pending, work_hours=timezone.timedelta(hours=6), editable=True, task_activities=task_activity_review, ) ReportFactory( date=timezone.now() - timezone.timedelta(days=2), description="Some report containing hours with fraction", author=user_employee_2, project=project_suspended, work_hours=timezone.timedelta(hours=8, minutes=30), editable=True, task_activities=task_activity_backend_development, ) ReportFactory( date=timezone.now() - timezone.timedelta(days=2), description= "Some report containing:\r\n- multiple lines\\ in description\r\n- time with fraction", author=user_manager_1, project=project_pending, work_hours=timezone.timedelta(hours=7, minutes=59), editable=True, task_activities=task_activity_backend_development, ) ReportFactory( date=timezone.now() - timezone.timedelta(days=1), description="Some report", author=user_manager_1, project=project_pending, work_hours=timezone.timedelta(hours=2), editable=True, task_activities=task_activity_backend_development, ) ReportFactory( date=timezone.now() - timezone.timedelta(days=1), description="Some report containing time with fraction.", author=user_manager_2, project=project_stopped, work_hours=timezone.timedelta(hours=7, minutes=1), editable=True, task_activities=task_activity_frontend_development, ) ReportFactory( date=timezone.now() - timezone.timedelta(days=2), description="Some report", author=user_manager_2, project=project_suspended, work_hours=timezone.timedelta(hours=8), editable=True, task_activities=task_activity_frontend_development, ) ReportFactory( date=timezone.now() - timezone.timedelta(days=1), description="Some report on the same day as other", author=user_manager_1, project=project_stopped, work_hours=timezone.timedelta(hours=2), editable=True, task_activities=task_activity_frontend_development, ) ReportFactory( date=timezone.now() - timezone.timedelta(days=1), description="Some report on the same day as other two", author=user_manager_1, project=project_suspended, work_hours=timezone.timedelta(hours=4), editable=True, task_activities=task_activity_meeting, ) ReportFactory( date=timezone.now() - timezone.timedelta(days=1), description="Some report", author=user_employee_3, project=project_suspended, work_hours=timezone.timedelta(hours=8), editable=True, task_activities=task_activity_meeting, )
def _generate_test_projects(queryset_length: int): for _ in range(queryset_length): ProjectFactory()