* gnu/packages/python-web.scm (python-w3lib): Fix build. [source]: Add python-w3lib-fix-test-failure.patch. [arguments]: Use pytest in the 'check phase. [native-inputs]: Add python-pytest. * gnu/packages/patches/python-w3lib-fix-test-failure.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
		
			
				
	
	
		
			60 lines
		
	
	
	
		
			2.4 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			60 lines
		
	
	
	
		
			2.4 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| From fae6cc40e112cd13697cb0e8d79976f32c72491d Mon Sep 17 00:00:00 2001
 | |
| From: Eugenio Lacuesta <eugenio.lacuesta@gmail.com>
 | |
| Date: Wed, 10 Mar 2021 12:31:05 -0300
 | |
| Subject: [PATCH] [CI] Mark single add_or_replace_parameter test as xfail
 | |
| 
 | |
| ---
 | |
| This patch is based on upstream commit
 | |
| fae6cc40e112cd13697cb0e8d79976f32c72491d which is part of
 | |
| https://github.com/scrapy/w3lib/pull/166.
 | |
| 
 | |
|  .gitignore        |  3 ++-
 | |
|  tests/test_url.py | 25 ++++++++++++++-----------
 | |
|  2 files changed, 16 insertions(+), 12 deletions(-)
 | |
| 
 | |
| diff --git a/tests/test_url.py b/tests/test_url.py
 | |
| index 8b07c00..0f7458e 100644
 | |
| --- a/tests/test_url.py
 | |
| +++ b/tests/test_url.py
 | |
| @@ -1,12 +1,14 @@
 | |
| -# -*- coding: utf-8 -*-
 | |
|  from __future__ import absolute_import
 | |
|  import os
 | |
|  import unittest
 | |
| +
 | |
| +import pytest
 | |
| +from six.moves.urllib.parse import urlparse
 | |
| +
 | |
|  from w3lib.url import (is_url, safe_url_string, safe_download_url,
 | |
|      url_query_parameter, add_or_replace_parameter, url_query_cleaner,
 | |
|      file_uri_to_path, parse_data_uri, path_to_file_uri, any_to_uri,
 | |
|      urljoin_rfc, canonicalize_url, parse_url, add_or_replace_parameters)
 | |
| -from six.moves.urllib.parse import urlparse
 | |
|  
 | |
|  
 | |
|  class UrlTests(unittest.TestCase):
 | |
| @@ -310,10 +311,6 @@ def test_add_or_replace_parameter(self):
 | |
|          self.assertEqual(add_or_replace_parameter(url, 'arg3', 'nv3'),
 | |
|                           'http://domain/test?arg1=v1&arg2=v2&arg3=nv3')
 | |
|  
 | |
| -        url = 'http://domain/test?arg1=v1;arg2=v2'
 | |
| -        self.assertEqual(add_or_replace_parameter(url, 'arg1', 'v3'),
 | |
| -                         'http://domain/test?arg1=v3&arg2=v2')
 | |
| -
 | |
|          self.assertEqual(add_or_replace_parameter("http://domain/moreInfo.asp?prodID=", 'prodID', '20'),
 | |
|                           'http://domain/moreInfo.asp?prodID=20')
 | |
|          url = 'http://rmc-offers.co.uk/productlist.asp?BCat=2%2C60&CatID=60'
 | |
| @@ -338,6 +335,13 @@ def test_add_or_replace_parameter(self):
 | |
|          self.assertEqual(add_or_replace_parameter(url, 'arg1', 'v3'),
 | |
|                           'http://domain/test?arg1=v3&arg2=v2')
 | |
|  
 | |
| +    @pytest.mark.xfail(reason="https://github.com/scrapy/w3lib/issues/164")
 | |
| +    def test_add_or_replace_parameter_fail(self):
 | |
| +        self.assertEqual(
 | |
| +            add_or_replace_parameter('http://domain/test?arg1=v1;arg2=v2', 'arg1', 'v3'),
 | |
| +            'http://domain/test?arg1=v3&arg2=v2'
 | |
| +        )
 | |
| +
 | |
|      def test_add_or_replace_parameters(self):
 | |
|          url = 'http://domain/test'
 | |
|          self.assertEqual(add_or_replace_parameters(url, {'arg': 'v'}),
 |