diff --git a/conda.recipe/meta.yaml b/conda.recipe/meta.yaml index e68986837..069a2e86d 100644 --- a/conda.recipe/meta.yaml +++ b/conda.recipe/meta.yaml @@ -38,6 +38,7 @@ test: - pytables >=3.0.0 - sqlalchemy >=0.8.0 - bcolz + - mock - pymongo >=2.8,<3 # [not (py35 or win)] - dask - paramiko # [not win] diff --git a/etc/requirements_ci.txt b/etc/requirements_ci.txt index b6f878d8a..7bc5e378e 100644 --- a/etc/requirements_ci.txt +++ b/etc/requirements_ci.txt @@ -17,6 +17,7 @@ Jinja2==2.8 jmespath==0.9.0 locket==0.2.0 MarkupSafe==0.23 +mock==2.0.0 msgpack-python==0.4.8 multipledispatch==0.4.9 networkx==1.11 diff --git a/odo/backends/tests/test_url.py b/odo/backends/tests/test_url.py index f750b9a08..319190f08 100644 --- a/odo/backends/tests/test_url.py +++ b/odo/backends/tests/test_url.py @@ -1,6 +1,7 @@ from __future__ import print_function import pytest +from mock import patch, Mock from functools import partial import codecs @@ -64,8 +65,10 @@ def test_sample_different_encoding(): @pytest.mark.xfail(raises=HTTPError) -def test_failed_url(): +@patch('odo.backends.url.urlopen') +def test_failed_url(m): failed_url = "http://foo.com/myfile.csv" + m.side_effect = HTTPError(failed_url, 404, 'Not found', None, None) with tmpfile('.csv') as fn: odo(failed_url, fn)