Testing Git Pull Error Handling in thefuck
This test suite validates the functionality of handling git pull operations with uncommitted changes in the thefuck command-line tool. It specifically tests error detection and command correction for scenarios where git pull fails due to uncommitted changes in the working directory.
Test Coverage Overview
Implementation Analysis
Technical Details
Best Practices Demonstrated
nvbn/thefuck
tests/rules/test_git_pull_unstaged_changes.py
import pytest
from thefuck.rules.git_pull_uncommitted_changes import match, get_new_command
from thefuck.types import Command
@pytest.fixture
def output():
return '''error: Cannot pull with rebase: Your index contains uncommitted changes.'''
def test_match(output):
assert match(Command('git pull', output))
assert not match(Command('git pull', ''))
assert not match(Command('ls', output))
def test_get_new_command(output):
assert (get_new_command(Command('git pull', output))
== "git stash && git pull && git stash pop")