{"enrichment":{"faq":[{"a":"unit-test-boundary-conditions provides systematic testing patterns for Java boundary conditions and corner cases using JUnit 5 and AssertJ. It covers numeric limits, string edge states, collection boundaries, floating-point precision, date/time edges, and array indexing scenarios so your code handles limits, special inputs, and overflow/underflow correctly.","q":"What does unit-test-boundary-conditions help me test in Java?"},{"a":"unit-test-boundary-conditions guides you to test numeric overflow and underflow by validating behavior at Integer.MIN_VALUE, Integer.MAX_VALUE, and Long boundary values. Use parameterized tests with AssertJ assertions to verify that operations either wrap correctly, throw exceptions, or produce expected results at these numeric limits.","q":"How do I test integer overflow and underflow in Java?"},{"a":"unit-test-boundary-conditions emphasizes parameterized tests in JUnit 5 to systematically cover edge cases. Combine @ParameterizedTest with value sources for boundary values, use @ValueSource or @CsvSource to test multiple scenarios (null, empty, whitespace, min/max), and apply tolerance-based AssertJ assertions for floating-point precision validation.","q":"What patterns does unit-test-boundary-conditions recommend for junit 5 edge case testing?"},{"a":"unit-test-boundary-conditions recommends testing null references, empty strings, empty collections, and whitespace-only strings as distinct edge cases. Use parameterized tests to pass these inputs systematically, then assert expected behavior\u2014whether your code rejects them, treats them as valid, or handles them gracefully with clear error messages.","q":"How should I validate null, empty, and whitespace input handling?"},{"a":"unit-test-boundary-conditions covers off-by-one errors, index out of bounds scenarios, and collection size boundaries. Test accessing index 0, the last valid index (size - 1), and invalid indices like -1 or size. Use parameterized tests to validate that your code either throws IndexOutOfBoundsException or handles these cases as intended.","q":"What array index and collection boundary tests does the skill cover?"},{"a":"unit-test-boundary-conditions guides testing NaN, positive/negative infinity, and precision issues using AssertJ's floating-point assertions with configurable tolerance. For date/time, test leap years, daylight saving transitions, and boundary dates. Parameterized tests with @CsvSource let you validate multiple special values in a single test method.","q":"How does unit-test-boundary-conditions address floating-point and special value edge cases?"}],"shadow_tags":["numeric-limits","error-detection","test-patterns","data-validation","junit-framework","precision-handling","collection-states","temporal-boundaries","overflow-detection"],"summary_rewrite":"This skill provides systematic testing patterns for Java boundary conditions and corner cases using JUnit 5 and AssertJ. It covers numeric limits, string edge states, collection boundaries, floating-point precision, date/time edges, and array indexing scenarios. Use parameterized tests and tolerance-based assertions to validate that your code handles limits, special inputs, and overflow/underflow correctly."},"files":[{"bytes":9005,"path":"plugins/developer-kit-java/skills/unit-test-boundary-conditions/SKILL.md","sha256":"ac324f6bc2d860135c0175c71c114b1c6c5b730e73054394580dfd5233e1714b","url":"https://skillfed.io/files/giuseppe-trisciuoglio/developer-kit/unit-test-boundary-conditions/939425c2/SKILL.md"}],"id":"giuseppe-trisciuoglio/developer-kit/unit-test-boundary-conditions","links":{"html":"https://skillfed.io/giuseppe-trisciuoglio/developer-kit/unit-test-boundary-conditions","md":"https://skillfed.io/giuseppe-trisciuoglio/developer-kit/unit-test-boundary-conditions.md","repo":"https://github.com/giuseppe-trisciuoglio/developer-kit"},"meta":{"agents_supported":[],"first_seen":"2026-07-28","forks":37,"language":"Python","last_updated":"2026-06-22","license":"MIT","name":"unit-test-boundary-conditions","publisher":"giuseppe-trisciuoglio","stars":311},"relations":{"similar":[{"id":"giuseppe-trisciuoglio/developer-kit/unit-test-parameterized"},{"id":"decebals/claude-code-java/test-quality"},{"id":"xu-xiang/everything-claude-code-zh/springboot-verification"},{"id":"softspark/ai-toolkit/java-patterns"},{"id":"personamanagmentlayer/pcl/java-expert"},{"id":"affaan-m/ECC/springboot-verification"},{"id":"giuseppe-trisciuoglio/developer-kit/unit-test-utility-methods"},{"id":"giuseppe-trisciuoglio/developer-kit/unit-test-json-serialization"},{"id":"affaan-m/ECC/quarkus-tdd"},{"id":"giuseppe-trisciuoglio/developer-kit/unit-test-config-properties"}]},"slug":{"owner":"giuseppe-trisciuoglio","repo":"developer-kit","skill":"unit-test-boundary-conditions"},"version":"939425c2"}
