| 424 | |
| 425 | |
| 426 | def test_formdata() -> None: |
| 427 | stream = io.BytesIO(b"data") |
| 428 | upload = UploadFile(filename="file", file=stream, size=4) |
| 429 | form = FormData([("a", "123"), ("a", "456"), ("b", upload)]) |
| 430 | assert "a" in form |
| 431 | assert "A" not in form |
| 432 | assert "c" not in form |
| 433 | assert form["a"] == "456" |
| 434 | assert form.get("a") == "456" |
| 435 | assert form.get("nope", None) is None |
| 436 | assert form.getlist("a") == ["123", "456"] |
| 437 | assert list(form.keys()) == ["a", "b"] |
| 438 | assert list(form.values()) == ["456", upload] |
| 439 | assert list(form.items()) == [("a", "456"), ("b", upload)] |
| 440 | assert len(form) == 2 |
| 441 | assert list(form) == ["a", "b"] |
| 442 | assert dict(form) == {"a": "456", "b": upload} |
| 443 | assert repr(form) == "FormData([('a', '123'), ('a', '456'), ('b', " + repr(upload) + ")])" |
| 444 | assert FormData(form) == form |
| 445 | assert FormData({"a": "123", "b": "789"}) == FormData([("a", "123"), ("b", "789")]) |
| 446 | assert FormData({"a": "123", "b": "789"}) != {"a": "123", "b": "789"} |
| 447 | |
| 448 | |
| 449 | @pytest.mark.anyio |