Skip to content

Commit

Permalink
LanguageToolBear.py: Resolve settings conflict
Browse files Browse the repository at this point in the history
Rename setting `language` to `natural_language`
in LanguageToolBear.py to resolve conflict

Closes #1137
  • Loading branch information
pratyushprakash committed Mar 23, 2017
1 parent b8c17ed commit 735dda7
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 8 deletions.
16 changes: 9 additions & 7 deletions bears/natural_language/LanguageToolBear.py
Expand Up @@ -33,16 +33,16 @@ def check_prerequisites(cls):
except ImportError: # pragma: no cover
return 'Please install the `language-check` pip package.'

@deprecate_settings(language='locale')
@deprecate_settings(natural_language=('language', 'locale'))
def run(self,
filename,
file,
language: str='auto',
natural_language: str='auto',
languagetool_disable_rules: typed_list(str)=()):
'''
Checks the code with LanguageTool.
:param language: A locale representing the language
:param natural_language: A locale representing the language
you want to have checked. If set to
'auto' the language is guessed.
If the language cannot be guessed,
Expand All @@ -54,11 +54,13 @@ def run(self,
from language_check import LanguageTool, correct

joined_text = ''.join(file)
language = (guess_language(joined_text)
if language == 'auto' else language)
language = 'en-US' if not language else language
natural_language = (guess_language(joined_text)
if natural_language == 'auto'
else natural_language)
natural_language = 'en-US' if not natural_language \
else natural_language

tool = LanguageTool(language, motherTongue='en_US')
tool = LanguageTool(natural_language, motherTongue='en_US')
tool.disabled.update(languagetool_disable_rules)

matches = tool.check(joined_text)
Expand Down
16 changes: 15 additions & 1 deletion tests/natural_language/LanguageToolBearTest.py
Expand Up @@ -27,7 +27,7 @@
LanguageToolBear,
valid_files=('A correct English sentence sounds nice to everyone.',),
invalid_files=('Ein korrekter englischer Satz klingt für alle gut.',),
settings={'language': 'en-US'})
settings={'natural_language': 'en-US'})


LanguageToolBearDisableRulesTest = verify_local_bear(
Expand All @@ -39,6 +39,20 @@
settings={'languagetool_disable_rules': 'UPPERCASE_SENTENCE_START'})


LanguageToolBearDeprecatedSettingTest1 = verify_local_bear(
LanguageToolBear,
valid_files=('A correct English sentence sounds nice to everyone.',),
invalid_files=('Ein korrekter englischer Satz klingt für alle gut.',),
settings={'language': 'en-US'})


LanguageToolBearDeprecatedSettingTest2 = verify_local_bear(
LanguageToolBear,
valid_files=('A correct English sentence sounds nice to everyone.',),
invalid_files=('Ein korrekter englischer Satz klingt für alle gut.',),
settings={'locale': 'en-US'})


@generate_skip_decorator(LanguageToolBear)
class LanguageToolBearPrerequisitesTest(unittest.TestCase):

Expand Down

0 comments on commit 735dda7

Please sign in to comment.