MCPcopy Create free account
hub / github.com/apache/arrow / test_s3_proxy_options

Function test_s3_proxy_options

python/pyarrow/tests/test_fs.py:1343–1481  ·  view source on GitHub ↗
(monkeypatch, pickle_with_and_without_subtree_filesystem)

Source from the content-addressed store, hash-verified

1341
1342@pytest.mark.s3
1343def test_s3_proxy_options(monkeypatch, pickle_with_and_without_subtree_filesystem):
1344 pickle_module = pickle_with_and_without_subtree_filesystem
1345 from pyarrow.fs import S3FileSystem
1346
1347 # The following two are equivalent:
1348 proxy_opts_1_dict = {'scheme': 'http', 'host': 'localhost', 'port': 8999}
1349 proxy_opts_1_str = 'http://localhost:8999'
1350 # The following two are equivalent:
1351 proxy_opts_2_dict = {'scheme': 'https', 'host': 'localhost', 'port': 8080}
1352 proxy_opts_2_str = 'https://localhost:8080'
1353
1354 # Check dict case for 'proxy_options'
1355 fs = S3FileSystem(proxy_options=proxy_opts_1_dict)
1356 assert isinstance(fs, S3FileSystem)
1357 assert pickle_module.loads(pickle_module.dumps(fs)) == fs
1358
1359 fs = S3FileSystem(proxy_options=proxy_opts_2_dict)
1360 assert isinstance(fs, S3FileSystem)
1361 assert pickle_module.loads(pickle_module.dumps(fs)) == fs
1362
1363 # Check str case for 'proxy_options'
1364 fs = S3FileSystem(proxy_options=proxy_opts_1_str)
1365 assert isinstance(fs, S3FileSystem)
1366 assert pickle_module.loads(pickle_module.dumps(fs)) == fs
1367
1368 fs = S3FileSystem(proxy_options=proxy_opts_2_str)
1369 assert isinstance(fs, S3FileSystem)
1370 assert pickle_module.loads(pickle_module.dumps(fs)) == fs
1371
1372 # Check that two FSs using the same proxy_options dict are equal
1373 fs1 = S3FileSystem(proxy_options=proxy_opts_1_dict)
1374 fs2 = S3FileSystem(proxy_options=proxy_opts_1_dict)
1375 assert fs1 == fs2
1376 assert pickle_module.loads(pickle_module.dumps(fs1)) == fs2
1377 assert pickle_module.loads(pickle_module.dumps(fs2)) == fs1
1378
1379 fs1 = S3FileSystem(proxy_options=proxy_opts_2_dict)
1380 fs2 = S3FileSystem(proxy_options=proxy_opts_2_dict)
1381 assert fs1 == fs2
1382 assert pickle_module.loads(pickle_module.dumps(fs1)) == fs2
1383 assert pickle_module.loads(pickle_module.dumps(fs2)) == fs1
1384
1385 # Check that two FSs using the same proxy_options str are equal
1386 fs1 = S3FileSystem(proxy_options=proxy_opts_1_str)
1387 fs2 = S3FileSystem(proxy_options=proxy_opts_1_str)
1388 assert fs1 == fs2
1389 assert pickle_module.loads(pickle_module.dumps(fs1)) == fs2
1390 assert pickle_module.loads(pickle_module.dumps(fs2)) == fs1
1391
1392 fs1 = S3FileSystem(proxy_options=proxy_opts_2_str)
1393 fs2 = S3FileSystem(proxy_options=proxy_opts_2_str)
1394 assert fs1 == fs2
1395 assert pickle_module.loads(pickle_module.dumps(fs1)) == fs2
1396 assert pickle_module.loads(pickle_module.dumps(fs2)) == fs1
1397
1398 # Check that two FSs using equivalent proxy_options
1399 # (one dict, one str) are equal
1400 fs1 = S3FileSystem(proxy_options=proxy_opts_1_dict)

Callers

nothing calls this directly

Calls 3

S3FileSystemClass · 0.85
loadsMethod · 0.80
dumpsMethod · 0.80

Tested by

no test coverage detected