mirror of
https://github.com/nvbn/thefuck.git
synced 2025-03-20 01:28:56 +00:00
59 lines
2.1 KiB
Python
59 lines
2.1 KiB
Python
import pytest
|
|
from thefuck.rules.git_push import match, get_new_command
|
|
from thefuck.types import Command
|
|
|
|
|
|
@pytest.fixture
|
|
def output():
|
|
return '''fatal: The current branch master has no upstream branch.
|
|
To push the current branch and set the remote as upstream, use
|
|
|
|
git push --set-upstream origin master
|
|
|
|
'''
|
|
|
|
|
|
@pytest.fixture
|
|
def output_bitbucket():
|
|
return '''Total 0 (delta 0), reused 0 (delta 0)
|
|
remote:
|
|
remote: Create pull request for feature/set-upstream:
|
|
remote: https://bitbucket.org/set-upstream
|
|
remote:
|
|
To git@bitbucket.org:test.git
|
|
e5e7fbb..700d998 feature/set-upstream -> feature/set-upstream
|
|
Branch feature/set-upstream set up to track remote branch feature/set-upstream from origin.
|
|
'''
|
|
|
|
|
|
def test_match(output):
|
|
assert match(Command('git push', output))
|
|
assert match(Command('git push master', output))
|
|
assert not match(Command('git push master', ''))
|
|
assert not match(Command('ls', output))
|
|
|
|
|
|
def test_match_bitbucket(output_bitbucket):
|
|
assert not match(Command('git push origin', output_bitbucket))
|
|
|
|
|
|
def test_get_new_command(output):
|
|
assert get_new_command(Command('git push', output))\
|
|
== "git push --set-upstream origin master"
|
|
assert get_new_command(Command('git push master', output))\
|
|
== "git push --set-upstream origin master"
|
|
assert get_new_command(Command('git push -u', output))\
|
|
== "git push --set-upstream origin master"
|
|
assert get_new_command(Command('git push -u origin', output))\
|
|
== "git push --set-upstream origin master"
|
|
assert get_new_command(Command('git push origin', output))\
|
|
== "git push --set-upstream origin master"
|
|
assert get_new_command(Command('git push --set-upstream origin', output))\
|
|
== "git push --set-upstream origin master"
|
|
assert get_new_command(Command('git push --quiet', output))\
|
|
== "git push --set-upstream origin master --quiet"
|
|
assert get_new_command(Command('git push --quiet origin', output))\
|
|
== "git push --set-upstream origin master --quiet"
|
|
assert get_new_command(Command('git -c test=test push --quiet origin', output))\
|
|
== "git -c test=test push --set-upstream origin master --quiet"
|