What problem does it solve? Writing Go unit tests often leads to inconsistent structure, missing error-code assertions, and unsafe parallelization across a codebase. This Skill enforces a single table-driven test pattern for handlers, services, and repositories so every test follows the same struct shape, naming, mock setup, and assertion style. ## Core Features & Use Cases - Table-Driven Test Structure: Defines the standard test struct with name, inputs, setupMock, wantErr, and wantCode fields, plus the t.Run subtest loop pattern. - gomock Per-Test Setup: Creates a fresh gomock.Controller per subtest and wires mock expectations through a setupMock closure to avoid data races. - Assertion and Naming Conventions: Covers require vs assert usage, ErrorAs/ErrorIs error-code checks, t.Cleanup teardown, safe t.Parallel usage, and the Test<Function><Scenario><Expected> naming format. - Use Case: When adding a CreateUser service method, generate five table-driven cases (happy path, validation error, duplicate email conflict, repository failure) with per-case gomock expectations and AppError code assertions. ## Quick Start Ask the AI to write table-driven unit tests with gomock mocks and testify assertions for a specific Go service or handler function.