Skip to content

Commit 9948bd8

Browse files
committed
Tests for bz2, xz & zip URLs
1 parent 868ca31 commit 9948bd8

File tree

1 file changed

+46
-6
lines changed

1 file changed

+46
-6
lines changed

pandas/io/tests/parser/test_network.py

+46-6
Original file line numberDiff line numberDiff line change
@@ -14,23 +14,63 @@
1414
from pandas.io.parsers import read_csv, read_table
1515

1616

17-
class TestUrlGz(tm.TestCase):
17+
class TestCompressedUrl(tm.TestCase):
1818

1919
def setUp(self):
2020
dirpath = tm.get_data_path()
21-
localtable = os.path.join(dirpath, 'salary.table.csv')
22-
self.local_table = read_table(localtable)
21+
path = os.path.join(dirpath, 'salary.table.csv')
22+
self.local_table = read_table(path)
23+
# NOTE: change URL once https://github.com/pandas-dev/pandas/pull/14587
24+
# is merged.
25+
self.base_url = ('https://github.com/dhimmel/pandas/raw/'
26+
'24341b53341455433abcb6d01a2c7b4071e35316/'
27+
'pandas/io/tests/parser/data/salaries.csv')
2328

2429
@tm.network
2530
def test_url_gz(self):
26-
url = ('https://raw.github.com/pandas-dev/pandas/'
27-
'master/pandas/io/tests/parser/data/salary.table.gz')
31+
url = self.base_url + '.gz'
2832
url_table = read_table(url, compression="gzip", engine="python")
2933
tm.assert_frame_equal(url_table, self.local_table)
3034

35+
@tm.network
36+
def test_url_bz2(self):
37+
url = self.base_url + '.bz2'
38+
url_table = read_table(url, compression="bz2", engine="python")
39+
tm.assert_frame_equal(url_table, self.local_table)
40+
41+
@tm.network
42+
def test_url_xz(self):
43+
url = self.base_url + '.xz'
44+
url_table = read_table(url, compression="zip", engine="python")
45+
tm.assert_frame_equal(url_table, self.local_table)
46+
47+
@tm.network
48+
def test_url_zip(self):
49+
url = self.base_url + '.zip'
50+
url_table = read_table(url, compression="zip", engine="python")
51+
tm.assert_frame_equal(url_table, self.local_table)
52+
3153
@tm.network
3254
def test_url_gz_infer(self):
33-
url = 'https://s3.amazonaws.com/pandas-test/salary.table.gz'
55+
url = self.base_url + '.gz'
56+
url_table = read_table(url, compression="infer", engine="python")
57+
tm.assert_frame_equal(url_table, self.local_table)
58+
59+
@tm.network
60+
def test_url_bz2_infer(self):
61+
url = self.base_url + '.bz2'
62+
url_table = read_table(url, compression="infer", engine="python")
63+
tm.assert_frame_equal(url_table, self.local_table)
64+
65+
@tm.network
66+
def test_url_xz_infer(self):
67+
url = self.base_url + '.xz'
68+
url_table = read_table(url, compression="infer", engine="python")
69+
tm.assert_frame_equal(url_table, self.local_table)
70+
71+
@tm.network
72+
def test_url_zip_infer(self):
73+
url = self.base_url + '.zip'
3474
url_table = read_table(url, compression="infer", engine="python")
3575
tm.assert_frame_equal(url_table, self.local_table)
3676

0 commit comments

Comments
 (0)