mirror of
				https://github.com/nvbn/thefuck.git
				synced 2025-10-30 22:54:14 +00:00 
			
		
		
		
	adding functional test for cd_correction rule
This commit is contained in:
		
							
								
								
									
										40
									
								
								tests/functional/test_cd_correction.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								tests/functional/test_cd_correction.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,40 @@ | ||||
| import pytest | ||||
|  | ||||
| dockerfile = u''' | ||||
| FROM python:3 | ||||
| RUN adduser --disabled-password --gecos '' test | ||||
| WORKDIR /src | ||||
| USER test | ||||
| RUN echo 'eval $(thefuck --alias)' > /home/test/.bashrc | ||||
| RUN echo > /home/test/.bash_history | ||||
| RUN mkdir -p /home/test/some/random/folder | ||||
| RUN mkdir -p /home/test/another/random/folder | ||||
| USER root | ||||
| ''' | ||||
|  | ||||
|  | ||||
| def plot(proc, TIMEOUT): | ||||
|     proc.sendline(u'cd /home/test/some/random') | ||||
|     proc.sendline(u'fuck') | ||||
|     assert proc.expect([TIMEOUT, u'No fucks given']) | ||||
|     proc.sendline(u'cd flder') | ||||
|     proc.sendline(u'fuck') | ||||
|     assert proc.expect([TIMEOUT, u'cd "/home/test/some/random/folder"']) | ||||
|     proc.send('\n') | ||||
|     proc.sendline(u'pwd') | ||||
|     assert proc.expect([TIMEOUT, u'/home/test/some/random/folder']) | ||||
|     proc.sendline(u'cd /home/test/another/randm/folder/') | ||||
|     proc.sendline(u'fuck') | ||||
|     assert proc.expect([TIMEOUT, u'cd "/home/test/another/random/folder"']) | ||||
|     proc.send('\n') | ||||
|     proc.sendline(u'pwd') | ||||
|     assert proc.expect([TIMEOUT, u'/home/test/another/random/folder']) | ||||
|  | ||||
|  | ||||
| @pytest.mark.functional | ||||
| def test_performance(spawnu, TIMEOUT, benchmark): | ||||
|     proc = spawnu(u'thefuck/python3-cd_correction-functional', | ||||
|                   dockerfile, u'bash') | ||||
|     proc.sendline(u'pip install /src') | ||||
|     proc.sendline(u'su test') | ||||
|     assert benchmark(plot, proc, TIMEOUT) is None | ||||
		Reference in New Issue
	
	Block a user