From 81118821a3d77ab170af6e24395e3875b62cc651 Mon Sep 17 00:00:00 2001 From: Myles Bostwick Date: Tue, 11 Nov 2014 14:14:21 -0700 Subject: [PATCH] Add a test showing route_base failure with parameter when defined in class. --- test_classy/test_route_base.py | 20 +++++++++++++++++--- test_classy/view_classes.py | 6 ++++++ 2 files changed, 23 insertions(+), 3 deletions(-) diff --git a/test_classy/test_route_base.py b/test_classy/test_route_base.py index 158028c..705f6f7 100644 --- a/test_classy/test_route_base.py +++ b/test_classy/test_route_base.py @@ -1,12 +1,26 @@ from flask import Flask -from .view_classes import BasicView, RouteBaseView +from .view_classes import BasicView, RouteBaseView, RouteBaseView2 from nose.tools import * -app = Flask('route_base') -RouteBaseView.register(app, route_base="/rb_test2/") def test_route_base_override(): + app = Flask('route_base') + RouteBaseView.register(app, route_base="/rb_test2/") client = app.test_client() resp = client.get('/rb_test2/') eq_(b"Index", resp.data) + +def test_route_base_with_parameter_in_class(): + app = Flask('route_base') + RouteBaseView2.register(app) + client = app.test_client() + resp = client.get('/rb_test3/id/') + eq_(b"Index with parameter id", resp.data) + +def test_route_base_with_parameter_in_override(): + app = Flask('route_base') + RouteBaseView2.register(app, route_base="/rb_test3//") + client = app.test_client() + resp = client.get('/rb_test3/id/') + eq_(b"Index with parameter id", resp.data) diff --git a/test_classy/view_classes.py b/test_classy/view_classes.py index 5ad1e3a..7a8e1f5 100644 --- a/test_classy/view_classes.py +++ b/test_classy/view_classes.py @@ -78,6 +78,12 @@ class RouteBaseView(FlaskView): def index(self): return "Index" +class RouteBaseView2(FlaskView): + route_base = "/base-routed//" + + def index(self, ident): + return "Index with parameter %s" % ident + class RoutePrefixView(FlaskView): route_prefix = "/my_prefix/"