throws extended with exceptionString parameter + added unit tests for this