Ejemplo n.º 1
0
    def test_update_from_post(self):

       # all zero times
        pa = Period_Accounting(scheduled = 0.0)
        pa.save()

        fields = pa.getFloatFields()
        for f in fields:
            self.assertEquals(0.0, pa.get_time(f))

        fdata = {}
        pa.update_from_post(fdata)
        for f in fields:
            self.assertEquals(0.0, pa.get_time(f))

        fdata = {"scheduled" : 4.0
               , "lost_time_weather" : 1.0
               , "lost_time_bill_project" : 1.0
               , "not_billable" : 1.0
                 }
        pa.update_from_post(fdata)
        nonzero = fdata.keys()
        nonzero.extend(["observed"
                      , "lost_time"
                      , "time_billed"])
        for f in fields:
            if f not in nonzero:
                self.assertEquals(0.0, pa.get_time(f))
        self.assertEquals(pa.get_time("scheduled"), 4.0)    
        self.assertEquals(pa.get_time("observed"),  3.0)    
        self.assertEquals(pa.get_time("time_billed"),  2.0)    
        self.assertEquals(pa.get_time("lost_time_weather"), 1.0)    
        self.assertEquals(pa.get_time("lost_time"), 1.0)