docs: def get_path_spec(self, path, action=None):
          """Get the specification matching with the given path.
  
          Args:
              path: path we want the specification.
              action: get the specification for the given action.
  
          Returns:
              A tuple with the base name of the path and the specification.
              Or (None, None) if no specification is found.
          """
          # Get the specification of the given path
          path_spec = None
          path_name = None
          for base_path in self.paths.keys():
              if path == base_path:
                  path_spec = self.paths[base_path]
                  path_name = base_path
  
          # Path parameter
          if path_spec is None:
              for base_path in self.paths.keys():
                  regex_from_path = re.compile(re.sub('{[^/]*}', '([^/]*)', base_path) + r'$')
                  if re.match(regex_from_path, path):
                      path_spec = self.paths[base_path]
                      path_name = base_path
  
          # Test action if given
          if path_spec is not None and action is not None:
              if action not in path_spec.keys():
                  return (None, None)
              else:
                  path_spec = path_spec[action]
  
          return (path_name, path_spec)