Exemplo n.º 1
0
 def test_can_give_total_time_for_month(self):
     m = Month(2012, 10)
     w = Week()
     w.set_day(4, TimeRange(Time(7), Time(17, 10)))
     m.add_week(40, w)
     m.add_week(42, w)
     self.assertEquals(m.get_total_time(), Hours(20, 20))
Exemplo n.º 2
0
 def test_can_enter_times_into_first_incomplete_week(self):
     m = Month(2012, 11)
     w = Week()
     w.set_day(0, TimeRange(Time(7), Time(17)))
     w.set_day(3, TimeRange(Time(8), Time(18)))
     m.add_week(44, w)
     self.assertEquals(m.get_day(1), TimeRange(Time(8), Time(18)))
Exemplo n.º 3
0
 def test_can_return_week(self):
     m = Month(2012, 10)
     w = Week()
     w.set_day(0, TimeRange(Time(7), Time(17)))
     m.add_week(40, w)
     self.assertEquals(
         m.get_week(40).get_day(0), TimeRange(Time(7), Time(17)))
Exemplo n.º 4
0
 def test_can_give_total_time_for_month(self):
     m = Month(2012, 10)
     w = Week()
     w.set_day(4, TimeRange(Time(7), Time(17, 10)))
     m.add_week(40, w)
     m.add_week(42, w)
     self.assertEquals(m.get_total_time(), Hours(20, 20))
Exemplo n.º 5
0
 def test_can_enter_times_into_first_incomplete_week(self):
     m = Month(2012, 11)
     w = Week()
     w.set_day(0, TimeRange(Time(7), Time(17)))
     w.set_day(3, TimeRange(Time(8), Time(18)))
     m.add_week(44, w)
     self.assertEquals(m.get_day(1), TimeRange(Time(8), Time(18)))
Exemplo n.º 6
0
 def test_can_enter_times_from_last_week_in_month(self):
     m = Month(2012, 10)
     w = Week()
     w.set_day(2, TimeRange(Time(7), Time(17)))
     w.set_day(3, TimeRange(Time(7), Time(17)))
     m.add_week(44, w)
     self.assertEquals(m.get_day(31), TimeRange(Time(7), Time(17)))
     self.assertNotEquals(m.get_day(32), TimeRange(Time(7), Time(17)))
Exemplo n.º 7
0
    def test_can_return_half_week(self):
        m = Month(2012, 11)
        w = Week()
        w.set_day(2, TimeRange(Time(7), Time(17)))
        w.set_day(3, TimeRange(Time(8), Time(18)))
        m.add_week(44, w)

        self.assertEquals(m.get_week(44).get_day(2), None)
Exemplo n.º 8
0
    def test_can_return_half_week(self):
        m = Month(2012, 11)
        w = Week()
        w.set_day(2, TimeRange(Time(7), Time(17)))
        w.set_day(3, TimeRange(Time(8), Time(18)))
        m.add_week(44, w)

        self.assertEquals(m.get_week(44).get_day(2), None)
Exemplo n.º 9
0
 def test_can_enter_times_from_last_week_in_month(self):
     m = Month(2012, 10)
     w = Week()
     w.set_day(2, TimeRange(Time(7), Time(17)))
     w.set_day(3, TimeRange(Time(7), Time(17)))
     m.add_week(44, w)
     self.assertEquals(m.get_day(31), TimeRange(Time(7), Time(17)))
     self.assertNotEquals(m.get_day(32), TimeRange(Time(7), Time(17)))
Exemplo n.º 10
0
    def generate_montly_report(self, month_number, hours):
        m = Month(self.year, month_number)
        for w in m.get_week_numbers():
            if month_number == 12 and w == 1:
                schedule = self.next_year.get_schedule_for_week(w, hours)
            else:
                schedule = self.get_schedule_for_week(w, hours)
            m.add_week(w, schedule)

        return m
