@Test
public void testAppGoal() throws GoalConfigurationException, GoalExecutionException {

  // App: Relative and absolute folders with and without spaces
  final Path rel_app_with_space = Paths.get("src", "test", "resources", "appfolder with space");
  final Path abs_app = Paths.get("src", "test", "resources", "appfolder").toAbsolutePath();
  final Path py_app = Paths.get("src", "test", "resources", "foo").toAbsolutePath();
  final String app_string = rel_app_with_space.toString() + "," + abs_app + "," + py_app;
  // Dep: Relative and absolute folders with and without spaces
  final Path rel_dep_with_space = Paths.get("src", "test", "resources", "depfolder with space");
  final Path abs_dep = Paths.get("src", "test", "resources", "depfolder").toAbsolutePath();
  final Path cc =
      Paths.get("src", "test", "resources", "depfolder", "commons-collections-3.2.2.jar");
  final String dep_string =
      cc.toString() + "," + rel_dep_with_space.toString() + "," + abs_dep.toString();
  System.setProperty(CoreConfiguration.APP_DIRS, app_string + "," + dep_string);
  // Mock REST services
  this.configureBackendServiceUrl(server);
  this.setupMockServices(this.testApp);
  final String[] args = new String[] {"-goal", "app"};
  VulasCli.main(args);
  // Check the HTTP calls made
  verifyHttp(server)
      .times(1, method(Method.PUT), uri("/backend" + PathBuilder.app(this.testApp)));
  verifyHttp(server)
      .times(
          2,
          method(Method.POST),
          uri("/backend" + PathBuilder.goalExcecutions(null, null, this.testApp)));
}