// Path: yfiton-api/src/main/java/com/yfiton/api/exceptions/ConversionException.java
// public class ConversionException extends ParameterException {
// 
//     private final String resolution;
// 
//     public ConversionException(String parameterName, String parameterValue, Class<?> expectedValueType) {
//         this("Invalid value for parameter '" + parameterName + "'",
//                 expectedValueType.getSimpleName() + " value expected but received '" + parameterValue + "'");
//     }
// 
//     private ConversionException(String message, String resolution) {
//         super(message);
//         this.resolution = resolution;
//     }
// 
//     /**
//      * Returns a message that explains how to fix the conversion error that has been encountered.
//      *
//      * @return a message that explains how to fix the conversion error that has been encountered.
//      */
//     public String getResolution() {
//         return resolution;
//     }
// 
// }


import com.yfiton.api.exceptions.ConversionException;
import org.junit.Test;
import java.util.List;
import static com.google.common.truth.Truth.assertThat;

    @Test
    public void testConvertCommaInput() throws ConversionException {
        List<String> result = testConvert("param", ",");
        assertThat(result).hasSize(2);
        assertThat(result).containsExactly("", "");
    }

    @Test
    public void testConvertMultipleCharactersInput() throws ConversionException {
        List<String> result = testConvert("param", "a#2,@*112,hello,bye!++");
        assertThat(result).hasSize(4);
        assertThat(result).containsExactly("a#2", "@*112", "hello", "bye!++");
    }

    @Test
    public void testConvertCommaCommaInput() throws ConversionException {
        List<String> result = testConvert("param", ",,");
        assertThat(result).hasSize(3);
        assertThat(result).containsExactly("", "", "");
    }

    @Test
    public void testConvertInputEndingWithComma() throws ConversionException {
        List<String> result = testConvert("param", "1,2,3,");
        assertThat(result).hasSize(4);
        assertThat(result).containsExactly("1", "2", "3", "");
    }

    @Test
// Path: yfiton-api/src/main/java/com/yfiton/api/exceptions/ConversionException.java
// public class ConversionException extends ParameterException {
// 
//     private final String resolution;
// 
//     public ConversionException(String parameterName, String parameterValue, Class<?> expectedValueType) {
//         this("Invalid value for parameter '" + parameterName + "'",
//                 expectedValueType.getSimpleName() + " value expected but received '" + parameterValue + "'");
//     }
// 
//     private ConversionException(String message, String resolution) {
//         super(message);
//         this.resolution = resolution;
//     }
// 
//     /**
//      * Returns a message that explains how to fix the conversion error that has been encountered.
//      *
//      * @return a message that explains how to fix the conversion error that has been encountered.
//      */
//     public String getResolution() {
//         return resolution;
//     }
// 
// }


// Path: yfiton-api/src/test/java/com/yfiton/api/parameter/converters/ListStringConverterTest.java
import com.yfiton.api.exceptions.ConversionException;
import org.junit.Test;
import java.util.List;
import static com.google.common.truth.Truth.assertThat;


    @Test
    public void testConvertCommaInput() throws ConversionException {
        List<String> result = testConvert("param", ",");
        assertThat(result).hasSize(2);
        assertThat(result).containsExactly("", "");
    }

    @Test
    public void testConvertMultipleCharactersInput() throws ConversionException {
        List<String> result = testConvert("param", "a#2,@*112,hello,bye!++");
        assertThat(result).hasSize(4);
        assertThat(result).containsExactly("a#2", "@*112", "hello", "bye!++");
    }

    @Test
    public void testConvertCommaCommaInput() throws ConversionException {
        List<String> result = testConvert("param", ",,");
        assertThat(result).hasSize(3);
        assertThat(result).containsExactly("", "", "");
    }

    @Test
    public void testConvertInputEndingWithComma() throws ConversionException {
        List<String> result = testConvert("param", "1,2,3,");
        assertThat(result).hasSize(4);
        assertThat(result).containsExactly("1", "2", "3", "");
    }

    @Test
    public void testConvertInputStartingWithComma() throws ConversionException {