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.

90

Quality

90%

Does it follow best practices?

Impact

Pending

No eval scenarios have been run

SecuritybySnyk

Risky

Do not use without reviewing

This version of the tile failed moderation
Moderation pipeline encountered an internal error
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