[med-svn] [Git][med-team/conda][master] Exclude several tests that try to access remote sites
Andreas Tille
gitlab at salsa.debian.org
Tue Mar 12 21:45:23 GMT 2019
Andreas Tille pushed to branch master at Debian Med / conda
Commits:
2bfa22ca by Andreas Tille at 2019-03-12T21:44:43Z
Exclude several tests that try to access remote sites
- - - - -
5 changed files:
- + debian/patches/fix_target_dir_in_test.patch
- + debian/patches/ignore_test_accessing_remote.patch
- debian/patches/ruamel_yaml_name.patch
- debian/patches/series
- debian/rules
Changes:
=====================================
debian/patches/fix_target_dir_in_test.patch
=====================================
@@ -0,0 +1,121 @@
+FIXME: useless debugging stuff - should be deleted
+
+--- a/tests/test_create.py
++++ b/tests/test_create.py
+@@ -239,6 +239,7 @@ def make_temp_channel(packages):
+
+ def create_temp_location():
+ tempdirdir = gettempdir()
++ print("DEBUG: ", tempdirdir)
+ dirname = str(uuid4())[:8]
+ return join(tempdirdir, dirname)
+
+--- a/tests/test_plan.py
++++ b/tests/test_plan.py
+@@ -25,8 +25,12 @@ from .decorators import skip_if_no_mock
+ from .gateways.disk.test_permissions import tempdir
+ from .helpers import captured, get_index_r_1, mock, tempdir
+
+-index, r, = get_index_r_1()
+-index = index.copy() # create a shallow copy so this module can mutate state
++try:
++ index, r, = get_index_r_1()
++ index = index.copy() # create a shallow copy so this module can mutate state
++except:
++ print("DEBUG: something went wrong")
++
+
+ try:
+ from unittest.mock import patch
+@@ -1481,6 +1485,7 @@ def test_pinned_specs():
+ specs_2 = tuple(MatchSpec(spec_str, optional=True) for spec_str in specs_str_2)
+
+ with tempdir() as td:
++ print("DEBUG", td)
+ mkdir_p(join(td, 'conda-meta'))
+ with open(join(td, 'conda-meta', 'pinned'), 'w') as fh:
+ fh.write("\n".join(specs_str_2))
+@@ -1491,6 +1496,7 @@ def test_pinned_specs():
+
+ # Test pinned specs conda configuration and pinned specs conda environment file
+ with tempdir() as td:
++ print("DEBUG", td)
+ mkdir_p(join(td, 'conda-meta'))
+ with open(join(td, 'conda-meta', 'pinned'), 'w') as fh:
+ fh.write("\n".join(specs_str_1))
+--- a/tests/helpers.py
++++ b/tests/helpers.py
+@@ -165,7 +165,11 @@ def get_index_r_1(subdir=context.subdir)
+ }
+
+ channel = Channel('https://conda.anaconda.org/channel-1/%s' % subdir)
+- sd = SubdirData(channel)
++ sys.stderr.write("DEBUG stderr: %s\n" % channel)
++ try:
++ sd = SubdirData(channel)
++ except:
++ sys.stderr.write("SubdirData FAILED: DEBUG stderr: Subdir: %s\n" % str(sd))
+ with env_var("CONDA_ADD_PIP_AS_PYTHON_DEPENDENCY", "false", reset_context):
+ sd._process_raw_repodata_str(json.dumps(repodata))
+ sd._loaded = True
+--- a/conda/core/subdir_data.py
++++ b/conda/core/subdir_data.py
+@@ -53,19 +53,24 @@ REPODATA_PICKLE_VERSION = 28
+ MAX_REPODATA_VERSION = 1
+ REPODATA_HEADER_RE = b'"(_etag|_mod|_cache_control)":[ ]?"(.*?[^\\\\])"[,\}\s]' # NOQA
+
++import sys
+
+ class SubdirDataType(type):
+
+ def __call__(cls, channel):
++ sys.stderr.write("DEBUG stderr SubdirDataType: %s\n" % channel.subdir)
+ assert channel.subdir
++ sys.stderr.write("DEBUG stderr SubdirDataType: %s\n" % channel.package_filename)
+ assert not channel.package_filename
+ assert type(channel) is Channel
+ cache_key = channel.url(with_credentials=True)
++ sys.stderr.write("DEBUG stderr SubdirDataType: %s\n" % cache_key)
+ if not cache_key.startswith('file://') and cache_key in SubdirData._cache_:
+ return SubdirData._cache_[cache_key]
+
+ subdir_data_instance = super(SubdirDataType, cls).__call__(channel)
+ SubdirData._cache_[cache_key] = subdir_data_instance
++ sys.stderr.write("DEBUG stderr SubdirDataType: %s\n" % subdir_data_instance)
+ return subdir_data_instance
+
+
+@@ -219,6 +224,7 @@ class SubdirData(object):
+ except Response304ContentUnchanged:
+ log.debug("304 NOT MODIFIED for '%s'. Updating mtime and loading from disk",
+ self.url_w_subdir)
++ sys.stderr.write("conda/core/subdir_data.py _load() DEBUG stderr: self.cache_path_json = %s\n" % self.cache_path_json)
+ touch(self.cache_path_json)
+ _internal_state = self._read_local_repdata(mod_etag_headers.get('_etag'),
+ mod_etag_headers.get('_mod'))
+--- a/conda/gateways/disk/update.py
++++ b/conda/gateways/disk/update.py
+@@ -88,6 +88,8 @@ def backoff_rename(source_path, destinat
+ exp_backoff_fn(rename, source_path, destination_path, force)
+
+
++import sys
++
+ def touch(path, mkdir=False, sudo_safe=False):
+ # sudo_safe: use any time `path` is within the user's home directory
+ # returns:
+@@ -96,12 +98,14 @@ def touch(path, mkdir=False, sudo_safe=F
+ # raises: NotWritableError, which is also an OSError having attached errno
+ try:
+ path = expand(path)
++ sys.stderr.write("conda/gateways/disk/update.py touch() FAILED: DEBUG stderr: path = %s\n" % path)
+ log.trace("touching path %s", path)
+ if lexists(path):
+ os.utime(path, None)
+ return True
+ else:
+ dirpath = dirname(path)
++ sys.stderr.write("conda/gateways/disk/update.py touch() FAILED: DEBUG stderr: dirname = %s\n" % dirname)
+ if not isdir(dirpath) and mkdir:
+ if sudo_safe:
+ mkdir_p_sudo_safe(dirpath)
=====================================
debian/patches/ignore_test_accessing_remote.patch
=====================================
@@ -0,0 +1,48 @@
+--- a/tests/test_info.py
++++ b/tests/test_info.py
+@@ -40,7 +40,7 @@ def test_info():
+ assert_in(conda_info_e_out, conda_info_all_out)
+ assert_in(conda_info_s_out, conda_info_all_out)
+
+-
++ at pytest.mark.skipif(True, reason="Debian: seems to access network")
+ @pytest.mark.integration
+ def test_info_package_json():
+ out, err, rc = run_command(Commands.INFO, "--json", "numpy=1.11.0=py35_0")
+--- a/tests/test_api.py
++++ b/tests/test_api.py
+@@ -89,7 +89,7 @@ def test_Solver_inputs_contract():
+ ))
+ inspect_arguments(Solver.solve_for_transaction, solve_for_transaction_args)
+
+-
++ at pytest.mark.skipif(True, reason="Debian: access to network")
+ @pytest.mark.integration
+ def test_Solver_return_value_contract():
+ solver = Solver('/', (Channel('pkgs/main'),), specs_to_add=('openssl',))
+@@ -140,6 +140,7 @@ def test_SubdirData_contract():
+ inspect_arguments(SubdirData.reload, reload_args)
+
+
++ at pytest.mark.skipif(True, reason="Debian: access to network")
+ @pytest.mark.integration
+ def test_SubdirData_return_value_contract():
+ sd = SubdirData(Channel('pkgs/main/linux-64'))
+@@ -266,6 +267,7 @@ def test_PrefixData_contract():
+ inspect_arguments(PrefixData.reload, reload_args)
+
+
++ at pytest.mark.skipif(True, reason="Debian: access to network")
+ def test_PrefixData_return_value_contract():
+ pd = PrefixData(context.conda_prefix)
+
+--- a/tests/test_fetch.py
++++ b/tests/test_fetch.py
+@@ -15,6 +15,7 @@ from conda.core.subdir_data import fetch
+ from conda.core.package_cache_data import download
+
+
++ at pytest.mark.skipif(True, reason="Debian: access to network")
+ @pytest.mark.integration
+ class TestConnectionWithShortTimeouts(TestCase):
+
=====================================
debian/patches/ruamel_yaml_name.patch
=====================================
@@ -15,3 +15,64 @@ Description: For some strange reason ruamel.yaml is named ruamel_yaml
from . import support_file
from .utils import make_temp_envs_dir, Commands, run_command
+@@ -352,6 +352,8 @@ class EnvironmentSaveTestCase(unittest.T
+ self.assertEqual(e.to_yaml(), actual)
+
+
++import pytest
++ at pytest.mark.skipif(True, reason="Debian: access to network")
+ class SaveExistingEnvTestCase(unittest.TestCase):
+ def test_create_advanced_pip(self):
+ with make_temp_envs_dir() as envs_dir:
+--- a/tests/core/test_index.py
++++ b/tests/core/test_index.py
+@@ -55,12 +55,14 @@ class GetIndexIntegrationTests(TestCase)
+ for dist, record in iteritems(index):
+ assert platform_in_record(linux64, record), (linux64, record.url)
+
++ @pytest.mark.skipif(True, reason="Debian: not Linux")
+ def test_get_index_osx64_platform(self):
+ osx64 = 'osx-64'
+ index = get_index(platform=osx64)
+ for dist, record in iteritems(index):
+ assert platform_in_record(osx64, record), (osx64, record.url)
+
++ @pytest.mark.skipif(True, reason="Debian: not Linux")
+ def test_get_index_win64_platform(self):
+ win64 = 'win-64'
+ index = get_index(platform=win64)
+@@ -71,6 +73,7 @@ class GetIndexIntegrationTests(TestCase)
+ @pytest.mark.integration
+ class ReducedIndexTests(TestCase):
+
++ @pytest.mark.skipif(True, reason="Debian: access to network")
+ def test_basic_get_reduced_index(self):
+ get_reduced_index(None, (Channel('defaults'), Channel('conda-test')), context.subdirs,
+ (MatchSpec('flask'), ))
+--- a/tests/test_history.py
++++ b/tests/test_history.py
+@@ -9,7 +9,7 @@ from conda.exceptions import CondaUpgrad
+ from conda.gateways.disk import mkdir_p
+ from .decorators import skip_if_no_mock
+ from .helpers import mock, tempdir
+-from .test_create import make_temp_prefix
++#from .test_create import make_temp_prefix
+
+ from conda.history import History
+ from conda.resolve import MatchSpec
+@@ -41,6 +41,7 @@ class HistoryTestCase(unittest.TestCase)
+ with h as h2:
+ self.assertEqual(h, h2)
+
++ @pytest.mark.skipif(True, reason="Debian: access to network")
+ @skip_if_no_mock
+ def test_empty_history_check_on_empty_env(self):
+ with mock.patch.object(History, 'file_is_empty') as mock_file_is_empty:
+@@ -51,6 +52,7 @@ class HistoryTestCase(unittest.TestCase)
+ self.assertEqual(mock_file_is_empty.call_count, 1)
+ assert not h.file_is_empty()
+
++ @pytest.mark.skipif(True, reason="Debian: access to network")
+ @skip_if_no_mock
+ def test_parse_on_empty_env(self):
+ with mock.patch.object(History, 'parse') as mock_parse:
=====================================
debian/patches/series
=====================================
@@ -1,3 +1,4 @@
do_not_use_git_in_configure.patch
skip_tests_needing_conda-build.patch
ruamel_yaml_name.patch
+ignore_test_accessing_remote.patch
=====================================
debian/rules
=====================================
@@ -17,6 +17,10 @@ include /usr/share/dpkg/default.mk
# for hardening you might like to uncomment this:
# export DEB_BUILD_MAINT_OPTIONS=hardening=+all
+# Silence tests that try to access internet
+export http_proxy=http://127.0.0.1:9/
+export https_proxy=http://127.0.0.1:9/
+
%:
dh $@ --with python3 --buildsystem=pybuild
@@ -30,5 +34,20 @@ override_dh_auto_configure:
override_dh_auto_test:
ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
+ # ignore tests trying to access remote locations
+ mkdir $(CURDIR)/tmp_test_ignore
+ mkdir $(CURDIR)/tmp_test_ignore/conda_env
+ mv \
+ tests/test_cli.py \
+ tests/test_create.py \
+ tests/test_export.py \
+ tests/test_priority.py \
+ $(CURDIR)/tmp_test_ignore
+ mv \
+ tests/conda_env/test_cli.py \
+ tests/conda_env/test_create.py \
+ $(CURDIR)/tmp_test_ignore/conda_env
CONDA_PKGS_DIRS=/tmp/pkgs dh_auto_test
+ # restore all tests
+ mv $(CURDIR)/tmp_test_ignore/* tests
endif
View it on GitLab: https://salsa.debian.org/med-team/conda/commit/2bfa22cae2996afeaa6b0792afaffedc332d13a3
--
View it on GitLab: https://salsa.debian.org/med-team/conda/commit/2bfa22cae2996afeaa6b0792afaffedc332d13a3
You're receiving this email because of your account on salsa.debian.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-med-commit/attachments/20190312/d3a2c09f/attachment-0001.html>
More information about the debian-med-commit
mailing list