### Question:
RadlNature implements IProjectNature { @Override public void configure() throws CoreException { IProjectDescription desc = getProject().getDescription(); ICommand[] commands = desc.getBuildSpec(); boolean found = false; for (ICommand command : commands) { if (RadlBuilder.BUILDER_ID.equals(command.getBuilderName())) { found = true; break; } } if (!found) { ICommand[] newCommands = new ICommand[commands.length + 1]; System.arraycopy(commands, 0, newCommands, 0, commands.length); ICommand command = desc.newCommand(); command.setBuilderName(RadlBuilder.BUILDER_ID); newCommands[newCommands.length - 1] = command; desc.setBuildSpec(newCommands); } desc.setNatureIds(ensureNature(desc.getNatureIds())); getProject().setDescription(desc, null); }  @Override void configure(); @Override void deconfigure(); @Override IProject getProject(); @Override void setProject(IProject project); static final String NATURE_ID; }### Answer:
@Test public void configureAddsBuilderWhenNotPresent() throws CoreException { init(); nature.configure(); assertBuilder(true); }