Search in sources :

Example 1 with DefaultCacheBuilder

use of info.evelio.carbonite.CarboniteBuilderBaseImp.DefaultCacheBuilder in project carbonite by eveliotc.

the class DefaultCacheBuilderTest method mockBuilder.

private CarboniteBuilder mockBuilder() {
    CarboniteBuilder mock = mock(CarboniteBuilder.class);
    when(mock.context()).thenReturn(mContext);
    when(mock.retaining(CLASS_TO_RETAIN)).thenReturn(new DefaultCacheBuilder(mock, CLASS_TO_RETAIN));
    return mock;
}
Also used : DefaultCacheBuilder(info.evelio.carbonite.CarboniteBuilderBaseImp.DefaultCacheBuilder) CarboniteBuilder(info.evelio.carbonite.CarboniteApi.CarboniteBuilder)

Example 2 with DefaultCacheBuilder

use of info.evelio.carbonite.CarboniteBuilderBaseImp.DefaultCacheBuilder in project carbonite by eveliotc.

the class DefaultCacheBuilderTest method wrapingMethodsWillWrap.

@Test
public void wrapingMethodsWillWrap() {
    final ConfirmCallCarboniteBuilder builder = new ConfirmCallCarboniteBuilder();
    final CacheBuilder opts = new DefaultCacheBuilder(builder, CLASS_TO_RETAIN);
    assertThat(opts.builder()).isEqualTo(builder);
    builder.reset();
    opts.context();
    builder.assertItWasCalled();
    builder.reset();
    opts.retaining(CLASS_TO_RETAIN);
    builder.assertItWasCalled();
    builder.reset();
    opts.iLoveYou();
    builder.assertItWasCalled();
    builder.reset();
    opts.iKnow();
    builder.assertItWasCalled();
    builder.reset();
    opts.build();
    builder.assertItWasCalled();
}
Also used : DefaultCacheBuilder(info.evelio.carbonite.CarboniteBuilderBaseImp.DefaultCacheBuilder) CacheBuilder(info.evelio.carbonite.CarboniteApi.CacheBuilder) DefaultCacheBuilder(info.evelio.carbonite.CarboniteBuilderBaseImp.DefaultCacheBuilder) Test(org.junit.Test)

Example 3 with DefaultCacheBuilder

use of info.evelio.carbonite.CarboniteBuilderBaseImp.DefaultCacheBuilder in project carbonite by eveliotc.

the class DefaultCacheBuilderTest method testBaseChaining.

@Test
public void testBaseChaining() {
    final CacheFactory factory = mockFactory();
    final CarboniteBuilder builder = mockBuilder();
    final Options opts = new Options(1, 1);
    final CacheBuilder cacheBuilder = new DefaultCacheBuilder(builder, CLASS_TO_RETAIN).in(MEMORY).use(opts).use(factory);
    assertThat(cacheBuilder.builder()).isEqualTo(builder);
    assertThat(cacheBuilder.cacheType()).isEqualTo(MEMORY);
    assertThat(cacheBuilder.opts()).isEqualTo(opts);
    // Couldn't find something to compare as most of classes will fail to compile
    assertThat(cacheBuilder.opts().imp() == ReferenceCache.class).isTrue();
    assertThat(cacheBuilder.factory()).isEqualTo(factory);
}
Also used : Options(info.evelio.carbonite.cache.ReferenceCache.Options) DefaultCacheBuilder(info.evelio.carbonite.CarboniteBuilderBaseImp.DefaultCacheBuilder) CarboniteBuilder(info.evelio.carbonite.CarboniteApi.CarboniteBuilder) CacheBuilder(info.evelio.carbonite.CarboniteApi.CacheBuilder) DefaultCacheBuilder(info.evelio.carbonite.CarboniteBuilderBaseImp.DefaultCacheBuilder) CacheFactory(info.evelio.carbonite.cache.CacheFactory) Test(org.junit.Test)

Example 4 with DefaultCacheBuilder

use of info.evelio.carbonite.CarboniteBuilderBaseImp.DefaultCacheBuilder in project carbonite by eveliotc.

the class DefaultCacheBuilderTest method andSpawnsNewOptionsAndSameRetaining.

@Test
public void andSpawnsNewOptionsAndSameRetaining() {
    final CacheBuilder opts = new DefaultCacheBuilder(mockBuilder(), CLASS_TO_RETAIN);
    for (CacheType type : CacheType.values()) {
        final CacheBuilder anotherOptions = opts.and(type);
        assertThat(opts).isNotEqualTo(anotherOptions);
        assertThat(opts.type() == anotherOptions.type()).isTrue();
    }
}
Also used : DefaultCacheBuilder(info.evelio.carbonite.CarboniteBuilderBaseImp.DefaultCacheBuilder) CacheBuilder(info.evelio.carbonite.CarboniteApi.CacheBuilder) DefaultCacheBuilder(info.evelio.carbonite.CarboniteBuilderBaseImp.DefaultCacheBuilder) CacheType(info.evelio.carbonite.cache.CacheType) Test(org.junit.Test)

Example 5 with DefaultCacheBuilder

use of info.evelio.carbonite.CarboniteBuilderBaseImp.DefaultCacheBuilder in project carbonite by eveliotc.

the class DefaultCacheBuilderTest method testDefaultValues.

@Test
public void testDefaultValues() {
    DefaultCacheBuilder opts = new DefaultCacheBuilder(mockBuilder(), CLASS_TO_RETAIN);
    assertThat(opts.factory()).isNotNull();
    assertThat(opts.cacheType()).isInstanceOf(CacheType.class);
    assertThat(opts.builder()).isNotNull();
    assertThat(opts.type()).isEqualTo(CLASS_TO_RETAIN);
    assertThat(opts.context()).isNotNull();
}
Also used : DefaultCacheBuilder(info.evelio.carbonite.CarboniteBuilderBaseImp.DefaultCacheBuilder) Test(org.junit.Test)

Aggregations

DefaultCacheBuilder (info.evelio.carbonite.CarboniteBuilderBaseImp.DefaultCacheBuilder)5 Test (org.junit.Test)4 CacheBuilder (info.evelio.carbonite.CarboniteApi.CacheBuilder)3 CarboniteBuilder (info.evelio.carbonite.CarboniteApi.CarboniteBuilder)2 CacheFactory (info.evelio.carbonite.cache.CacheFactory)1 CacheType (info.evelio.carbonite.cache.CacheType)1 Options (info.evelio.carbonite.cache.ReferenceCache.Options)1