### Question:
Job extends CommonDTO { public Optional<String> getCommandArgs() { return Optional.ofNullable(this.commandArgs); } protected  Job(@Valid final Builder builder); Optional<String> getCommandArgs(); Optional<String> getStatusMsg(); Optional<String> getArchiveLocation(); Optional<String> getClusterName(); Optional<String> getCommandName(); Optional<String> getGrouping(); Optional<String> getGroupingInstance(); Optional<Instant> getStarted(); Optional<Instant> getFinished();  }### Answer:
@Test void testCommandArgsEdgeCases() { final Job.Builder builder = new Job.Builder(NAME, USER, VERSION); String commandArgs = " blah "; builder.withCommandArgs(commandArgs); Assertions .assertThat(builder.build().getCommandArgs().orElseThrow(IllegalArgumentException::new)) .isEqualTo(" blah "); commandArgs = " blah "; builder.withCommandArgs(commandArgs); Assertions .assertThat(builder.build().getCommandArgs().orElseThrow(IllegalArgumentException::new)) .isEqualTo(" blah "); commandArgs = " blah blah blah\nblah\tblah \"blah\" blah "; builder.withCommandArgs(commandArgs); Assertions .assertThat(builder.build().getCommandArgs().orElseThrow(IllegalArgumentException::new)) .isEqualTo(" blah blah blah\nblah\tblah \"blah\" blah "); builder.withCommandArgs(Lists.newArrayList("blah", "blah", " blah", "\nblah", "\"blah\"")); Assertions .assertThat(builder.build().getCommandArgs().orElseThrow(IllegalArgumentException::new)) .isEqualTo("blah blah blah \nblah \"blah\""); }