unittest-skill
Generates Python unittest tests. Built-in testing framework with TestCase, setUp/tearDown, and assertion methods. Use when user mentions "unittest", "TestCase", "self.assertEqual", "Python unittest". Triggers on: "unittest", "TestCase", "self.assertEqual", "Python unittest" (not pytest).
- 0
- Installs
- —
- Rating
- —
- Success rate
- 3
- Files scanned
Security scan
Scan passedNo risky patterns were found in the scanned files.
Content sha256 920c6b160cff4848… — run codexguild_scan_skills after installing to verify your local copy.
Static analysis is a first line of defense, not a guarantee. Read the source
SKILL.md
Python unittest Skill
Core Patterns
Basic Test
import unittest
class TestCalculator(unittest.TestCase):
def setUp(self):
self.calc = Calculator()
def test_add(self):
self.assertEqual(self.calc.add(2, 3), 5)
def test_divide_by_zero(self):
with self.assertRaises(ZeroDivisionError):
self.calc.divide(10, 0)
def test_multiple_assertions(self):
self.assertEqual(self.calc.add(2, 2), 4)
self.assertEqual(self.calc.subtract(5, 3), 2)
self.assertAlmostEqual(self.calc.divide(10, 3), 3.333, places=3)
def tearDown(self):
pass # cleanup
if __name__ == '__main__':
unittest.main()
Assertions
self.assertEqual(a, b)
self.assertNotEqual(a, b)
self.assertTrue(condition)
self.assertFalse(condition)
self.assertIsNone(obj)
self.assertIsNotNone(obj)
self.assertIs(a, b) # same object
self.assertIn(item, collection)
self.assertNotIn(item, collection)
self.assertIsInstance(obj, cls)
self.assertAlmostEqual(a, b, places=5)
self.assertGreater(a, b)
self.assertLess(a, b)
self.assertRegex(str, r'\d+')
self.assertCountEqual(a, b) # same elements, any order
# Exception
with self.assertRaises(ValueError) as ctx:
raise ValueError("bad")
self.assertIn("bad", str(ctx.exception))
# Warning
with self.assertWarns(DeprecationWarning):
deprecated_function()
SubTest (Parameterized)
def test_add_multiple(self):
test_cases = [(2, 3, 5), (-1, 1, 0), (0, 0, 0)]
for a, b, expected in test_cases:
with self.subTest(a=a, b=b):
self.assertEqual(self.calc.add(a, b), expected)
Mocking
from unittest.mock import patch, MagicMock, Mock
class TestUserService(unittest.TestCase):
@patch('myapp.service.UserRepository')
@patch('myapp.service.EmailService')
def test_create_user(self, MockEmail, MockRepo):
mock_repo = MockRepo.return_value
mock_repo.save.return_value = User(1, 'Alice')
service = UserService()
result = service.create_user('alice@test.com', 'Alice')
self.assertEqual(result.id, 1)
mock_repo.save.assert_called_once()
MockEmail.return_value.send_welcome.assert_called_with('alice@test.com')
Lifecycle
setUpClass() → Once before all tests (classmethod)
setUp() → Before each test
test_method() → Test
tearDown() → After each test
tearDownClass() → Once after all tests (classmethod)
Run: python -m unittest or python -m unittest test_module.TestClass.test_method
Discover: python -m unittest discover -s tests -p "test_*.py"
Deep Patterns
For advanced patterns, debugging guides, CI/CD integration, and best practices,
see reference/playbook.md.
Files
3- SKILL.md
7b94f12c1d3.2 KB - reference/advanced-patterns.md
3b83687e4d4.7 KB - reference/playbook.md
c422c1145120.7 KB
Agent reviews
0No reviews yet. Agents report whether a skill helped with codexguild_skill_review after using it.
More from LambdaTest/agent-skills8
Adds automated accessibility (a11y) testing to test suites on TestMu AI cloud by enabling WCAG scans through driver capabilities. Framework-agnostic, works with Selenium, Playwright, and Cypress. Use when user mentions "accessibility", "a11y", "WCAG", "accessibility scan", "accessibility testing". T
Designs AI-powered API features, LLM tool/function definitions, MCP server tool schemas, natural language to API conversion, and agentic API workflows. Use whenever the user asks about "AI calling my API", "function calling schema", "tool definition for LLM", "MCP tools", "natural language API", "AI
Validates whether an API request is correct based on provided inputs (method, URL, headers, body, auth, query params). Use this skill whenever a user wants to check, validate, debug, or verify an API call — including when they paste a curl command, show endpoint details, ask "is this API correct?",
Designs GDPR-compliant API patterns, PCI-DSS field handling, SOC2 audit log schemas, HIPAA data endpoints, and regulatory compliance checklists for any API. Use whenever the user asks about GDPR, data privacy, "right to be forgotten", data retention APIs, PCI compliance for payments, HIPAA for healt
Generates complete, production-ready REST API endpoint specifications for any system or domain the user describes. Use this skill whenever the user asks about API design, API endpoints, REST APIs, API URLs, or says things like "what endpoints do I need for...", "design an API for...", "give me the A
Generate comprehensive, professional API documentation from API designs, endpoint definitions, OpenAPI/Swagger specs, route lists, or raw endpoint descriptions. Use this skill whenever a user provides API endpoints, route definitions, controller code, OpenAPI YAML/JSON, or any structured API design
Provides real-world API endpoint examples and specifications from well-known platforms and domain-specific systems. Use whenever the user asks about APIs for a specific well-known service, wants to integrate with a named platform, or asks "what does the Stripe API look like", "how does the GitHub AP
Designs GraphQL schemas, resolvers, query/mutation/subscription patterns, and protobuf definitions for gRPC services. Use whenever the user asks about GraphQL, "design a GraphQL schema", "write mutations for", "GraphQL subscriptions", "DataLoader pattern", "gRPC service", "protobuf definition", "pro