def testTotalCarbonFootprint(self): totalModeDistance = carbon.getModeCarbonFootprint(None, carbon.carbonFootprintForMode, self.weekago, self.now) self.assertEqual(totalModeDistance['walking'], 0) self.assertEqual(totalModeDistance['cycling'], 0) # We divide by 1000 to make it comprehensible in getModeCarbonFootprint self.assertEqual(totalModeDistance['bus_short'], (self.busCarbon * len(self.testUsers) * self.busExpect)/1000) self.assertEqual(totalModeDistance['air_short'], (self.airCarbon * len(self.testUsers) * self.busExpect)/1000) self.assertEqual(totalModeDistance['train_short'], 0)
def testMyCarbonFootprint(self): myModeDistance = carbon.getModeCarbonFootprint('*****@*****.**', carbon.carbonFootprintForMode, self.weekago, self.now) self.assertEqual(myModeDistance['walking'], 0) self.assertEqual(myModeDistance['cycling'], 0) self.assertEqual(myModeDistance['bus_short'], (self.busCarbon * self.busExpect/1000)) self.assertEqual(myModeDistance['train_short'], 0) # We duplicate the bus trips to get air trips, so the distance should be the same self.assertEqual(myModeDistance['air_short'], (self.airCarbon * self.busExpect/1000))
def testMyCarbonFootprint(self): myModeDistance = carbon.getModeCarbonFootprint( '*****@*****.**', carbon.carbonFootprintForMode, self.weekago, self.now) self.assertEqual(myModeDistance['walking'], 0) self.assertEqual(myModeDistance['cycling'], 0) self.assertEqual(myModeDistance['bus_short'], (self.busCarbon * self.busExpect / 1000)) self.assertEqual(myModeDistance['train_short'], 0) # We duplicate the bus trips to get air trips, so the distance should be the same self.assertEqual(myModeDistance['air_short'], (self.airCarbon * self.busExpect / 1000))
def testTotalCarbonFootprint(self): totalModeDistance = carbon.getModeCarbonFootprint( None, carbon.carbonFootprintForMode, self.weekago, self.now) self.assertEqual(totalModeDistance['walking'], 0) self.assertEqual(totalModeDistance['cycling'], 0) # We divide by 1000 to make it comprehensible in getModeCarbonFootprint self.assertEqual( totalModeDistance['bus_short'], (self.busCarbon * len(self.testUsers) * self.busExpect) / 1000) self.assertEqual( totalModeDistance['air_short'], (self.airCarbon * len(self.testUsers) * self.busExpect) / 1000) self.assertEqual(totalModeDistance['train_short'], 0)
def carbon_by_zip(start,end): Profiles=get_profile_db() carbon_list=[] for zip in Profiles.distinct('zip'): # print(zip) if zip!='N/A': tempdict={} tempdict['weight']=Profiles.find({'zip':zip}).count() # print(Profiles.find({'zip':zip}).count()) tempdict['carbon']=0 for profile in Profiles.find({'zip':zip}): tempdict['loc']=profile['zip_centroid'] user=profile['user_id'] user_carbon=getModeCarbonFootprint(user,carbonFootprintForMode,start,end) tempdict['carbon']+=sum(list(user_carbon.values())) tempdict['carbon']=tempdict['carbon']/tempdict['weight'] carbon_list.append(tempdict) return {"weightedLoc": carbon_list}
def carbon_by_zip(start, end): Profiles = get_profile_db() carbon_list = [] for zip in Profiles.distinct('zip'): # print(zip) if zip != 'N/A': tempdict = {} tempdict['weight'] = Profiles.find({'zip': zip}).count() # print(Profiles.find({'zip':zip}).count()) tempdict['carbon'] = 0 for profile in Profiles.find({'zip': zip}): tempdict['loc'] = profile['zip_centroid'] user = profile['user_id'] user_carbon = getModeCarbonFootprint(user, carbonFootprintForMode, start, end) tempdict['carbon'] += sum(list(user_carbon.values())) tempdict['carbon'] = tempdict['carbon'] / tempdict['weight'] carbon_list.append(tempdict) return {"weightedLoc": carbon_list}