// Path: src/main/java/com/tngtech/configbuilder/exception/ConfigBuilderException.java
// public class ConfigBuilderException extends RuntimeException {
// 
//     public ConfigBuilderException(String message, Throwable e) {
//         super(message, e);
//     }
// }
// 
// Path: src/main/java/com/tngtech/configbuilder/exception/NoConstructorFoundException.java
// public class NoConstructorFoundException extends RuntimeException {
//     public NoConstructorFoundException(String message) {
//         super(message);
//     }
// }
// 
// Path: src/main/java/com/tngtech/configbuilder/exception/PrimitiveParsingException.java
// public class PrimitiveParsingException extends RuntimeException {
//     public PrimitiveParsingException(String errorMessage) {
//         super(errorMessage);
//     }
// }
// 
// Path: src/test/java/com/tngtech/configbuilder/testclasses/TestConfigThrowsIllegalArgumentException.java
// public class TestConfigThrowsIllegalArgumentException {
// 
//     @DefaultValue("stringValue")
//     private Field integer;
// }
// 
// Path: src/test/java/com/tngtech/configbuilder/testclasses/TestConfigThrowsPrimitiveParsingException.java
// public class TestConfigThrowsPrimitiveParsingException {
// 
//     @DefaultValue("stringValue")
//     private int integer;
// }
// 
// Path: src/test/java/com/tngtech/configbuilder/testclasses/TestConfigThrowsInvocationTargetExceptionException.java
// @PropertyExtension("testproperties")
// @PropertySuffixes(extraSuffixes = {"test"})
// @PropertyLocations(resourcesForClasses = {PropertyLoader.class})
// @PropertiesFiles("demoapp-configuration")
// @LoadingOrder(value = {CommandLineValue.class, PropertyValue.class, DefaultValue.class})
// public class TestConfigThrowsInvocationTargetExceptionException {
// 
//     private int number;
// 
//     private TestConfigThrowsInvocationTargetExceptionException() {
//         throw new RuntimeException();
//     }
// }
// 
// Path: src/test/java/com/tngtech/configbuilder/testclasses/TestConfigWithoutDefaultConstructor.java
// @PropertyExtension("testproperties")
// @PropertySuffixes(extraSuffixes = {"test"})
// @PropertyLocations(resourcesForClasses = {PropertyLoader.class})
// @PropertiesFiles("demoapp-configuration")
// @LoadingOrder(value = {CommandLineValue.class, PropertyValue.class, DefaultValue.class})
// public class TestConfigWithoutDefaultConstructor {
// 
//     private int number;
// 
//     public TestConfigWithoutDefaultConstructor(Integer i) {
//         this.number = i;
//     }
// 
// 
//     public int getNumber() {
//         return number;
//     }
// }


import com.tngtech.configbuilder.exception.ConfigBuilderException;
import com.tngtech.configbuilder.exception.NoConstructorFoundException;
import com.tngtech.configbuilder.exception.PrimitiveParsingException;
import com.tngtech.configbuilder.testclasses.TestConfigThrowsIllegalArgumentException;
import com.tngtech.configbuilder.testclasses.TestConfigThrowsPrimitiveParsingException;
import com.tngtech.configbuilder.testclasses.TestConfigThrowsInvocationTargetExceptionException;
import com.tngtech.configbuilder.testclasses.TestConfigWithoutDefaultConstructor;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import java.util.Arrays;
import java.util.Collection;
package com.tngtech.configbuilder;



@RunWith(Parameterized.class)
public class ConfigBuilderExceptionTest {

    private Class configClass;
    private Class<? extends Throwable> exceptionClass;
    private String message;

    @Rule
    public ExpectedException expectedException = ExpectedException.none();

// Path: src/main/java/com/tngtech/configbuilder/exception/ConfigBuilderException.java
// public class ConfigBuilderException extends RuntimeException {
// 
//     public ConfigBuilderException(String message, Throwable e) {
//         super(message, e);
//     }
// }
// 
// Path: src/main/java/com/tngtech/configbuilder/exception/NoConstructorFoundException.java
// public class NoConstructorFoundException extends RuntimeException {
//     public NoConstructorFoundException(String message) {
//         super(message);
//     }
// }
// 
// Path: src/main/java/com/tngtech/configbuilder/exception/PrimitiveParsingException.java
// public class PrimitiveParsingException extends RuntimeException {
//     public PrimitiveParsingException(String errorMessage) {
//         super(errorMessage);
//     }
// }
// 
// Path: src/test/java/com/tngtech/configbuilder/testclasses/TestConfigThrowsIllegalArgumentException.java
// public class TestConfigThrowsIllegalArgumentException {
// 
//     @DefaultValue("stringValue")
//     private Field integer;
// }
// 
// Path: src/test/java/com/tngtech/configbuilder/testclasses/TestConfigThrowsPrimitiveParsingException.java
// public class TestConfigThrowsPrimitiveParsingException {
// 
//     @DefaultValue("stringValue")
//     private int integer;
// }
// 
// Path: src/test/java/com/tngtech/configbuilder/testclasses/TestConfigThrowsInvocationTargetExceptionException.java
// @PropertyExtension("testproperties")
// @PropertySuffixes(extraSuffixes = {"test"})
// @PropertyLocations(resourcesForClasses = {PropertyLoader.class})
// @PropertiesFiles("demoapp-configuration")
// @LoadingOrder(value = {CommandLineValue.class, PropertyValue.class, DefaultValue.class})
// public class TestConfigThrowsInvocationTargetExceptionException {
// 
//     private int number;
// 
//     private TestConfigThrowsInvocationTargetExceptionException() {
//         throw new RuntimeException();
//     }
// }
// 
// Path: src/test/java/com/tngtech/configbuilder/testclasses/TestConfigWithoutDefaultConstructor.java
// @PropertyExtension("testproperties")
// @PropertySuffixes(extraSuffixes = {"test"})
// @PropertyLocations(resourcesForClasses = {PropertyLoader.class})
// @PropertiesFiles("demoapp-configuration")
// @LoadingOrder(value = {CommandLineValue.class, PropertyValue.class, DefaultValue.class})
// public class TestConfigWithoutDefaultConstructor {
// 
//     private int number;
// 
//     public TestConfigWithoutDefaultConstructor(Integer i) {
//         this.number = i;
//     }
// 
// 
//     public int getNumber() {
//         return number;
//     }
// }


// Path: src/test/java/com/tngtech/configbuilder/ConfigBuilderExceptionTest.java
import com.tngtech.configbuilder.exception.ConfigBuilderException;
import com.tngtech.configbuilder.exception.NoConstructorFoundException;
import com.tngtech.configbuilder.exception.PrimitiveParsingException;
import com.tngtech.configbuilder.testclasses.TestConfigThrowsIllegalArgumentException;
import com.tngtech.configbuilder.testclasses.TestConfigThrowsPrimitiveParsingException;
import com.tngtech.configbuilder.testclasses.TestConfigThrowsInvocationTargetExceptionException;
import com.tngtech.configbuilder.testclasses.TestConfigWithoutDefaultConstructor;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import java.util.Arrays;
import java.util.Collection;

package com.tngtech.configbuilder;



@RunWith(Parameterized.class)
public class ConfigBuilderExceptionTest {

    private Class configClass;
    private Class<? extends Throwable> exceptionClass;
    private String message;

    @Rule
    public ExpectedException expectedException = ExpectedException.none();

    @Before