|
35 | 35 | DEFAULT_ENDPOINTS, |
36 | 36 | EMPTY_BODY_SHA256, |
37 | 37 | OAUTH2_SERVER_URI, |
| 38 | + PAGE_SIZE, |
38 | 39 | SIGV4_MAX_RETRIES, |
39 | 40 | SIGV4_MAX_RETRIES_DEFAULT, |
40 | 41 | SNAPSHOT_LOADING_MODE, |
@@ -810,6 +811,48 @@ def test_list_views_paginated_200_none_next_page_token(rest_mock: Mocker) -> Non |
810 | 811 | ] |
811 | 812 |
|
812 | 813 |
|
| 814 | +def test_list_views_page_size(rest_mock: Mocker) -> None: |
| 815 | + namespace = "examples" |
| 816 | + rest_mock.get( |
| 817 | + f"{TEST_URI}v1/namespaces/{namespace}/views", |
| 818 | + json={ |
| 819 | + "identifiers": [ |
| 820 | + {"namespace": ["examples"], "name": "view1"}, |
| 821 | + {"namespace": ["examples"], "name": "view2"}, |
| 822 | + ], |
| 823 | + }, |
| 824 | + status_code=200, |
| 825 | + request_headers=TEST_HEADERS, |
| 826 | + ) |
| 827 | + |
| 828 | + result = RestCatalog("rest", uri=TEST_URI, token=TEST_TOKEN, **{PAGE_SIZE: "100"}).list_views(namespace) |
| 829 | + assert rest_mock.last_request.url == f"{TEST_URI}v1/namespaces/examples/views?pageSize=100" |
| 830 | + |
| 831 | + assert result == [ |
| 832 | + ("examples", "view1"), |
| 833 | + ("examples", "view2"), |
| 834 | + ] |
| 835 | + |
| 836 | + |
| 837 | +def test_list_views_invalid_page_size(rest_mock: Mocker) -> None: |
| 838 | + namespace = "examples" |
| 839 | + rest_mock.get( |
| 840 | + f"{TEST_URI}v1/namespaces/{namespace}/views", |
| 841 | + json={ |
| 842 | + "identifiers": [ |
| 843 | + {"namespace": ["examples"], "name": "view1"}, |
| 844 | + {"namespace": ["examples"], "name": "view2"}, |
| 845 | + ], |
| 846 | + }, |
| 847 | + status_code=200, |
| 848 | + request_headers=TEST_HEADERS, |
| 849 | + ) |
| 850 | + |
| 851 | + with pytest.raises(ValueError) as e: |
| 852 | + RestCatalog("rest", uri=TEST_URI, token=TEST_TOKEN, **{PAGE_SIZE: "0"}).list_views(namespace) |
| 853 | + assert str(e.value) == "rest-page-size must be a positive integer" |
| 854 | + |
| 855 | + |
813 | 856 | def test_list_views_200_sigv4(rest_mock: Mocker) -> None: |
814 | 857 | namespace = "examples" |
815 | 858 | rest_mock.get( |
|
0 commit comments