mirror of
				https://github.com/nvbn/thefuck.git
				synced 2025-10-30 22:54:14 +00:00 
			
		
		
		
	update readme and add tests
added tests for matching and fixing rvm use command. updated readme to include rvm use.
This commit is contained in:
		| @@ -307,6 +307,7 @@ following rules are enabled by default: | |||||||
| * `remove_shell_prompt_literal` – remove leading shell prompt symbol `$`, common when copying commands from documentations; | * `remove_shell_prompt_literal` – remove leading shell prompt symbol `$`, common when copying commands from documentations; | ||||||
| * `remove_trailing_cedilla` – remove trailing cedillas `ç`, a common typo for european keyboard layouts; | * `remove_trailing_cedilla` – remove trailing cedillas `ç`, a common typo for european keyboard layouts; | ||||||
| * `rm_dir` – adds `-rf` when you try to remove a directory; | * `rm_dir` – adds `-rf` when you try to remove a directory; | ||||||
|  | * `rvm_use` – adds `rvm install` command infront of `rvm use` command when requested version is not installed; | ||||||
| * `scm_correction` – corrects wrong scm like `hg log` to `git log`; | * `scm_correction` – corrects wrong scm like `hg log` to `git log`; | ||||||
| * `sed_unterminated_s` – adds missing '/' to `sed`'s `s` commands; | * `sed_unterminated_s` – adds missing '/' to `sed`'s `s` commands; | ||||||
| * `sl_ls` – changes `sl` to `ls`; | * `sl_ls` – changes `sl` to `ls`; | ||||||
|   | |||||||
							
								
								
									
										26
									
								
								tests/rules/test_rvm_use.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								tests/rules/test_rvm_use.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,26 @@ | |||||||
|  | import pytest | ||||||
|  | from thefuck.rules.rvm_use import match, get_new_command | ||||||
|  | from thefuck.types import Command | ||||||
|  |  | ||||||
|  |  | ||||||
|  | output = pattern = f"""RVM is not a function, selecting rubies with 'rvm use ...' will not work. | ||||||
|  |  | ||||||
|  | You need to change your terminal emulator preferences to allow login shell. | ||||||
|  | Sometimes it is required to use `/bin/bash --login` as the command. | ||||||
|  | Please visit https://rvm.io/integration/gnome-terminal/ for an example.""" | ||||||
|  |  | ||||||
|  |  | ||||||
|  | @pytest.mark.parametrize('command', [ | ||||||
|  |     Command('rvm use 2.7.2', output), | ||||||
|  |     Command('rvm use 3.0.1', output), | ||||||
|  |     Command('rvm use 1.6.7', output)]) | ||||||
|  | def test_match(command): | ||||||
|  |     assert match(command) | ||||||
|  |  | ||||||
|  |  | ||||||
|  | @pytest.mark.parametrize('command, new_command', [ | ||||||
|  |     (Command('rvm use 2.7.2', output), 'rvm install "ruby-2.7.2"; rvm use 2.7.2'), | ||||||
|  |     (Command('rvm use 3.0.1', output), 'rvm install "ruby-3.0.1"; rvm use 3.0.1'), | ||||||
|  |     (Command('rvm use 1.6.7', output), 'rvm install "ruby-1.6.7"; rvm use 1.6.7')]) | ||||||
|  | def test_get_new_command(command, new_command): | ||||||
|  |     assert get_new_command(command) == new_command | ||||||
		Reference in New Issue
	
	Block a user