// Path: src/main/java/com/exmertec/dummie/Dummie.java
// public static <T> T create(Class<T> type) {
//     return prepare(type).build();
// }
// 
// Path: src/main/java/com/exmertec/dummie/Dummie.java
// public static DummyBuilderFactory withStrategy(GenerationStrategy strategy) {
//     DummyBuilderFactory factory = new DummyBuilderFactory();
//     factory.withStrategy(strategy);
//     return factory;
// }
// 
// Path: src/main/java/com/exmertec/dummie/configuration/GenerationStrategy.java
// public enum GenerationStrategy {
//     DEFAULT, RANDOM
// }


import static com.exmertec.dummie.Dummie.create;
import static com.exmertec.dummie.Dummie.withStrategy;
import static org.hamcrest.CoreMatchers.not;
import static org.hamcrest.CoreMatchers.nullValue;
import static org.hamcrest.MatcherAssert.assertThat;
import com.exmertec.dummie.configuration.GenerationStrategy;
import org.junit.Test;
import java.util.List;
package com.exmertec.dummie;




public class ListCacheTest {

    @Test
    public void should_create_object() {
        NestingData1 nestingData1 = create(NestingData1.class);

        validate(nestingData1);
    }

    @Test(expected = StackOverflowError.class)
    public void should_throw_stack_over_flow_with_random_strategy_and_cycle_dependency() {
// Path: src/main/java/com/exmertec/dummie/Dummie.java
// public static <T> T create(Class<T> type) {
//     return prepare(type).build();
// }
// 
// Path: src/main/java/com/exmertec/dummie/Dummie.java
// public static DummyBuilderFactory withStrategy(GenerationStrategy strategy) {
//     DummyBuilderFactory factory = new DummyBuilderFactory();
//     factory.withStrategy(strategy);
//     return factory;
// }
// 
// Path: src/main/java/com/exmertec/dummie/configuration/GenerationStrategy.java
// public enum GenerationStrategy {
//     DEFAULT, RANDOM
// }


// Path: src/test/java/com/exmertec/dummie/ListCacheTest.java
import static com.exmertec.dummie.Dummie.create;
import static com.exmertec.dummie.Dummie.withStrategy;
import static org.hamcrest.CoreMatchers.not;
import static org.hamcrest.CoreMatchers.nullValue;
import static org.hamcrest.MatcherAssert.assertThat;
import com.exmertec.dummie.configuration.GenerationStrategy;
import org.junit.Test;
import java.util.List;

package com.exmertec.dummie;




public class ListCacheTest {

    @Test
    public void should_create_object() {
        NestingData1 nestingData1 = create(NestingData1.class);

        validate(nestingData1);
    }

    @Test(expected = StackOverflowError.class)
    public void should_throw_stack_over_flow_with_random_strategy_and_cycle_dependency() {
        withStrategy(GenerationStrategy.RANDOM).create(NestingData1.class);