CtrlK
BlogDocsLog inGet started
Tessl Logo

giuseppe-trisciuoglio/developer-kit

Comprehensive developer toolkit providing reusable skills for Java/Spring Boot, TypeScript/NestJS/React/Next.js, Python, PHP, AWS CloudFormation, AI/RAG, DevOps, and more.

89

Quality

89%

Does it follow best practices?

Impact

Pending

No eval scenarios have been run

SecuritybySnyk

Risky

Do not use without reviewing

Overview
Quality
Evals
Security
Files

parameterized-tests.mdplugins/developer-kit-java/skills/unit-test-utility-methods/references/

Parameterized Tests for Utility Methods

Use @ParameterizedTest for testing multiple similar inputs efficiently.

ValueSource - Single Parameter

@ParameterizedTest
@ValueSource(strings = {"", " ", "null", "  \t  "})
void shouldConsiderFalsyValuesAsEmpty(String input) {
    assertThat(StringUtils.isEmpty(input)).isTrue();
}

CsvSource - Multiple Parameters

@ParameterizedTest
@CsvSource({
    "hello, HELLO",
    "world, WORLD",
    "test, TEST",
    "123abc, 123ABC"
})
void shouldConvertToUpperCase(String input, String expected) {
    assertThat(StringUtils.toUpperCase(input)).isEqualTo(expected);
}

CsvSource - Email Validation

@ParameterizedTest
@CsvSource({
    "user@example.com, true",
    "test@domain.org, true",
    "invalid-email, false",
    '", false',
    "no-at-sign.com, false"
})
void shouldValidateEmailsCorrectly(String email, boolean expected) {
    assertThat(ValidatorUtils.isValidEmail(email)).isEqualTo(expected);
}

MethodSource - Complex Objects

static Stream<Arguments> stringTransformationCases() {
    return Stream.of(
        Arguments.of("hello", "hello-world", "hello-world"),
        Arguments.of("Hello World", "hello_world", "hello_world"),
        Arguments.of("Test@123", "test123", "test123")
    );
}

@ParameterizedTest
@MethodSource("stringTransformationCases")
void shouldTransformStringsCorrectly(String input, String separator, String expected) {
    assertThat(StringUtils.toSlug(input, separator)).isEqualTo(expected);
}

Null and Empty Sources

@ParameterizedTest
@NullSource
@EmptySource
void shouldHandleNullAndEmpty(String input) {
    assertThat(StringUtils.isBlank(input)).isTrue();
}

@ParameterizedTest
@NullAndEmptySource
void shouldHandleNullEmptyAndBlank(String input) {
    assertThat(StringUtils.isBlank(input)).isTrue();
}

plugins

developer-kit-java

skills

unit-test-utility-methods

README.md

CHANGELOG.md

context7.json

CONTRIBUTING.md

README_CN.md

README_ES.md

README_IT.md

README.md

tessl.json

tile.json