// Path: src/main/java/j8spec/J8Spec.java
// public static <T> Var<T> var() {
//     return new Var<>();
// }


import org.junit.Test;
import static j8spec.UnsafeBlock.NOOP;
import static j8spec.J8Spec.var;
    }

    @Test(expected = Exceptions.BlockAlreadyDefined.class)
    public void indicates_if_a_example_group_has_been_defined_with_the_same_description() {
        validator
            .startGroup(groupConfig().description("spec").build())
                .startGroup(groupConfig().description("group 1").build())
                    .example(exampleConfig().description("example 1").build(), NOOP)
                .endGroup()
                .startGroup(groupConfig().description("group 1").build())
                    .example(exampleConfig().description("example 1").build(), NOOP)
                .endGroup()
            .endGroup();
    }

    @Test()
    public void accepts_examples_with_same_description_in_different_groups() {
        validator
            .startGroup(groupConfig().description("spec").build())
                .startGroup(groupConfig().description("group 1").build())
                    .example(exampleConfig().description("example 1").build(), NOOP)
                .endGroup()
                .startGroup(groupConfig().description("group 2").build())
                    .example(exampleConfig().description("example 1").build(), NOOP)
                .endGroup()
            .endGroup();
    }

    @Test(expected = Exceptions.VariableInitializerAlreadyDefined.class)
    public void indicates_if_an_initializer_has_been_defined_for_the_same_variable() {
// Path: src/main/java/j8spec/J8Spec.java
// public static <T> Var<T> var() {
//     return new Var<>();
// }


// Path: src/test/java/j8spec/DuplicatedBlockValidatorTest.java
import org.junit.Test;
import static j8spec.UnsafeBlock.NOOP;
import static j8spec.J8Spec.var;

    }

    @Test(expected = Exceptions.BlockAlreadyDefined.class)
    public void indicates_if_a_example_group_has_been_defined_with_the_same_description() {
        validator
            .startGroup(groupConfig().description("spec").build())
                .startGroup(groupConfig().description("group 1").build())
                    .example(exampleConfig().description("example 1").build(), NOOP)
                .endGroup()
                .startGroup(groupConfig().description("group 1").build())
                    .example(exampleConfig().description("example 1").build(), NOOP)
                .endGroup()
            .endGroup();
    }

    @Test()
    public void accepts_examples_with_same_description_in_different_groups() {
        validator
            .startGroup(groupConfig().description("spec").build())
                .startGroup(groupConfig().description("group 1").build())
                    .example(exampleConfig().description("example 1").build(), NOOP)
                .endGroup()
                .startGroup(groupConfig().description("group 2").build())
                    .example(exampleConfig().description("example 1").build(), NOOP)
                .endGroup()
            .endGroup();
    }

    @Test(expected = Exceptions.VariableInitializerAlreadyDefined.class)
    public void indicates_if_an_initializer_has_been_defined_for_the_same_variable() {
        Var<String> v1 = var();