Container implements IContainer { @Override public void register(final IKey key, final IResolveDependencyStrategy strategy) throws RegistrationException { if (key == null) { throw new RegistrationException("Key can't be null"); } if (strategy == null) { throw new RegistrationException("Strategy can't be null"); } try { storage.put(key, strategy); } catch (Exception e) { throw new RegistrationException("Registration of dependency failed for key " + key, e); } } Container(); @Override IKey getIocKey(); @Override IKey getKeyForKeyStorage(); @Override @SuppressWarnings("unchecked") T resolve(final IKey key, final Object... args); @Override void register(final IKey key, final IResolveDependencyStrategy strategy); @Override void remove(final IKey key);  }
@Test (expected = RegistrationException.class) public void checkRegistrationException() throws Exception { IContainer container = new Container(); container.register(null, null); fail(); }