Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def test_hash(self):
"""Test hashing of search."""
p1 = re.compile('test')
p2 = re.compile('test')
p3 = re.compile('test', re.X)
p4 = re.compile(b'test')
w1 = _wcparse.WcRegexp((p1,))
w2 = _wcparse.WcRegexp((p2,))
w3 = _wcparse.WcRegexp((p3,))
w4 = _wcparse.WcRegexp((p4,))
w5 = _wcparse.WcRegexp((p1,), (p3,))
self.assertTrue(w1 == w2)
self.assertTrue(w1 != w3)
self.assertTrue(w1 != w4)
self.assertTrue(w1 != w5)
w6 = copy.copy(w1)
self.assertTrue(w1 == w6)
self.assertTrue(w6 in {w1})
def test_hash(self):
"""Test hashing of search."""
p1 = re.compile('test')
p2 = re.compile('test')
p3 = re.compile('test', re.X)
p4 = re.compile(b'test')
w1 = _wcparse.WcRegexp((p1,))
w2 = _wcparse.WcRegexp((p2,))
w3 = _wcparse.WcRegexp((p3,))
w4 = _wcparse.WcRegexp((p4,))
w5 = _wcparse.WcRegexp((p1,), (p3,))
self.assertTrue(w1 == w2)
self.assertTrue(w1 != w3)
self.assertTrue(w1 != w4)
self.assertTrue(w1 != w5)
w6 = copy.copy(w1)
self.assertTrue(w1 == w6)
self.assertTrue(w6 in {w1})
def test_hash(self):
"""Test hashing of search."""
p1 = re.compile('test')
p2 = re.compile('test')
p3 = re.compile('test', re.X)
p4 = re.compile(b'test')
w1 = _wcparse.WcRegexp((p1,))
w2 = _wcparse.WcRegexp((p2,))
w3 = _wcparse.WcRegexp((p3,))
w4 = _wcparse.WcRegexp((p4,))
w5 = _wcparse.WcRegexp((p1,), (p3,))
self.assertTrue(w1 == w2)
self.assertTrue(w1 != w3)
self.assertTrue(w1 != w4)
self.assertTrue(w1 != w5)
w6 = copy.copy(w1)
self.assertTrue(w1 == w6)
self.assertTrue(w6 in {w1})
def test_hash(self):
"""Test hashing of search."""
p1 = re.compile('test')
p2 = re.compile('test')
p3 = re.compile('test', re.X)
p4 = re.compile(b'test')
w1 = _wcparse.WcRegexp((p1,))
w2 = _wcparse.WcRegexp((p2,))
w3 = _wcparse.WcRegexp((p3,))
w4 = _wcparse.WcRegexp((p4,))
w5 = _wcparse.WcRegexp((p1,), (p3,))
self.assertTrue(w1 == w2)
self.assertTrue(w1 != w3)
self.assertTrue(w1 != w4)
self.assertTrue(w1 != w5)
w6 = copy.copy(w1)
self.assertTrue(w1 == w6)
self.assertTrue(w6 in {w1})
def _pickle(p):
return WcRegexp, (p._include, p._exclude, p._real, p._path, p._follow)
def __ne__(self, other):
"""Equal."""
return (
not isinstance(other, WcRegexp) or
self._include != other._include or
self._exclude != other._exclude or
self._real != other._real or
self._path != other._path or
self._follow != other._follow
)
if expanded not in seen:
seen.add(expanded)
(negative if is_negative(expanded, flags) else positive).append(_compile(expanded, flags))
if patterns and negative and not positive:
if flags & NEGATEALL:
default = '**'
if isinstance(patterns[0], bytes):
default = os.fsencode(default)
positive.append(_compile(default, flags | (GLOBSTAR if flags & PATHNAME else 0)))
if patterns and flags & NODIR:
ptype = BYTES if isinstance(patterns[0], bytes) else UNICODE
negative.append(RE_NO_DIR[ptype] if is_unix else RE_WIN_NO_DIR[ptype])
return WcRegexp(tuple(positive), tuple(negative), flags & REALPATH, flags & PATHNAME, flags & FOLLOW)
def __init__(self, include, exclude=None, real=False, path=False, follow=False):
"""Initialization."""
super(WcRegexp, self).__init__(
_include=include,
_exclude=exclude,
_real=real,
_path=path,
_follow=follow,
_hash=hash(
(
type(self),
type(include), include,
type(exclude), exclude,
type(real), real,
type(path), path,
type(follow), follow
)
return _match_pattern(
filename,
self._include,
self._exclude,
self._real,
self._path,
self._follow,
root_dir=root_dir
)
def _pickle(p):
return WcRegexp, (p._include, p._exclude, p._real, p._path, p._follow)
copyreg.pickle(WcRegexp, _pickle)