### Question:
Dependencies extends DependencyResolver.Adapter implements DependencySatisfier { @Override public <T> T resolveDependency( Class<T> type, SelectionStrategy selector ) { RichIterable options = typeDependencies.get( type ); if ( options.notEmpty() ) { return selector.select( type, (Iterable<T>) options ); } if ( parent != null ) { return parent.resolveDependency( type, selector ); } throw new UnsatisfiedDependencyException( type ); } Dependencies();  Dependencies( DependencyResolver parent ); @Override T resolveDependency( Class<T> type, SelectionStrategy selector ); @Override Iterable<? extends T> resolveTypeDependencies( Class<T> type ); @Override Supplier<T> provideDependency( final Class<T> type, final SelectionStrategy selector ); @Override Supplier<T> provideDependency( final Class<T> type ); @Override T satisfyDependency( T dependency ); void satisfyDependencies( Object... dependencies );  }### Answer:
@Test public void givenEmptyDependenciesWhenResolveWithTypeThenException() { Dependencies dependencies = new Dependencies( ); try { dependencies.resolveDependency( Collection.class ); fail(); } catch ( UnsatisfiedDependencyException e ) { } }