Example #1
0
    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)
Example #2
0
    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)
Example #3
0
    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())