MCPcopy
hub / github.com/pallets/werkzeug / test_basic_building

Function test_basic_building

tests/test_routing.py:272–322  ·  tests/test_routing.py::test_basic_building
()

Source from the content-addressed store, hash-verified

270
271
272def test_basic_building():
273 map = r.Map(
274 [
275 r.Rule(class="st">"/", endpoint=class="st">"index"),
276 r.Rule(class="st">"/foo", endpoint=class="st">"foo"),
277 r.Rule(class="st">"/bar/<baz>", endpoint=class="st">"bar"),
278 r.Rule(class="st">"/bar/<int:bazi>", endpoint=class="st">"bari"),
279 r.Rule(class="st">"/bar/<float:bazf>", endpoint=class="st">"barf"),
280 r.Rule(class="st">"/bar/<path:bazp>", endpoint=class="st">"barp"),
281 r.Rule(class="st">"/hehe", endpoint=class="st">"blah", subdomain=class="st">"blah"),
282 r.Rule(class="st">"/ws", endpoint=class="st">"ws", websocket=True),
283 ]
284 )
285 adapter = map.bind(class="st">"example.org", class="st">"/", subdomain=class="st">"blah")
286
287 assert adapter.build(class="st">"index", {}) == class="st">"http://example.org/"
288 assert adapter.build(class="st">"foo", {}) == class="st">"http://example.org/foo"
289 assert adapter.build(class="st">"bar", {class="st">"baz": class="st">"blub"}) == class="st">"http://example.org/bar/blub"
290 assert adapter.build(class="st">"bari", {class="st">"bazi": 50}) == class="st">"http://example.org/bar/50"
291 assert adapter.build(class="st">"barf", {class="st">"bazf": 0.815}) == class="st">"http://example.org/bar/0.815"
292 assert adapter.build(class="st">"barp", {class="st">"bazp": class="st">"la/di"}) == class="st">"http://example.org/bar/la/di"
293 assert adapter.build(class="st">"blah", {}) == class="st">"/hehe"
294 pytest.raises(r.BuildError, lambda: adapter.build(class="st">"urks"))
295
296 adapter = map.bind(class="st">"example.org", class="st">"/test", subdomain=class="st">"blah")
297 assert adapter.build(class="st">"index", {}) == class="st">"http://example.org/test/"
298 assert adapter.build(class="st">"foo", {}) == class="st">"http://example.org/test/foo"
299 assert adapter.build(class="st">"bar", {class="st">"baz": class="st">"blub"}) == class="st">"http://example.org/test/bar/blub"
300 assert adapter.build(class="st">"bari", {class="st">"bazi": 50}) == class="st">"http://example.org/test/bar/50"
301 assert adapter.build(class="st">"barf", {class="st">"bazf": 0.815}) == class="st">"http://example.org/test/bar/0.815"
302 assert (
303 adapter.build(class="st">"barp", {class="st">"bazp": class="st">"la/di"}) == class="st">"http://example.org/test/bar/la/di"
304 )
305 assert adapter.build(class="st">"blah", {}) == class="st">"/test/hehe"
306
307 adapter = map.bind(class="st">"example.org")
308 assert adapter.build(class="st">"foo", {}) == class="st">"/foo"
309 assert adapter.build(class="st">"foo", {}, force_external=True) == class="st">"http://example.org/foo"
310 adapter = map.bind(class="st">"example.org", url_scheme=class="st">"")
311 assert adapter.build(class="st">"foo", {}) == class="st">"/foo"
312 assert adapter.build(class="st">"foo", {}, force_external=True) == class="st">"//example.org/foo"
313 assert (
314 adapter.build(class="st">"foo", {}, url_scheme=class="st">"https", force_external=True)
315 == class="st">"https://example.org/foo"
316 )
317
318 adapter = map.bind(class="st">"example.org", url_scheme=class="st">"ws")
319 assert adapter.build(class="st">"ws", {}) == class="st">"ws://example.org/ws"
320 assert adapter.build(class="st">"foo", {}, force_external=True) == class="st">"http://example.org/foo"
321 assert adapter.build(class="st">"foo", {}) == class="st">"/foo"
322 assert adapter.build(class="st">"ws", {}, url_scheme=class="st">"https") == class="st">"wss://example.org/ws"
323
324
325def test_long_build():

Callers

nothing calls this directly

Calls 2

bindMethod · 0.95
buildMethod · 0.45

Tested by

no test coverage detected