def test_order_create(self): ct = model.CouponType('test', 300.0, "Test flight") order = model.order_create(model.order_gen_id(), ct, test=True) self.assertEqual(order.coupon_type, 'test') self.assertEqual(order.price, 300.0) self.assertEqual(order.status == model.Order.ST_PENDING, True) self.assertEqual(order.currency, 'EUR') self.assertIsNotNone(order.create_time)
def post(self, name): ct = model.get_coupon_type(name) assert ct.in_stock, "Cannot order this item" order_id = model.order_gen_id() order = model.order_create(order_id, ct, test=self.app.config['debug']) data = self.prepare_webtopay_request(order, ct) logging.info('Starting payment transaction for %s' % data) url = webtopay.get_redirect_to_payment_url(data) webapp2.redirect(url, abort=True)
def test_order_cancel(self): # Create order ct = model.CouponType('test', 300.0, "Test flight") order = model.order_create(model.order_gen_id(), ct, test=True) # Cancelling order changes its status cancelled = model.order_cancel(order.key().name()) self.assertEqual(cancelled.status, model.Order.ST_CANCELLED) # You cannot cancel already cancelled order with self.assertRaisesRegexp(ValueError, r'Cannot cancel non-pending order .*'): model.order_cancel(order.key().name())