def test_coupon_count_by_type(self): self.cpolicy.SetProbability(1.0) def newcoupon(type, test=False): o = model.Order(status=model.Order.ST_PAID, price=300.0, create_time=datetime.datetime.now(), coupon_type=type, test=test) o.put() c = model.Coupon(order=o, status=model.Coupon.ST_ACTIVE, ) c.put() newcoupon("training") newcoupon("training") newcoupon("acro") newcoupon("acro", test=True) # Calculate statistics stats = model.coupon_count_by_type() # Verify stats self.assertEqual(stats, {"training": 2, "acro": 1})
def get(self): values = memcache.get('stats') if not values: byorderstatus = model.order_count_by_status() bytype = model.coupon_count_by_type() bycouponstatus = model.coupon_count_by_status() values = {'orders_by_status': byorderstatus, 'coupons_by_type': bytype, 'coupons_by_status': bycouponstatus} logging.info("Uncached: %s" % values) memcache.add('stats', values, 60 * 60 * 24) write_template(self.response, "dashboard.html", values)