### Question:
ExecServiceProvider extends AbstractFileServiceProvider { @Override public String getName() { return "exec"; } ExecServiceProvider(File directory, boolean includeGenericExecService);  ExecServiceProvider(); @Override String getName(); @Override Service createService(File file); @Override Collection<Service> additionalServices();  }### Answer:
@Test public void new1() throws Exception { File file = new File(getClass().getResource(".").toURI()); ExecServiceProvider factory = new ExecServiceProvider(file, false); Collection<Service> services = factory.createServices(); assertThat(services.size(), equalTo(1)); Service service = services.iterator().next(); assertThat(service.getName(), equalTo("execSample")); assertThat(service.getDescription(), equalTo("A test service")); assertThat(service.getServiceMethods().size(), equalTo(2)); assertThat(service.getServiceMethods().get("echo").getName(), equalTo("echo")); assertThat(service.getServiceMethods().get("echo").getDescription(), equalTo("A test script")); assertThat(service.getServiceMethods().get("echo").getArguments().size(), equalTo(1)); assertThat(service.getServiceMethods().get("echo").getArgumentMap().get("string").getDescription(), equalTo("The string")); assertThat(service.getServiceMethods().get("echo").getArgumentMap().get("string").getType(), equalTo((Class) VString.class)); assertThat(service.getServiceMethods().get("echo").getResults().size(), equalTo(1)); assertThat(service.getServiceMethods().get("echo").getResultMap().get("result").getType(), equalTo((Class) VType.class)); assertThat(service.getServiceMethods().get("echo").getResultMap().get("result").getDescription(), equalTo("The result")); assertThat(service.getServiceMethods().get("script").getName(), equalTo("script")); assertThat(service.getServiceMethods().get("script").getDescription(), equalTo("My script")); assertThat(service.getServiceMethods().get("script").getArguments().size(), equalTo(1)); assertThat(service.getServiceMethods().get("script").getArgumentMap().get("value").getDescription(), equalTo("The value")); assertThat(service.getServiceMethods().get("script").getArgumentMap().get("value").getType(), equalTo((Class) VNumber.class)); assertThat(service.getServiceMethods().get("script").getResults().size(), equalTo(1)); assertThat(service.getServiceMethods().get("script").getResultMap().get("result").getType(), equalTo((Class) VType.class)); assertThat(service.getServiceMethods().get("script").getResultMap().get("result").getDescription(), equalTo("The script result")); }