MCPcopy Index your code
hub / github.com/encode/starlette / test_multidict

Function test_multidict

tests/test_datastructures.py:463–549  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

461
462
463def test_multidict() -> None:
464 q = MultiDict([("a", "123"), ("a", "456"), ("b", "789")])
465 assert "a" in q
466 assert "A" not in q
467 assert "c" not in q
468 assert q["a"] == "456"
469 assert q.get("a") == "456"
470 assert q.get("nope", None) is None
471 assert q.getlist("a") == ["123", "456"]
472 assert list(q.keys()) == ["a", "b"]
473 assert list(q.values()) == ["456", "789"]
474 assert list(q.items()) == [("a", "456"), ("b", "789")]
475 assert len(q) == 2
476 assert list(q) == ["a", "b"]
477 assert dict(q) == {"a": "456", "b": "789"}
478 assert str(q) == "MultiDict([('a', '123'), ('a', '456'), ('b', '789')])"
479 assert repr(q) == "MultiDict([('a', '123'), ('a', '456'), ('b', '789')])"
480 assert MultiDict({"a": "123", "b": "456"}) == MultiDict([("a", "123"), ("b", "456")])
481 assert MultiDict({"a": "123", "b": "456"}) == MultiDict({"b": "456", "a": "123"})
482 assert MultiDict() == MultiDict({})
483 assert MultiDict({"a": "123", "b": "456"}) != "invalid"
484
485 q = MultiDict([("a", "123"), ("a", "456")])
486 assert MultiDict(q) == q
487
488 q = MultiDict([("a", "123"), ("a", "456")])
489 q["a"] = "789"
490 assert q["a"] == "789"
491 assert q.get("a") == "789"
492 assert q.getlist("a") == ["789"]
493
494 q = MultiDict([("a", "123"), ("a", "456")])
495 del q["a"]
496 assert q.get("a") is None
497 assert repr(q) == "MultiDict([])"
498
499 q = MultiDict([("a", "123"), ("a", "456"), ("b", "789")])
500 assert q.pop("a") == "456"
501 assert q.get("a", None) is None
502 assert repr(q) == "MultiDict([('b', '789')])"
503
504 q = MultiDict([("a", "123"), ("a", "456"), ("b", "789")])
505 item = q.popitem()
506 assert q.get(item[0]) is None
507
508 q = MultiDict([("a", "123"), ("a", "456"), ("b", "789")])
509 assert q.poplist("a") == ["123", "456"]
510 assert q.get("a") is None
511 assert repr(q) == "MultiDict([('b', '789')])"
512
513 q = MultiDict([("a", "123"), ("a", "456"), ("b", "789")])
514 q.clear()
515 assert q.get("a") is None
516 assert repr(q) == "MultiDict([])"
517
518 q = MultiDict([("a", "123")])
519 q.setlist("a", ["456", "789"])
520 assert q.getlist("a") == ["456", "789"]

Callers

nothing calls this directly

Calls 14

popMethod · 0.95
popitemMethod · 0.95
poplistMethod · 0.95
clearMethod · 0.95
setlistMethod · 0.95
setdefaultMethod · 0.95
appendMethod · 0.95
updateMethod · 0.95
MultiDictClass · 0.90
getMethod · 0.45
getlistMethod · 0.45
keysMethod · 0.45

Tested by

no test coverage detected