Skip to main content

testingfix-unit-tests

Refactor unit test files by aligning strings, renaming methods, and factoring out common test code

ソース情報

リポジトリ
causify-ai/helpers
ソースの最終更新活動
2026年3月18日 15:30
検出された SKILL.md の言語
英語
スター
146
フォーク
162

インストール方法

デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。

ソースファイルを確認

インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。

SKILL.md を表示中

SKILL.md
ソースの指示 · 読み取り専用プレビュー
name
testing.fix_unit_tests
description
Refactor unit test files by aligning strings, renaming methods, and factoring out common test code
- When I pass you a test file apply the following transformations to the code, making sure that there is no change in behavior. ## Align Strings to the Code - Instead of this ```python def hello() ... content = """<start:file1.txt> Content for file1 <start:file2.txt> Content for file2 """ ``` align the content of the string to the rest of the code ```python def hello() ... content = """ <start:file1.txt> Content for file1 <start:file2.txt> Content for file2 """ content = hprint.dedent(content) ``` ## Rename the Test Methods as `test1`, `test2`, ... ## Factor Out Common Coded - Aggressively factor out common code in helper code so that each test method sets the inputs and the expected value and then calls the helper function with the common code - Instead of: ```python def test_first_line(self) -> None: """ Test position in first line returns line 1. """ # Prepare inputs. content = "Line 1\nLine 2\nLine 3" position = 3 # Run test. actual = dshctsifi._get_line_number(content, position) # Check outputs. expected = 1 self.assertEqual(actual, expected) def test_second_line(self) -> None: """ Test position in second line returns line 2. """ # Prepare inputs. content = "Line 1\nLine 2\nLine 3" position = 10 # Run test. actual = dshctsifi._get_line_number(content, position) # Check outputs. expected = 2 self.assertEqual(actual, expected) ``` - Do ```python def helper(self, content: str, position: int, expected: int) -> None: # Run test. actual = dshctsifi._get_line_number(content, position) # Check outputs. self.assertEqual(actual, expected) def test1(self) -> None: """ Test position in first line returns line 1. """ # Prepare inputs. content = "Line 1\nLine 2\nLine 3" position = 3 expected = 1 # Run test. self.helper(content, position, expected) def test2(self) -> None: """ Test position in second line returns line 2. """ # Prepare inputs. content = "Line 1\nLine 2\nLine 3" position = 10 expected = 2 # Run test. self.helper(content, position, expected) ``` ## Avoid Replicated Assignment - If a variable `var` and `expected` need to always be the same (e.g., to show that a variable doesn't change), instead of replicating the assignment, do an assignment ```python expected = var ``` - **Bad** ```python def test2(self) -> None: """ Test indented code block with correct indentation. """ # Prepare inputs. txt = """ - Delete unused reference files ```bash > rm Dockerfile.ubuntu ``` """ # Expected: no changes needed. expected = """ - Delete unused reference files ```bash > rm Dockerfile.ubuntu ``` """ # Run test. self.helper(txt, expected) ``` - **Good** ```python def test2(self) -> None: """ Test indented code block with correct indentation. """ # Prepare inputs. txt = """ - Delete unused reference files ```bash > rm Dockerfile.ubuntu ``` """ # Expected: no changes needed. expected = txt # Run test. self.helper(txt, expected) ``` # Important - For all the code you must follow the instructions in @.claude/skills/coding.format_rules/SKILL.md
GitHubで見る