@@ -177,7 +177,7 @@ def _build(self, raw_matcher):
177177 :type raw_matcher: dict
178178 """
179179 self ._data = raw_matcher .get ('stringMatcherData' )
180- self ._semver = Semver (self ._data )
180+ self ._semver = Semver . build (self ._data )
181181
182182 def _match (self , key , attributes = None , context = None ):
183183 """
@@ -193,15 +193,19 @@ def _match(self, key, attributes=None, context=None):
193193 :returns: Wheter the match is successful.
194194 :rtype: bool
195195 """
196- if self ._data is None :
196+ if self ._data is None or self . _semver is None :
197197 _LOGGER .error ("stringMatcherData is required for EQUAL_TO_SEMVER matcher type" )
198- return None
198+ return False
199199
200200 matching_data = Sanitizer .ensure_string (self ._get_matcher_input (key , attributes ))
201201 if matching_data is None :
202202 return False
203203
204- return self ._semver .version == Semver (matching_data ).version
204+ matching_semver = Semver .build (matching_data )
205+ if matching_semver is None :
206+ return False
207+
208+ return self ._semver .version == matching_semver .version
205209
206210 def __str__ (self ):
207211 """Return string Representation."""
@@ -222,7 +226,7 @@ def _build(self, raw_matcher):
222226 :type raw_matcher: dict
223227 """
224228 self ._data = raw_matcher .get ('stringMatcherData' )
225- self ._semver = Semver (self ._data )
229+ self ._semver = Semver . build (self ._data )
226230
227231 def _match (self , key , attributes = None , context = None ):
228232 """
@@ -238,15 +242,19 @@ def _match(self, key, attributes=None, context=None):
238242 :returns: Wheter the match is successful.
239243 :rtype: bool
240244 """
241- if self ._data is None :
245+ if self ._data is None or self . _semver is None :
242246 _LOGGER .error ("stringMatcherData is required for GREATER_THAN_OR_EQUAL_TO_SEMVER matcher type" )
243- return None
247+ return False
244248
245249 matching_data = Sanitizer .ensure_string (self ._get_matcher_input (key , attributes ))
246250 if matching_data is None :
247251 return False
248252
249- return Semver (matching_data ).compare (self ._semver ) in [0 , 1 ]
253+ matching_semver = Semver .build (matching_data )
254+ if matching_semver is None :
255+ return False
256+
257+ return matching_semver .compare (self ._semver ) in [0 , 1 ]
250258
251259 def __str__ (self ):
252260 """Return string Representation."""
@@ -267,7 +275,7 @@ def _build(self, raw_matcher):
267275 :type raw_matcher: dict
268276 """
269277 self ._data = raw_matcher .get ('stringMatcherData' )
270- self ._semver = Semver (self ._data )
278+ self ._semver = Semver . build (self ._data )
271279
272280 def _match (self , key , attributes = None , context = None ):
273281 """
@@ -283,15 +291,19 @@ def _match(self, key, attributes=None, context=None):
283291 :returns: Wheter the match is successful.
284292 :rtype: bool
285293 """
286- if self ._data is None :
294+ if self ._data is None or self . _semver is None :
287295 _LOGGER .error ("stringMatcherData is required for LESS_THAN_OR_EQUAL_TO_SEMVER matcher type" )
288- return None
296+ return False
289297
290298 matching_data = Sanitizer .ensure_string (self ._get_matcher_input (key , attributes ))
291299 if matching_data is None :
292300 return False
293301
294- return Semver (matching_data ).compare (self ._semver ) in [0 , - 1 ]
302+ matching_semver = Semver .build (matching_data )
303+ if matching_semver is None :
304+ return False
305+
306+ return matching_semver .compare (self ._semver ) in [0 , - 1 ]
295307
296308 def __str__ (self ):
297309 """Return string Representation."""
0 commit comments