// Path: compress/src/main/java/com/switchfly/compress/AssetPackageMode.java
// public enum AssetPackageMode {
//     DEVELOPMENT,
//     DEBUG,
//     PRODUCTION
// }
// 
// Path: inputvalidation/src/main/java/com/switchfly/inputvalidation/exception/InvalidRequestParameterException.java
// public class InvalidRequestParameterException extends MissingRequestParameterException {
// 
//     private static final long serialVersionUID = 1L;
//     private final String _parameterValue;
// 
//     public InvalidRequestParameterException(String parameterName, String parameterValue) {
//         super(parameterName, "Invalid request parameter: " + parameterName + " = " + parameterValue);
//         _parameterValue = parameterValue;
//     }
// 
//     public InvalidRequestParameterException(String parameterName, String parameterValue, Throwable cause) {
//         super(parameterName, "Invalid request parameter: " + parameterName + " = " + parameterValue, cause);
//         _parameterValue = parameterValue;
//     }
// 
//     public String getParameterValue() {
//         return _parameterValue;
//     }
// }
// 
// Path: inputvalidation/src/main/java/com/switchfly/inputvalidation/exception/MissingRequestParameterException.java
// public class MissingRequestParameterException extends RuntimeException {
// 
//     private static final long serialVersionUID = 1L;
//     private final String _parameterName;
// 
//     public MissingRequestParameterException(String parameterName) {
//         super("Missing request parameter: " + parameterName + ".");
//         _parameterName = parameterName;
//     }
// 
//     public MissingRequestParameterException(String parameterName, String message) {
//         super(message);
//         _parameterName = parameterName;
//     }
// 
//     public MissingRequestParameterException(String parameterName, String message, Throwable cause) {
//         super(message, cause);
//         _parameterName = parameterName;
//     }
// 
//     public String getParameterName() {
//         return _parameterName;
//     }
// }
// 
// Path: inputvalidation/src/main/java/com/switchfly/inputvalidation/validator/Validator.java
// public abstract class Validator<O> {
// 
//     private String _errorMessage;
// 
//     public abstract boolean execute(O content);
// 
//     public String getErrorMessage() {
//         return _errorMessage;
//     }
// 
//     public void setErrorMessage(String errorMessage) {
//         _errorMessage = errorMessage;
//     }
// }


