class TestPluginModuleRoutes(TestCase): def setUp(self): self.plugin = Plugin('My Plugin', 'my.plugin.id') self.module = Module('mymodule') def test_routes(self): @self.module.route('/') def mock_view(): return 'foo' @self.plugin.route('/') def mock_view2(): return 'bar' self.plugin.register_module(self.module, '/module') self.assertEqual(self.plugin.dispatch('/'), 'bar') self.assertEqual(self.plugin.dispatch('/module/'), 'foo') self.assertEqual(self.plugin.url_for('mock_view2'), 'special://my.plugin.id/') self.assertEqual(self.plugin.url_for('mymodule.mock_view'), 'special://my.plugin.id/module/') self.assertEqual(self.module.url_for('mock_view'), 'special://my.plugin.id/module/') print 'here?'
class TestPluginModuleRoutes(TestCase): def setUp(self): self.plugin = Plugin("My Plugin", "my.plugin.id") self.module = Module("mymodule") def test_routes(self): @self.module.route("/") def mock_view(): return "foo" @self.plugin.route("/") def mock_view2(): return "bar" self.plugin.register_module(self.module, "/module") self.assertEqual(self.plugin.dispatch("/"), "bar") self.assertEqual(self.plugin.dispatch("/module/"), "foo") self.assertEqual(self.plugin.url_for("mock_view2"), "special://my.plugin.id/") self.assertEqual(self.plugin.url_for("mymodule.mock_view"), "special://my.plugin.id/module/") self.assertEqual(self.module.url_for("mock_view"), "special://my.plugin.id/module/") print "here?"
class TestPluginRoutes(TestCase): def setUp(self): self.plugin = Plugin('My Plugin', 'my.plugin.id') def test_single_route(self): @self.plugin.route('/') def mock_view(): return 'foo' self.assertEqual(self.plugin.dispatch('/'), 'foo') self.assertEqual(self.plugin.url_for('mock_view'), 'special://my.plugin.id/') def test_multi_routes(self): @self.plugin.route('/') def mock_view(): return 'foo' @self.plugin.route('/bar') def mock_view2(): return 'bar' self.assertEqual(self.plugin.dispatch('/'), 'foo') self.assertEqual(self.plugin.url_for('mock_view'), 'special://my.plugin.id/') self.assertEqual(self.plugin.dispatch('/bar'), 'bar') self.assertEqual(self.plugin.url_for('mock_view2'), 'special://my.plugin.id/bar') def test_multi_route_view(self): @self.plugin.route('/') @self.plugin.route('/bar') def mock_view(): return 'foo' self.assertEqual(self.plugin.dispatch('/'), 'foo') self.assertEqual(self.plugin.dispatch('/bar'), 'foo') self.assertRaises(AmbiguousUrlException, self.plugin.url_for, 'mock_view') def test_multi_route_view_names(self): @self.plugin.route('/foo', name='foo') @self.plugin.route('/bar', name='bar') def mock_view(): return 'baz' self.assertEqual(self.plugin.dispatch('/foo'), 'baz') self.assertEqual(self.plugin.dispatch('/bar'), 'baz') self.assertEqual(self.plugin.url_for('foo'), 'special://my.plugin.id/foo') self.assertEqual(self.plugin.url_for('bar'), 'special://my.plugin.id/bar') def test_multi_route_keywords(self): @self.plugin.route('/foo/<var1>') def mock_view(var1): return var1 @self.plugin.route('/bar/', var2='bar') def mock_view2(var2): return var2 self.assertEqual(self.plugin.dispatch('/foo/baz'), 'baz') self.assertEqual(self.plugin.url_for('mock_view', var1='baz'), 'special://my.plugin.id/foo/baz') self.assertEqual(self.plugin.dispatch('/bar/'), 'bar') self.assertEqual(self.plugin.url_for('mock_view2'), 'special://my.plugin.id/bar/') def test_optional_keyword_routes(self): @self.plugin.route('/foo/', name='noarg', var1='bar') @self.plugin.route('/foo/<var1>', name='1arg') def mock_view(var1): return var1 self.assertEqual(self.plugin.dispatch('/foo/'), 'bar') self.assertEqual(self.plugin.url_for('noarg'), 'special://my.plugin.id/foo/') self.assertEqual(self.plugin.dispatch('/foo/biz'), 'biz') self.assertEqual(self.plugin.url_for('1arg', var1='biz'), 'special://my.plugin.id/foo/biz')
class TestPluginRoutes(TestCase): def setUp(self): self.plugin = Plugin("My Plugin", "my.plugin.id") def test_single_route(self): @self.plugin.route("/") def mock_view(): return "foo" self.assertEqual(self.plugin.dispatch("/"), "foo") self.assertEqual(self.plugin.url_for("mock_view"), "special://my.plugin.id/") def test_multi_routes(self): @self.plugin.route("/") def mock_view(): return "foo" @self.plugin.route("/bar") def mock_view2(): return "bar" self.assertEqual(self.plugin.dispatch("/"), "foo") self.assertEqual(self.plugin.url_for("mock_view"), "special://my.plugin.id/") self.assertEqual(self.plugin.dispatch("/bar"), "bar") self.assertEqual(self.plugin.url_for("mock_view2"), "special://my.plugin.id/bar") def test_multi_route_view(self): @self.plugin.route("/") @self.plugin.route("/bar") def mock_view(): return "foo" self.assertEqual(self.plugin.dispatch("/"), "foo") self.assertEqual(self.plugin.dispatch("/bar"), "foo") self.assertRaises(AmbiguousUrlException, self.plugin.url_for, "mock_view") def test_multi_route_view_names(self): @self.plugin.route("/foo", name="foo") @self.plugin.route("/bar", name="bar") def mock_view(): return "baz" self.assertEqual(self.plugin.dispatch("/foo"), "baz") self.assertEqual(self.plugin.dispatch("/bar"), "baz") self.assertEqual(self.plugin.url_for("foo"), "special://my.plugin.id/foo") self.assertEqual(self.plugin.url_for("bar"), "special://my.plugin.id/bar") def test_multi_route_keywords(self): @self.plugin.route("/foo/<var1>") def mock_view(var1): return var1 @self.plugin.route("/bar/", var2="bar") def mock_view2(var2): return var2 self.assertEqual(self.plugin.dispatch("/foo/baz"), "baz") self.assertEqual(self.plugin.url_for("mock_view", var1="baz"), "special://my.plugin.id/foo/baz") self.assertEqual(self.plugin.dispatch("/bar/"), "bar") self.assertEqual(self.plugin.url_for("mock_view2"), "special://my.plugin.id/bar/") def test_optional_keyword_routes(self): @self.plugin.route("/foo/", name="noarg", var1="bar") @self.plugin.route("/foo/<var1>", name="1arg") def mock_view(var1): return var1 self.assertEqual(self.plugin.dispatch("/foo/"), "bar") self.assertEqual(self.plugin.url_for("noarg"), "special://my.plugin.id/foo/") self.assertEqual(self.plugin.dispatch("/foo/biz"), "biz") self.assertEqual(self.plugin.url_for("1arg", var1="biz"), "special://my.plugin.id/foo/biz")