1
0
mirror of https://github.com/nvbn/thefuck.git synced 2025-03-14 14:48:49 +00:00

Merge f59aa931c3d76b40b2078cf2926b239dc0798b74 into ed24e4ca61d5943a4ff6c4db7217f810e75b2632

This commit is contained in:
Alex Barcelo 2018-02-23 19:46:40 +00:00 committed by GitHub
commit 651685add0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View 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