}
repo.delete();
}
@Test
public void testProprocess() {
Repository repository = new VFSRepository(producer.getIoService());
((VFSRepository)repository).setDescriptor(descriptor);
profile.setRepository(repository);
//prepare folders that will be used
repository.createDirectory("/myprocesses");
repository.createDirectory("/global");
// prepare process asset that will be used to preprocess
AssetBuilder builder = AssetBuilderFactory.getAssetBuilder(Asset.AssetType.Text);
builder.content("bpmn2 content")
.type("bpmn2")
.name("process")
.location("/myprocesses");
String uniqueId = repository.createAsset(builder.getAsset());
// create instance of preprocessing unit
JbpmPreprocessingUnit preprocessingUnitVFS = new JbpmPreprocessingUnit(new TestServletContext(), "/", null);
// setup parameters
Map<String, String> params = new HashMap<String, String>();
params.put("uuid", uniqueId);
// run preprocess
preprocessingUnitVFS.preprocess(new TestHttpServletRequest(params), null, new TestIDiagramProfile(repository), null, false, null, null);
// validate results
Collection<Asset> globalAssets = repository.listAssets("/global");
assertNotNull(globalAssets);
assertEquals(29, globalAssets.size());
repository.assetExists("/global/backboneformsinclude.fw");
repository.assetExists("/global/backbonejsinclude.fw");
repository.assetExists("/global/cancelbutton.fw");
repository.assetExists("/global/checkbox.fw");
repository.assetExists("/global/customeditors.json");
repository.assetExists("/global/div.fw");
repository.assetExists("/global/dropdownmenu.fw");
repository.assetExists("/global/fieldset.fw");
repository.assetExists("/global/form.fw");
repository.assetExists("/global/handlebarsinclude.fw");
repository.assetExists("/global/htmlbasepage.fw");
repository.assetExists("/global/image.fw");
repository.assetExists("/global/jqueryinclude.fw");
repository.assetExists("/global/jquerymobileinclude.fw");
repository.assetExists("/global/link.fw");
repository.assetExists("/global/mobilebasepage.fw");
repository.assetExists("/global/orderedlist.fw");
repository.assetExists("/global/passwordfield.fw");
repository.assetExists("/global/radiobutton.fw");
repository.assetExists("/global/script.fw");
repository.assetExists("/global/submitbutton.fw");
repository.assetExists("/global/table.fw");
repository.assetExists("/global/textarea.fw");
repository.assetExists("/global/textfield.fw");
repository.assetExists("/global/themes.json");
repository.assetExists("/global/unorderedlist.fw");
repository.assetExists("/global/defaultemailicon.gif");
repository.assetExists("/global/defaultlogicon.gif");
repository.assetExists("/global/defaultservicenodeicon.png");
Collection<Asset> defaultStuff = repository.listAssets("/myprocesses");
assertNotNull(defaultStuff);
assertEquals(2, defaultStuff.size());
repository.assetExists("/myprocesses/WorkDefinitions.wid");
// this is the process asset that was created for the test but let's check it anyway
repository.assetExists("/myprocesses/process.bpmn2");
}