Ejemplo n.º 1
0
 def test_users (self):
     user_1 = User.cached("1")
     project_1 = Project.cached("1")
     project_2 = Project.cached("2")
     resource_1 = Resource.cached("1")
     resource_2 = Resource.cached("2")
     start = datetime(2000, 1, 1)
     end = start + timedelta(weeks=1)
     allocation_1 = Allocation(project_1, resource_1, 10, start, end)
     allocation_2 = Allocation(project_1, resource_1, 20, start, end)
     allocation_3 = Allocation(project_2, resource_1, 30, start, end)
     allocation_4 = Allocation(project_2, resource_2, 35, start, end)
     job_1 = Job("1.1")
     job_2 = Job("1.2")
     job_3 = Job("1.3")
     job_4 = Job("2.1")
     job_5 = Job("2.2")
     job_1.user = user_1
     job_3.user = user_1
     job_5.user = user_1
     job_1.account = project_1
     job_2.account = project_1
     job_3.account = project_1
     job_4.account = project_2
     job_5.account = project_2
     job_1.charges = [Charge(allocation_1, 10)]
     job_2.charges = [Charge(allocation_2, 15)]
     job_3.charges = [Charge(allocation_2, 5)]
     job_4.charges = [Charge(allocation_4, 9)]
     job_5.charges = [Charge(allocation_4, 8)]
     Refund(job_1.charges[0], 4)
     Refund(job_2.charges[0], 3)
     Refund(job_2.charges[0], 5)
     Refund(job_5.charges[0], 8)
     Session.add_all([allocation_1, allocation_2, allocation_3, allocation_4])
     assert_equal(
         list(project_summary([project_1, project_2], users=[user_1])),
         [("1", 2, 11, 12), ("2", 1, 0, 56)])