def _raise_no_single_match(self, name, found):
     if self.source_type == self.TEST_CASE_FILE_TYPE:
         source = self.source_type
     else:
         source = "%s '%s'" % (self.source_type, self.source)
     if not found:
         raise KeywordError("%s contains no keywords matching name '%s'." %
                            (source, name))
     error = [
         "%s contains multiple keywords matching name '%s':" %
         (source, name)
     ]
     names = sorted(handler.name for handler in found)
     raise KeywordError('\n    '.join(error + names))
Exemple #2
0
 def _raise_no_keyword_found(self, name):
     if name.strip(': ').upper() == 'FOR':
         raise KeywordError(
             f"Support for the old FOR loop syntax has been removed. "
             f"Replace '{name}' with 'FOR', end the loop with 'END', and "
             f"remove escaping backslashes.")
     if name == '\\':
         raise KeywordError(
             "No keyword with name '\\' found. If it is used inside a for "
             "loop, remove escaping backslashes and end the loop with 'END'."
         )
     message = f"No keyword with name '{name}' found."
     finder = KeywordRecommendationFinder(self.user_keywords,
                                          self.libraries, self.resources)
     raise KeywordError(finder.recommend_similar_keywords(name, message))
Exemple #3
0
 def _raise_no_keyword_found(self, name):
     msg = "No keyword with name '%s' found." % name
     finder = KeywordRecommendationFinder(self.user_keywords,
                                          self.libraries, self.resources)
     recommendations = finder.recommend_similar_keywords(name)
     msg = finder.format_recommendations(msg, recommendations)
     raise KeywordError(msg)
Exemple #4
0
 def _raise_no_keyword_found(self, name):
     if name.strip(': ').upper() == 'FOR':
         raise KeywordError(
             "Support for the old for loop syntax has been removed. "
             "Replace '%s' with 'FOR', end the loop with 'END', and "
             "remove escaping backslashes." % name)
     if name == '\\':
         raise KeywordError(
             "No keyword with name '\\' found. If it is used inside a for "
             "loop, remove escaping backslashes and end the loop with 'END'."
         )
     msg = "No keyword with name '%s' found." % name
     finder = KeywordRecommendationFinder(self.user_keywords,
                                          self.libraries, self.resources)
     recommendations = finder.recommend_similar_keywords(name)
     msg = finder.format_recommendations(msg, recommendations)
     raise KeywordError(msg)
Exemple #5
0
 def _raise_multiple_keywords_found(self, name, found, implicit=True):
     error = "Multiple keywords with name '%s' found" % name
     if implicit:
         error += ". Give the full name of the keyword you want to use"
     names = sorted(runner.longname for runner in found)
     raise KeywordError('\n    '.join([error + ':'] + names))
Exemple #6
0
 def _raise_multiple_keywords_found(self, runners, used_as, implicit=True):
     error = f"Multiple keywords with name '{used_as}' found"
     if implicit:
         error += ". Give the full name of the keyword you want to use"
     names = sorted(r.longname for r in runners)
     raise KeywordError('\n    '.join([error + ':'] + names))