diff options
author | Bert JW Regeer <xistence@0x58.com> | 2018-09-25 03:02:01 -0600 |
---|---|---|
committer | w0rp <w0rp@users.noreply.github.com> | 2018-09-25 10:02:01 +0100 |
commit | 8e7e810db6f54c045474ae7d36575ee01804b885 (patch) | |
tree | 740ca68fe05332c842389183132acc0031cb4450 /test/fixers | |
parent | aa5c82b1718f44d04f6dd11bc63f6eeed2089d9d (diff) | |
download | ale-8e7e810db6f54c045474ae7d36575ee01804b885.zip |
Bugfix: python add blank lines (#1944)
* Don't add newlines when not a control statement for Python
* Add test for accidental newline fix
* Add docstring detection to avoid adding unnecessarily newlines
* Add tests for docstring detection
Diffstat (limited to 'test/fixers')
-rw-r--r-- | test/fixers/test_python_add_blank_lines_fixer.vader | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/test/fixers/test_python_add_blank_lines_fixer.vader b/test/fixers/test_python_add_blank_lines_fixer.vader index 4a91aa10..7d042c8a 100644 --- a/test/fixers/test_python_add_blank_lines_fixer.vader +++ b/test/fixers/test_python_add_blank_lines_fixer.vader @@ -6,15 +6,22 @@ After: Given python(Some Python without blank lines): def foo(): + """ This is a simple test docstring """ return 1 def bar(): + '''This is another simple test docstring''' return 1 return 4 def bar(): + """ + This is a multi-line + docstring + """ + if x: pass for l in x: @@ -44,16 +51,25 @@ Execute(Blank lines should be added appropriately): Expect python(Newlines should be added): def foo(): + """ This is a simple test docstring """ + return 1 def bar(): + '''This is another simple test docstring''' + return 1 return 4 def bar(): + """ + This is a multi-line + docstring + """ + if x: pass @@ -109,3 +125,43 @@ Expect python(extra newlines shouldn't be added to the main block): if __name__ == '__main__': main() + + +Given python(A file with variables/docstring that start with a control statement): + def some(): + """ + This is a docstring that contains an + break control statement and also contains a + return something funny. + """ + + continue_some_var = True + forward_something = False + + if ( + continue_some_var and + forwarded_something + ): + return True + + +Execute(Fix the file): + let g:ale_fixers = {'python': ['add_blank_lines_for_python_control_statements']} + ALEFix + +Expect python(Extra new lines are not added to the file): + def some(): + """ + This is a docstring that contains an + break control statement and also contains a + return something funny. + """ + + continue_some_var = True + forward_something = False + + if ( + continue_some_var and + forwarded_something + ): + return True |