@@ -116,6 +116,54 @@ def test_populate_image_with_options(server: TSC.Server) -> None:
116116 assert response == single_view .image
117117
118118
119+ def test_populate_image_svg_format (server : TSC .Server ) -> None :
120+ server .version = "3.29"
121+ response = b"<svg>test</svg>"
122+ with requests_mock .mock () as m :
123+ m .get (
124+ server .custom_views .baseurl + "/d79634e1-6063-4ec9-95ff-50acbf609ff5/image?format=SVG" ,
125+ content = response ,
126+ )
127+ single_view = TSC .CustomViewItem ()
128+ single_view ._id = "d79634e1-6063-4ec9-95ff-50acbf609ff5"
129+ req_option = TSC .ImageRequestOptions (format = TSC .ImageRequestOptions .Format .SVG )
130+ server .custom_views .populate_image (single_view , req_option )
131+ assert response == single_view .image
132+
133+
134+ def test_populate_image_png_format (server : TSC .Server ) -> None :
135+ server .version = "3.29"
136+ response = POPULATE_PREVIEW_IMAGE .read_bytes ()
137+ with requests_mock .mock () as m :
138+ m .get (
139+ server .custom_views .baseurl + "/d79634e1-6063-4ec9-95ff-50acbf609ff5/image?format=PNG" ,
140+ content = response ,
141+ )
142+ single_view = TSC .CustomViewItem ()
143+ single_view ._id = "d79634e1-6063-4ec9-95ff-50acbf609ff5"
144+ req_option = TSC .ImageRequestOptions (format = TSC .ImageRequestOptions .Format .PNG )
145+ server .custom_views .populate_image (single_view , req_option )
146+ assert response == single_view .image
147+
148+
149+ def test_populate_image_format_unsupported_version (server : TSC .Server ) -> None :
150+ from tableauserverclient .server .endpoint .exceptions import UnsupportedAttributeError
151+
152+ server .version = "3.28"
153+ response = POPULATE_PREVIEW_IMAGE .read_bytes ()
154+ with requests_mock .mock () as m :
155+ m .get (
156+ server .custom_views .baseurl + "/d79634e1-6063-4ec9-95ff-50acbf609ff5/image?format=SVG" ,
157+ content = response ,
158+ )
159+ single_view = TSC .CustomViewItem ()
160+ single_view ._id = "d79634e1-6063-4ec9-95ff-50acbf609ff5"
161+ req_option = TSC .ImageRequestOptions (format = TSC .ImageRequestOptions .Format .SVG )
162+
163+ with pytest .raises (UnsupportedAttributeError ):
164+ server .custom_views .populate_image (single_view , req_option )
165+
166+
119167def test_populate_image_missing_id (server : TSC .Server ) -> None :
120168 single_view = TSC .CustomViewItem ()
121169 single_view ._id = None
0 commit comments