Exemple #1
0
    def test_verbose_produces_output(self, capsys, tmpdir):
        r = airbase.AirbaseRequest(verbose=False, preload_csv_links=True)
        r.download_to_directory(str(tmpdir))

        output = capsys.readouterr()
        assert len(output.out) == 0
        assert len(output.err) == 0

        r = airbase.AirbaseRequest(verbose=True, preload_csv_links=True)
        r.download_to_directory(str(tmpdir))

        output = capsys.readouterr()
        assert len(output.out) == 0
        assert len(output.err) > 0
Exemple #2
0
    def test_download_metadata(self, tmpdir):
        r = airbase.AirbaseRequest()

        with pytest.raises(NotADirectoryError):
            r.download_metadata("does/not/exist.tsv")

        r.download_metadata(str(tmpdir / "meta.tsv"))
        assert os.path.exists(str(tmpdir / "meta.tsv"))
Exemple #3
0
    def test_download_file(self, tmpdir):
        r = airbase.AirbaseRequest()
        fpath = str(tmpdir / "test.csv")
        r.download_to_file(fpath)
        assert os.path.exists(fpath)

        # make sure header written
        with open(fpath) as h:
            lines = h.readlines()

        header = lines[0].strip()
        header_expected = resources.CSV_RESPONSE.split("\n")[0]
        assert header == header_expected

        # make sure header only there once
        is_header = [l.strip() == header_expected for l in lines]
        assert sum(is_header) == 1
Exemple #4
0
 def test_download_metadata_curdir(self, tmpdir, monkeypatch):
     r = airbase.AirbaseRequest()
     monkeypatch.chdir(str(tmpdir))
     r.download_metadata("meta.tsv")
     assert os.path.exists("meta.tsv")
Exemple #5
0
 def test_download_file_curdir(self, tmpdir, monkeypatch):
     monkeypatch.chdir(str(tmpdir))
     r = airbase.AirbaseRequest()
     r.download_to_file("test.csv")
     assert os.path.exists("test.csv")
Exemple #6
0
 def test_download_file_directory_must_exist(self):
     r = airbase.AirbaseRequest()
     with pytest.raises(NotADirectoryError):
         r.download_to_file("does/not/exist.csv")
Exemple #7
0
 def test_download_to_directory_files_written(self, tmpdir):
     r = airbase.AirbaseRequest()
     r.download_to_directory(str(tmpdir))
     assert len(glob.glob(str(tmpdir / "*.csv"))) > 0
Exemple #8
0
    def test_preload_csv_links(self):
        r = airbase.AirbaseRequest(preload_csv_links=False)
        assert r._csv_links == []

        r = airbase.AirbaseRequest(preload_csv_links=True)
        assert len(r._csv_links) > 0