.claude/skills/test/SKILL.md
Write, update, or fix tests. Use when asked to test code, create test cases, or debug failing tests.
npx skillsauth add adobe/s3mock testInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Read docs/TESTING.md, docs/KOTLIN.md, and AGENTS.md (root + relevant module) before writing tests — they define test types, base classes, naming conventions, and running commands.
fun `should create bucket successfully`()assertThat(...)) — specific assertions, not just isNotNull()assertThatThrownBy { ... }.isInstanceOf(AwsServiceException::class.java)internal classiut (implementation under test), injected with @AutowiredAlways extend the correct base class — never write tests without one:
| Base Class | Test Type | Module |
|---|---|---|
| ServiceTestBase | Service-layer unit tests | server/ |
| StoreTestBase | Store-layer unit tests | server/ |
| BaseControllerTest | Controller slice tests (@WebMvcTest) | server/ |
| S3TestBase | Integration tests against live Docker container | integration-tests/ |
Integration tests: accept testInfo: TestInfo as a method parameter and use givenBucket(testInfo) for unique bucket names.
docs/TESTING.md and root + module AGENTS.mdrefactor skill to fix them rather than working around them2017-<current year> in the header of every file you modifylint skill to fix formatting and verify style gates passdevelopment
Review code changes in PRs or local diffs. Use when asked to review a PR, inspect changes, or provide feedback on code quality.
development
Fix code style issues and ensure linting passes. Use when asked to fix lint errors, formatting issues, or when ktlint or Checkstyle violations are reported.
development
Generate or update project documentation. Use when asked to document code, create docs, explain features, or fix formatting, wording, or style in existing documentation files.
development
Improve code readability, enforce idiomatic conventions, and enhance documentation quality. Use when asked to clean up code, improve naming, add meaningful comments, or align with Kotlin/project idioms.