Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit fdd6989

Browse files
committed
Add failing test for versioned repositories.
1 parent 3baae2f commit fdd6989

6 files changed

Lines changed: 44 additions & 0 deletions

File tree

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
- id: python3-hook
2+
name: Python 3 Hook
3+
entry: python3-hook
4+
language: python
5+
language_version: python3.3

testing/resources/python3_hooks_repo/python3_hook/__init__.py

Whitespace-only changes.
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
from __future__ import print_function
2+
import sys
3+
4+
5+
def func():
6+
print('{0}.{1}'.format(*sys.version_info[:2]))
7+
print(repr(sys.argv[1:]))
8+
print('Hello World')
9+
return 0
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
from setuptools import find_packages
2+
from setuptools import setup
3+
4+
setup(
5+
name='python3_hook',
6+
version='0.0.0',
7+
packages=find_packages('.'),
8+
entry_points={
9+
'console_scripts': ['python3-hook = python3_hook.main:func'],
10+
},
11+
)

tests/conftest.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,11 @@ def python_hooks_repo(dummy_git_repo):
7272
yield _make_repo(dummy_git_repo, 'python_hooks_repo')
7373

7474

75+
@pytest.yield_fixture
76+
def python3_hooks_repo(dummy_git_repo):
77+
yield _make_repo(dummy_git_repo, 'python3_hooks_repo')
78+
79+
7580
@pytest.yield_fixture
7681
def node_hooks_repo(dummy_git_repo):
7782
yield _make_repo(dummy_git_repo, 'node_hooks_repo')
@@ -133,6 +138,11 @@ def config_for_python_hooks_repo(python_hooks_repo):
133138
yield _make_config(python_hooks_repo, 'foo', '\\.py$')
134139

135140

141+
@pytest.yield_fixture
142+
def config_for_python3_hooks_repo(python3_hooks_repo):
143+
yield _make_config(python3_hooks_repo, 'python3-hook', '\\.py$')
144+
145+
136146
@pytest.yield_fixture
137147
def config_for_prints_cwd_repo(prints_cwd_repo):
138148
yield _make_config(prints_cwd_repo, 'prints_cwd', '^$')

tests/repository_test.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,15 @@ def test_run_a_python_hook(config_for_python_hooks_repo, store):
2424
assert ret[1] == "['/dev/null']\nHello World\n"
2525

2626

27+
@pytest.mark.xfail
28+
@pytest.mark.integration
29+
def test_run_versioned_hook(config_for_python3_hooks_repo, store):
30+
repo = Repository.create(config_for_python3_hooks_repo, store)
31+
ret = repo.run_hook('python3-hook', ['/dev/null'])
32+
assert ret[0] == 0
33+
assert ret[1] == "3.3\n['/dev/null']\nHello World\n"
34+
35+
2736
@pytest.mark.integration
2837
def test_lots_of_files(config_for_python_hooks_repo, store):
2938
repo = Repository.create(config_for_python_hooks_repo, store)

0 commit comments

Comments
 (0)