@Test public void get_if_exists_when_it_does_exist() { String strategyName = "ethereal"; ApplicationStatePersistenceStrategy strategy = mockApplicationStatePersistenceStrategy(); ApplicationStatePersistenceStrategySource source = mockApplicationStatePersistenceStrategySource(); Class asoClass = ReadOnlyBean.class; ApplicationStateCreator<ReadOnlyBean> creator = mockApplicationStateCreator(); ReadOnlyBean aso = new ReadOnlyBean(); Map<Class, ApplicationStateContribution> configuration = Collections.singletonMap(asoClass, new ApplicationStateContribution(strategyName, creator)); train_get(source, strategyName, strategy); train_exists(strategy, asoClass, true); train_get(strategy, asoClass, creator, aso); replay(); ApplicationStateManager manager = new ApplicationStateManagerImpl(configuration, source, null); assertSame(manager.getIfExists(asoClass), aso); verify(); }