mirror of
https://github.com/kennethreitz/simplemind.git
synced 2026-06-05 22:50:18 +00:00
Merge pull request #17 from fcoagz/main
Suggest some similar provider in find_provider function
This commit is contained in:
+9
-1
@@ -1,7 +1,9 @@
|
||||
import difflib
|
||||
from typing import Union
|
||||
|
||||
from .providers import providers
|
||||
|
||||
_PROVIDER_NAMES = [provider.NAME.lower() for provider in providers]
|
||||
|
||||
def find_provider(provider_name: Union[str, None]):
|
||||
"""Find a provider by name."""
|
||||
@@ -10,4 +12,10 @@ def find_provider(provider_name: Union[str, None]):
|
||||
if provider_class.NAME.lower() == provider_name.lower():
|
||||
# Instantiate the provider
|
||||
return provider_class()
|
||||
raise ValueError(f"Provider {provider_name} not found")
|
||||
|
||||
provider_found = difflib.get_close_matches(provider_name.lower(), _PROVIDER_NAMES, n=1) # Show only one suggestion
|
||||
|
||||
if provider_found:
|
||||
raise ValueError(f"Provider {provider_name} not found. Maybe you try to use is '{provider_found[0]}'?")
|
||||
else:
|
||||
raise ValueError(f"Provider {provider_name} not found.")
|
||||
Reference in New Issue
Block a user