diff --git a/gatspy/datasets/tests/test_download_data.py b/gatspy/datasets/tests/test_download_data.py index 93791c7..c65edb9 100644 --- a/gatspy/datasets/tests/test_download_data.py +++ b/gatspy/datasets/tests/test_download_data.py @@ -16,7 +16,11 @@ def test_downloads(): for downloader in (fetch_rrlyrae, fetch_rrlyrae_fitdata, fetch_rrlyrae_templates, fetch_rrlyrae_lc_params): - data = downloader() + try: + data = downloader() + except (URLError, ConnectionError): + raise SkipTest("No internet connection: " + "data download test skipped") assert data is not None diff --git a/gatspy/datasets/tests/test_rrlyrae.py b/gatspy/datasets/tests/test_rrlyrae.py index 5cc8a12..1a089e2 100644 --- a/gatspy/datasets/tests/test_rrlyrae.py +++ b/gatspy/datasets/tests/test_rrlyrae.py @@ -6,7 +6,11 @@ def test_rrlyrae_lightcurves(): for partial in [True, False]: - rrlyrae = fetch_rrlyrae(partial=partial) + try: + rrlyrae = fetch_rrlyrae(partial=partial) + except(URLError, ConnectionError): + raise SkipTest("No internet connection: " + "data download test skipped") lcid = rrlyrae.ids[0] if not partial: @@ -34,21 +38,33 @@ def test_rrlyrae_lightcurves(): def test_bad_lcid(): - rrlyrae = fetch_rrlyrae() + try: + rrlyrae = fetch_rrlyrae() + except(URLError, ConnectionError): + raise SkipTest("No internet connection: " + "data download test skipped") lcid = 'BAD_ID' assert_raises(ValueError, rrlyrae.get_lightcurve, lcid) assert_raises(ValueError, rrlyrae.get_metadata, lcid) assert_raises(ValueError, rrlyrae.get_obsmeta, lcid) - rrlyrae = fetch_rrlyrae(partial=True) + try: + rrlyrae = fetch_rrlyrae(partial=True) + except(URLError, ConnectionError): + raise SkipTest("No internet connection: " + "data download test skipped") assert_raises(ValueError, rrlyrae.get_lightcurve, rrlyrae.ids[0], return_1d=False) def test_rrlyrae_pickle(): for partial in [True, False]: - rrlyrae = fetch_rrlyrae(partial=partial) + try: + rrlyrae = fetch_rrlyrae(partial=partial) + except(URLError, ConnectionError): + raise SkipTest("No internet connection: " + "data download test skipped") s = pickle.dumps(rrlyrae) rrlyrae2 = pickle.loads(s) @@ -58,7 +74,12 @@ def test_rrlyrae_pickle(): def test_rrlyrae_templates(): - templates = fetch_rrlyrae_templates() + try: + templates = fetch_rrlyrae_templates() + except(URLError, ConnectionError): + raise SkipTest("No internet connection: " + "data download test skipped") + filename = templates.filenames[0] tid = templates.ids[0] t = templates.get_template(tid) diff --git a/gatspy/datasets/tests/test_rrlyrae_generated.py b/gatspy/datasets/tests/test_rrlyrae_generated.py index abc4279..bbe18b4 100644 --- a/gatspy/datasets/tests/test_rrlyrae_generated.py +++ b/gatspy/datasets/tests/test_rrlyrae_generated.py @@ -3,7 +3,12 @@ def test_rrlyrae_generated(): - rrlyrae = fetch_rrlyrae() + try: + rrlyrae = fetch_rrlyrae() + except(URLError, ConnectionError): + raise SkipTest("No internet connection: " + "data download test skipped") + lcid = rrlyrae.ids[100] gen = RRLyraeGenerated(lcid) diff --git a/gatspy/periodic/tests/test_templates.py b/gatspy/periodic/tests/test_templates.py index bb85aa1..465f428 100644 --- a/gatspy/periodic/tests/test_templates.py +++ b/gatspy/periodic/tests/test_templates.py @@ -9,7 +9,12 @@ def test_basic_template_model(): template_id = 25 - templates = fetch_rrlyrae_templates() + try: + templates = fetch_rrlyrae_templates() + except(URLError, ConnectionError): + raise SkipTest("No internet connection: " + "data download test skipped") + phase, y = templates.get_template(templates.ids[template_id]) model = UnivariateSpline(phase, y, s=0, k=5) @@ -38,7 +43,12 @@ def test_basic_template_model(): def test_multiband_fit(): # TODO: this is a long test. # We could artificially limit the number of templates to make it faster - rrlyrae = fetch_rrlyrae() + try: + rrlyrae = fetch_rrlyrae() + except(URLError, ConnectionError): + raise SkipTest("No internet connection: " + "data download test skipped") + t, y, dy, filts = rrlyrae.get_lightcurve(rrlyrae.ids[0]) t = t[::10] y = y[::10] @@ -63,4 +73,9 @@ def test_multiband_fit(): def test_bad_args(): - assert_raises(ValueError, RRLyraeTemplateModeler, filts='abc') + try: + assert_raises(ValueError, RRLyraeTemplateModeler, filts='abc') + except(URLError, ConnectionError): + raise SkipTest("No internet connection: " + "data download test skipped") + diff --git a/gatspy/datasets/tests/test_rrlyrae.py b/gatspy/datasets/tests/test_rrlyrae.py index 1a089e2..ae55220 100644 --- a/gatspy/datasets/tests/test_rrlyrae.py +++ b/gatspy/datasets/tests/test_rrlyrae.py @@ -2,7 +2,16 @@ import numpy as np from numpy.testing import assert_equal, assert_raises from .. import fetch_rrlyrae, fetch_rrlyrae_templates - +from nose import SkipTest + +try: + # Python 3 + from urllib.error import URLError + ConnectionError = ConnectionResetError +except ImportError: + # Python 2 + from urllib2 import URLError + from socket import error as ConnectionError def test_rrlyrae_lightcurves(): for partial in [True, False]: diff --git a/gatspy/datasets/tests/test_rrlyrae_generated.py b/gatspy/datasets/tests/test_rrlyrae_generated.py index bbe18b4..82cd976 100644 --- a/gatspy/datasets/tests/test_rrlyrae_generated.py +++ b/gatspy/datasets/tests/test_rrlyrae_generated.py @@ -1,6 +1,17 @@ from numpy.testing import assert_equal from .. import RRLyraeGenerated, fetch_rrlyrae +from nose import SkipTest + +try: + # Python 3 + from urllib.error import URLError + ConnectionError = ConnectionResetError +except ImportError: + # Python 2 + from urllib2 import URLError + from socket import error as ConnectionError + def test_rrlyrae_generated(): try: diff --git a/gatspy/periodic/tests/test_templates.py b/gatspy/periodic/tests/test_templates.py index 465f428..abda305 100644 --- a/gatspy/periodic/tests/test_templates.py +++ b/gatspy/periodic/tests/test_templates.py @@ -1,5 +1,15 @@ import numpy as np from numpy.testing import assert_allclose, assert_raises +from nose import SkipTest + +try: + # Python 3 + from urllib.error import URLError + ConnectionError = ConnectionResetError +except ImportError: + # Python 2 + from urllib2 import URLError + from socket import error as ConnectionError from .. import RRLyraeTemplateModeler, RRLyraeTemplateModelerMultiband from ...datasets import fetch_rrlyrae_templates, fetch_rrlyrae