@@ -0,0 +1,1947 @@
+package org.grouplens.grapht;%0A%0Aimport org.grouplens.grapht.annotation.DefaultNull;%0Aimport org.junit.Test;%0A%0Aimport javax.annotation.Nullable;%0Aimport javax.inject.Inject;%0Aimport javax.inject.Qualifier;%0Aimport java.lang.annotation.*;%0A%0Aimport static org.hamcrest.Matchers.*;%0Aimport static org.junit.Assert.assertThat;%0A%0A/**%0A * Tests for %3Ca href=%22https://github.com/grouplens/grapht/issues/73%22%3E#73%3C/a%3E.%0A *%0A * @author %3Ca href=%22http://www.grouplens.org%22%3EGroupLens Research%3C/a%3E%0A */%0Apublic class QualifiedDefaultNullTest %7B%0A    @Test%0A    public void testQualifiedDefaultNull() %7B%0A        InjectorBuilder bld = new InjectorBuilder();%0A        Injector inj = bld.build();%0A%0A        // With no bindings, we should get a null inner class.%0A        MainC main = inj.getInstance(MainC.class);%0A        assertThat(main, notNullValue());%0A        assertThat(main.dependency, nullValue());%0A    %7D%0A%0A    @Test%0A    public void testQualifiedDefaultNullWithBinding() %7B%0A        InjectorBuilder bld = new InjectorBuilder();%0A        bld.bind(TestQ.class, DepC.class)%0A           .to(DepC.class);%0A        Injector inj = bld.build();%0A%0A        // With a bindings, we should get an instance%0A        MainC main = inj.getInstance(MainC.class);%0A        assertThat(main, notNullValue());%0A        assertThat(main.dependency,%0A                   allOf(notNullValue(),%0A                         instanceOf(DepC.class)));%0A    %7D%0A%0A    /**%0A     * Qualifier with default of %7B@code null%7D.%0A     */%0A    @Qualifier%0A    @Retention(RetentionPolicy.RUNTIME)%0A    @Target(ElementType.PARAMETER)%0A    @DefaultNull%0A    @Documented%0A    public static @interface TestQ %7B%7D%0A%0A    /**%0A     * Component with qualified dependency on concrete class.%0A     */%0A    public static class MainC %7B%0A        private final DepC dependency;%0A%0A        @Inject%0A        public MainC(@Nullable @TestQ DepC dep) %7B%0A            dependency = dep;%0A        %7D%0A    %7D%0A%0A    public static class DepC %7B%0A        @Inject%0A        public DepC() %7B%7D%0A    %7D%0A%7D%0A

Add test for overriding qualifier null default (#73)