Exemplo n.º 11
0
 def test_returns_correctly_annotated_week_for_start_of_month(self):
     m = Month(2012, 11)
     w = Week()
     for i in xrange(7):
         w.set_day(i, TimeRange(Time(7), Time(17)))
     m.add_week(44, w)
     aw = m.get_week(44)
     self.assertEquals(aw.get_earliest_day_in_month(), 1)
     self.assertEquals(aw.get_first_valid_day(), 3)
     self.assertEquals(aw.get_last_valid_day(), 6)
Exemplo n.º 12
0
    def generate_montly_report(self, month_number, hours):
        m = Month(self.year, month_number)
        for w in m.get_week_numbers():
            if month_number == 12 and w == 1:
                schedule = self.next_year.get_schedule_for_week(w, hours)
            else:
                schedule = self.get_schedule_for_week(w, hours)
            m.add_week(w, schedule)

        return m
Exemplo n.º 13
0
 def test_returns_correctly_annotated_week_for_start_of_month(self):
     m = Month(2012, 11)
     w = Week()
     for i in xrange(7):
         w.set_day(i, TimeRange(Time(7), Time(17)))
     m.add_week(44, w)
     aw = m.get_week(44)
     self.assertEquals(aw.get_earliest_day_in_month(), 1)
     self.assertEquals(aw.get_first_valid_day(), 3)
     self.assertEquals(aw.get_last_valid_day(), 6)
Exemplo n.º 14
0
 def test_returns_annotated_weeks(self):
     m = Month(2012, 10)
     w = Week()
     w.set_day(0, TimeRange(Time(7), Time(17)))
     m.add_week(40, w)
     self.assertEquals(type(m.get_week(40)), AnnotatedWeek)
Exemplo n.º 15
0
 def test_can_enter_times_from_second_week(self):
     m = Month(2012, 10)
     w = Week()
     w.set_day(0, TimeRange(Time(7), Time(17)))
     m.add_week(41, w)
     self.assertEquals(m.get_day(8), TimeRange(Time(7), Time(17)))
Exemplo n.º 16
0
 def test_can_return_week(self):
     m = Month(2012, 10)
     w = Week()
     w.set_day(0, TimeRange(Time(7), Time(17)))
     m.add_week(40, w)
     self.assertEquals(m.get_week(40).get_day(0), TimeRange(Time(7), Time(17)))
Exemplo n.º 17
0
 def test_can_add_week_1_of_next_year_to_december(self):
     m = Month(2012, 12)
     w = Week()
     w.set_day(0, TimeRange(Time(7), Time(10)))
     m.add_week(1, w)
     self.assertEquals(m.get_day(31), TimeRange(Time(7), Time(10)))
Exemplo n.º 18
0
 def test_can_add_week_52_of_previous_year_to_january(self):
     m = Month(2012, 1)
     w = Week()
     w.set_day(6, TimeRange(Time(7), Time(10)))
     m.add_week(52, w)
     self.assertEquals(m.get_day(1), TimeRange(Time(7), Time(10)))
Exemplo n.º 19
0
 def test_can_add_week_52_of_previous_year_to_january(self):
     m = Month(2012, 1)
     w = Week()
     w.set_day(6, TimeRange(Time(7), Time(10)))
     m.add_week(52, w)
     self.assertEquals(m.get_day(1), TimeRange(Time(7), Time(10)))
Exemplo n.º 20
0
 def test_can_add_week_1_of_next_year_to_december(self):
     m = Month(2012, 12)
     w = Week()
     w.set_day(0, TimeRange(Time(7), Time(10)))
     m.add_week(1, w)
     self.assertEquals(m.get_day(31), TimeRange(Time(7), Time(10)))
Exemplo n.º 21
0
 def test_returns_annotated_weeks(self):
     m = Month(2012, 10)
     w = Week()
     w.set_day(0, TimeRange(Time(7), Time(17)))
     m.add_week(40, w)
     self.assertEquals(type(m.get_week(40)), AnnotatedWeek)
Exemplo n.º 22
0
 def test_can_enter_times_from_second_week(self):
     m = Month(2012, 10)
     w = Week()
     w.set_day(0, TimeRange(Time(7), Time(17)))
     m.add_week(41, w)
     self.assertEquals(m.get_day(8), TimeRange(Time(7), Time(17)))