import com.switchfly.compress.AssetPackageMode;
import com.switchfly.inputvalidation.exception.InvalidRequestParameterException;
import com.switchfly.inputvalidation.exception.MissingRequestParameterException;
import com.switchfly.inputvalidation.validator.Validator;
import org.junit.Test;
import static org.junit.Assert.assertEquals;
            return false;
        }
    }, null);

    @Test
    public void testGetName() throws Exception {
        assertEquals("Abc-12_4", new RequestParameter("Abc-12_4", null).getName());
        assertEquals("Abc-12_4_script", new RequestParameter("?Ab = c-1&2_4_!\"'<script>", null).getName());
        assertEquals(null, new RequestParameter(null, null).getName());
        assertEquals(" ", new RequestParameter(" ", null).getName());
        assertEquals("", new RequestParameter("", null).getName());
    }

    @Test
    public void testToStringWithValidValues() throws Exception {
        assertEquals("foo", new RequestParameter(null, "foo").toString());
    }

    @Test
    public void testToStringWithDefaultValues() throws Exception {
        assertEquals("foo", new RequestParameter(null, "foo").toString("bar"));
        assertEquals("bar", new RequestParameter(null, "").toString("bar"));
        assertEquals("bar", new RequestParameter(null, null).toString("bar"));
        assertEquals("bar", new RequestParameter(null, "foo").validateWith(ALWAYS_INVALID_VALIDATION).toString("bar"));
    }

    @Test
    public void testToStringInvalidValues() throws Exception {
        try {
            new RequestParameter("foo", "").toString();
// Path: compress/src/main/java/com/switchfly/compress/AssetPackageMode.java
// public enum AssetPackageMode {
//     DEVELOPMENT,
//     DEBUG,
//     PRODUCTION
// }
// 
// Path: inputvalidation/src/main/java/com/switchfly/inputvalidation/exception/InvalidRequestParameterException.java
// public class InvalidRequestParameterException extends MissingRequestParameterException {
// 
//     private static final long serialVersionUID = 1L;
//     private final String _parameterValue;
// 
//     public InvalidRequestParameterException(String parameterName, String parameterValue) {
//         super(parameterName, "Invalid request parameter: " + parameterName + " = " + parameterValue);
//         _parameterValue = parameterValue;
//     }
// 
//     public InvalidRequestParameterException(String parameterName, String parameterValue, Throwable cause) {
//         super(parameterName, "Invalid request parameter: " + parameterName + " = " + parameterValue, cause);
//         _parameterValue = parameterValue;
//     }
// 
//     public String getParameterValue() {
//         return _parameterValue;
//     }
// }
// 
// Path: inputvalidation/src/main/java/com/switchfly/inputvalidation/exception/MissingRequestParameterException.java
// public class MissingRequestParameterException extends RuntimeException {
// 
//     private static final long serialVersionUID = 1L;
//     private final String _parameterName;
// 
//     public MissingRequestParameterException(String parameterName) {
//         super("Missing request parameter: " + parameterName + ".");
//         _parameterName = parameterName;
//     }
// 
//     public MissingRequestParameterException(String parameterName, String message) {
//         super(message);
//         _parameterName = parameterName;
//     }
// 
//     public MissingRequestParameterException(String parameterName, String message, Throwable cause) {
//         super(message, cause);
//         _parameterName = parameterName;
//     }
// 
//     public String getParameterName() {
//         return _parameterName;
//     }
// }
// 
// Path: inputvalidation/src/main/java/com/switchfly/inputvalidation/validator/Validator.java
// public abstract class Validator<O> {
// 
//     private String _errorMessage;
// 
//     public abstract boolean execute(O content);
// 
//     public String getErrorMessage() {
//         return _errorMessage;
//     }
// 
//     public void setErrorMessage(String errorMessage) {
//         _errorMessage = errorMessage;
//     }
// }


// Path: inputvalidation/src/test/java/com/switchfly/inputvalidation/RequestParameterTest.java
import com.switchfly.compress.AssetPackageMode;
import com.switchfly.inputvalidation.exception.InvalidRequestParameterException;
import com.switchfly.inputvalidation.exception.MissingRequestParameterException;
import com.switchfly.inputvalidation.validator.Validator;
import org.junit.Test;
import static org.junit.Assert.assertEquals;

            return false;
        }
    }, null);

    @Test
    public void testGetName() throws Exception {
        assertEquals("Abc-12_4", new RequestParameter("Abc-12_4", null).getName());
        assertEquals("Abc-12_4_script", new RequestParameter("?Ab = c-1&2_4_!\"'<script>", null).getName());
        assertEquals(null, new RequestParameter(null, null).getName());
        assertEquals(" ", new RequestParameter(" ", null).getName());
        assertEquals("", new RequestParameter("", null).getName());
    }

    @Test
    public void testToStringWithValidValues() throws Exception {
        assertEquals("foo", new RequestParameter(null, "foo").toString());
    }

    @Test
    public void testToStringWithDefaultValues() throws Exception {
        assertEquals("foo", new RequestParameter(null, "foo").toString("bar"));
        assertEquals("bar", new RequestParameter(null, "").toString("bar"));
        assertEquals("bar", new RequestParameter(null, null).toString("bar"));
        assertEquals("bar", new RequestParameter(null, "foo").validateWith(ALWAYS_INVALID_VALIDATION).toString("bar"));
    }

    @Test
    public void testToStringInvalidValues() throws Exception {
        try {
            new RequestParameter("foo", "").toString();
        } catch (MissingRequestParameterException e) {