@@ -34,9 +34,8 @@ def wrapper(self, *args, **kwargs):
34
34
return wrapper
35
35
36
36
37
- def skip_or_run_test_python_major (func , REQUIRED_PYTHON_MAJOR , msg ):
38
- """Decorator to skip or run tests depending on the Python major
39
- version.
37
+ def skip_or_run_test_python (func , REQUIRED_PYTHON_VERSION , msg ):
38
+ """Decorator to skip or run tests depending on the Python version.
40
39
41
40
Also, it can be used with the 'setUp' method for skipping
42
41
the whole test suite.
@@ -47,9 +46,12 @@ def wrapper(self, *args, **kwargs):
47
46
if func .__name__ == 'setUp' :
48
47
func (self , * args , ** kwargs )
49
48
50
- major = sys .version_info .major
51
- if major != REQUIRED_PYTHON_MAJOR :
52
- self .skipTest ('Python %s connector %s' % (major , msg ))
49
+ ver = sys .version_info
50
+ python_version_str = '%d.%d' % (ver .major , ver .minor )
51
+ python_version = pkg_resources .parse_version (python_version_str )
52
+ support_version = pkg_resources .parse_version (REQUIRED_PYTHON_VERSION )
53
+ if python_version < support_version :
54
+ self .skipTest ('Python %s connector %s' % (python_version , msg ))
53
55
54
56
if func .__name__ != 'setUp' :
55
57
func (self , * args , ** kwargs )
@@ -88,4 +90,15 @@ def skip_or_run_mp_bin_test(func):
88
90
Python 2 connector do not support mp_bin.
89
91
"""
90
92
91
- return skip_or_run_test_python_major (func , 3 , 'does not support mp_bin' )
93
+ return skip_or_run_test_python (func , '3.0' , 'does not support mp_bin' )
94
+
95
+
96
+ def skip_or_run_conn_pool_test (func ):
97
+ """Decorator to skip or run mp_bin-related tests depending on
98
+ the Python version.
99
+
100
+ Python 2 connector do not support mp_bin.
101
+ """
102
+
103
+ return skip_or_run_test_python (func , '3.7' ,
104
+ 'does not support ConnectionPool' )
0 commit comments