Skip to content

Commit 2bd2d57

Browse files
committed
Close #8: Properly rename classes with TestCase in their names
1 parent 8c6d8b1 commit 2bd2d57

5 files changed

Lines changed: 13 additions & 3 deletions

File tree

.gitignore

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
*.egg-info
22
*.pyc
33
/.coverage
4+
/.hypothesis
45
/.mypy_cache
56
/.pytest_cache
6-
/.tox
7-
/venv*
87
dist

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,11 @@ All notable changes to this project will be documented in this file. This projec
44

55
## [Unreleased]
66

7+
8+
## [1.0.8] - September 19th 2021
9+
10+
- Fix: A class called `ThingTestCase` should be renamed to `TestThing`
11+
712
## [1.0.7] - September 16th 2021
813

914
- Another edge case involving multi-line comments and trailing slashes

pytestify/fixes/base_class.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ def remove_base_class(contents: str) -> str:
4040
line = content_list[i]
4141
for variation in variations:
4242
line = line.replace(variation, '')
43+
orig_name = orig_name.replace(variation, '')
4344

4445
# delete empty paren if they exist
4546
line = line.replace(f'{orig_name}():', f'{orig_name}:')

setup.cfg

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[metadata]
22
name = pytestify
3-
version = 1.0.7
3+
version = 1.0.8
44
description = Automatically convert unittests to pytest
55
long_description = file: README.md
66
long_description_content_type = text/markdown

tests/fixes/test_base_class.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,11 @@
1111
('class TestCls(TestCase): pass', 'class TestCls: pass'),
1212
('class ClsTests(TestCase): pass', 'class TestCls: pass'),
1313
('class ClsTest(TestCase): pass', 'class TestCls: pass'),
14+
(
15+
'class ThingTestCase(unittest.TestCase): pass',
16+
'class TestThing: pass',
17+
),
18+
('class ThingTestCase(TestCase): pass', 'class TestThing: pass'),
1419
],
1520
)
1621
def test_remove_base_class(before, after):

0 commit comments

Comments
 (0)