This appears to duplicate logic in ParameterizedAssertionError. Perhaps we should create a new internal class ParameterizedExceptions that has static methods for creating the exceptions, so we share that logic.