public void testUsesUrlBinding() { this.request.setParameter("employee", "2"); EmployeeBinding b = new EmployeeBinding(); Assert.assertNull(b.get()); SelectField<Employee> s = new SelectField<Employee>(b).id("employee").options(new Employee(2)); s.onProcess(); Assert.assertEquals(2, b.get().id.intValue()); }
public void testOptionsTakesABinding() { Page p = new Page(); p.employees = Copy.list(new Employee(2), new Employee(3)); PageBinding b = new PageBinding(p); SelectField<Employee> s = new SelectField<Employee>(b.employee()).id("employee").options(b.employees()); Assert.assertEquals(2, s.getOptionsPossiblyFromBinding().size()); Assert.assertEquals(2, s.getOptionsPossiblyFromBinding().get(0).id.intValue()); Assert.assertEquals(3, s.getOptionsPossiblyFromBinding().get(1).id.intValue()); }
public void testMultiple() { this.request.setParameter("employee", "2", "3"); Page p = new Page(); PageBinding b = new PageBinding(p); SelectField<Employee> s = new SelectField<Employee>(b.employees()) .id("employee") .options(new Employee(2)) .multiple(true); s.onProcess(); Assert.assertEquals(2, p.employees.get(0).id.intValue()); Assert.assertEquals(3, p.employees.get(1).id.intValue()); }
/** * Utility method loads all of the workflow form definitions from yaml files contained in the * workflow directory. * * @return */ public static List<FormDefinition> loadWorkflowFormDefinitions() { // List<FormDefinition> formDefs = new ArrayList<>(); // // URL path = Play.application().classloader().getResource(WORKFLOWS_PATH); // try { // File dir = new File(path.toURI()); // // File[] workflows = dir.listFiles(new FilenameFilter() { // public boolean accept(File dir, String name) { // return name.toLowerCase().endsWith(".yaml"); // } // }); // // for (File file : workflows) { // formDefs.add(loadFormDefinition(file.getAbsolutePath())); // } // } catch (URISyntaxException e) { /* Should not occur */ } List<FormDefinition> formDefs = new ArrayList<>(); Collection<config.WorkflowConfig> workflows = ConfigManager.getInstance().getWorkflowConfigs(); for (config.WorkflowConfig workflow : workflows) { FormDefinition formDef = new FormDefinition(); formDef.name = workflow.getName(); formDef.title = workflow.getTitle(); formDef.yamlFile = workflow.getYaml(); formDef.documentation = workflow.getDocumentation(); formDef.instructions = workflow.getInstructions(); formDef.summary = workflow.getSummary(); for (ParameterConfig parameter : workflow.getParameters()) { if (parameter.isTyped()) { String type = parameter.getType(); switch (type) { case "text": TextField textField = new TextField(); textField.name = parameter.getName(); textField.label = parameter.getLabel(); textField.tooltip = parameter.getDescription(); formDef.addField(textField); break; case "select": SelectField selectField = new SelectField(); selectField.name = parameter.getName(); selectField.label = parameter.getLabel(); selectField.options = parameter.getOptions(); selectField.tooltip = parameter.getDescription(); formDef.addField(selectField); break; case "upload": FileInput fileInput = new FileInput(); fileInput.name = parameter.getName(); fileInput.label = parameter.getLabel(); fileInput.tooltip = parameter.getDescription(); formDef.addField(fileInput); break; } } } formDefs.add(formDef); } return formDefs; }