### Question:
ExecBuilder { public final SynchronousExecResult exec() throws IOException { try { int exitStatus = getExecutor().execute(getCommandLine(), env); return new SynchronousExecResult(stdOut, exitStatus); } catch (ExecuteException e) { throw logFailureAndGetIOException(toString(), e, stdOut, stdErr); } } ExecBuilder(final String command);  ExecBuilder(final String command, final boolean handleQuoting); final ExecBuilder args(final String... args); final ExecBuilder timeout(final long timeout); final ExecBuilder stdIn(final InputStream stdIn); final ExecBuilder stdOutAndErr(final OutputStream stdOut, final OutputStream stdErr); final ExecBuilder workingDirectory(final Path workingDirectory); final ExecBuilder environment(final Map<String, String> env); final ExecBuilder exitValues(final int[] exitValues); final SynchronousExecResult exec(); final AsynchronousExecResult asyncExec(); @Override final String toString();  }### Answer:
@Test(expectedExceptions = IOException.class) public final void testSyncExecNonexistentCommand() throws Exception { new ExecBuilder("/bin/veryfakeprogram").exec(); }