@@ -0,0 +1,1280 @@
+package arez.integration;%0A%0Aimport arez.Arez;%0Aimport arez.annotations.ArezComponent;%0Aimport arez.annotations.Injectible;%0Aimport arez.annotations.Observable;%0Aimport dagger.Component;%0Aimport javax.inject.Singleton;%0Aimport org.testng.annotations.Test;%0Aimport static org.testng.Assert.*;%0A%0Apublic class DaggerComponentIntegrationTest%0A%7B%0A  @ArezComponent( dagger = Injectible.TRUE )%0A  static class TestComponent%0A  %7B%0A    private String _value = %22%22;%0A%0A    @Observable%0A    String getValue()%0A    %7B%0A      return _value;%0A    %7D%0A%0A    void setValue( final String value )%0A    %7B%0A      _value = value;%0A    %7D%0A  %7D%0A%0A  @Singleton%0A  @Component( modules = DaggerComponentIntegrationTest_TestComponentDaggerModule.class )%0A  interface TestDaggerComponent%0A  %7B%0A    TestComponent component();%0A  %7D%0A%0A  @Test%0A  public void useDaggerComponentToGetAccessToComponent()%0A    throws Throwable%0A  %7B%0A    final TestDaggerComponent daggerComponent = DaggerDaggerComponentIntegrationTest_TestDaggerComponent.create();%0A    final TestComponent component = daggerComponent.component();%0A%0A    Arez.context().action( false, () -%3E assertEquals( component.getValue(), %22%22 ) );%0A    Arez.context().action( true, () -%3E component.setValue( %22X%22 ) );%0A    Arez.context().action( false, () -%3E assertEquals( component.getValue(), %22X%22 ) );%0A  %7D%0A%7D%0A

Add test that bverifies dagger feature for single component