@Test public void testOneWorkAreaConstructor() { assertSame(this.wa1Config, this.oneWorkAreaFunction.getWorkAreaOneConfig()); assertNull(this.oneWorkAreaFunction.getWorkAreaTwoConfig()); assertNull(this.oneWorkAreaFunction.getConfiguration()); assertFalse(this.oneWorkAreaFunction.isTwoWorkAreaFunction()); assertFalse(this.oneWorkAreaFunction.hasDefaultArguments()); }
private void assertFunctionConfig(FunctionConfig fConfig) { String id = fConfig.getId(); assertNotNull(id); assertNotNull(fConfig.getWorkAreaOneConfig()); if (!Function.FDG.equals(id) && !Function.FBB.equals(id) && !Function.FBF.equals(id)) { assertNotNull(fConfig.getWorkAreaTwoConfig()); } else { assertNull(fConfig.getWorkAreaTwoConfig()); } if(Function.FBL.equals(id)) { assertNotNull(fConfig.getConfiguration()); assertNotNull(fConfig.getConfiguration().requiredArguments()); assertFalse(fConfig.getConfiguration().requiredArguments().isEmpty()); } }
public Function createFunction(Geoclient geoclient) { log.debug("Attempting to create function {}", this.id); WorkArea workAreaOne = this.workAreaOneConfig.createWorkArea(); WorkArea workAreaTwo = null; if (isTwoWorkAreaFunction()) { workAreaTwo = this.workAreaTwoConfig.createWorkArea(); warnIfDuplicateFieldIds(workAreaOne, workAreaTwo); } DefaultConfiguration funConf = this.configuration; if(funConf == null){ log.warn("Function.configuration is null. Defaulting to new instance."); funConf = new DefaultConfiguration(); } GeosupportFunction function = new GeosupportFunction(this.id, workAreaOne, workAreaTwo, geoclient, funConf); return function; }
@Test//(expected=DuplicateFieldNameException.class) public void testCreateTwoWorkAreaFunction_duplicateFields() { WorkAreaConfig duplicateFieldWa2 = new WorkAreaConfig("DUP", TestData.fieldDuplicateIdOfOne.getLength(), true, TestData.newFieldList(TestData.fieldDuplicateIdOfOne),Collections.<Filter>emptyList()); FunctionConfig badFun = new FunctionConfig("DUP", this.wa1Config, duplicateFieldWa2); badFun.createFunction(new GeoclientStub()); }
private void init() { DocumentationConfig documentationConfig = new DocumentationConfig(documentationXmlReader.getDataDictionary()); for (FunctionConfig functionConfig : this.geoclientXmlReader.getFunctions()) { log.info("Creating function from {}", functionConfig); Function function = functionConfig.createFunction(geoclient); Registry.addFunction(function); Registry.addFunctionDocumentation(documentationConfig.document(documentationXmlReader.getFunctionDocumentation(function.getId()) , function)); } }
@Before public void setUp() throws Exception { this.wa1Config = new WorkAreaConfig("WW1", 12, true, TestData.newFieldList(TestData.fieldOne, TestData.fieldTwo), Collections.<Filter>emptyList()); this.wa2Config = new WorkAreaConfig("WW2_F1B", 4, false, TestData.newFieldList(TestData.makeField("pqr", 1, 4)), Collections.<Filter>emptyList()); this.configuration = new DefaultConfiguration(); // Don't use the names of real functions. Previously, using function "1B" // was causing the real 1B in GeosupportConfigIntegration test to fail // when all tests were run from Maven; basically, the 1B that was // returned by the integration test was the mock one created in // FunctionConfigTest. Issue did not occur within Eclipse or when // test was run individually. this.oneWorkAreaFunction = new FunctionConfig("EG", this.wa1Config, null); this.twoWorkAreaFunction = new FunctionConfig("9B", this.wa1Config, this.wa2Config); this.twoWorkAreaDefaultArgsFunction = new FunctionConfig("12", this.wa1Config, this.wa2Config, this.configuration); }
@Test public void testCreateNewDefaultConfigurationEvenIfFieldIsNull() { FunctionConfig functionConfig = new FunctionConfig("XX", this.wa1Config, this.wa2Config); Function function = functionConfig.createFunction(new GeoclientStub()); assertNotNull(function.getConfiguration()); }
@Test public void testCreateOneWorkAreaFunction() { Function function = this.oneWorkAreaFunction.createFunction(new GeoclientStub()); assertEquals("EG", function.getId()); }
@Test public void testTwoWorkAreaConstructor() { assertSame(this.wa1Config, this.twoWorkAreaFunction.getWorkAreaOneConfig()); assertSame(this.wa2Config, this.twoWorkAreaFunction.getWorkAreaTwoConfig()); assertNull(this.oneWorkAreaFunction.getConfiguration()); assertTrue(this.twoWorkAreaFunction.isTwoWorkAreaFunction()); assertFalse(this.twoWorkAreaFunction.hasDefaultArguments()); }
@Test public void testCreateUsesGivenDefaultConfiguration() { DefaultConfiguration config = new DefaultConfiguration(); FunctionConfig functionConfig = new FunctionConfig("XX", this.wa1Config, this.wa2Config,config); Function function = functionConfig.createFunction(new GeoclientStub()); assertSame(config, function.getConfiguration()); }
@Test public void testCreateTwoWorkAreaFunction() { Function function = this.twoWorkAreaFunction.createFunction(new GeoclientStub()); assertEquals("9B", function.getId()); }
@Test public void testTwoWorkAreaArgumentsConstructor() { assertSame(this.wa1Config, this.twoWorkAreaDefaultArgsFunction.getWorkAreaOneConfig()); assertSame(this.wa2Config, this.twoWorkAreaDefaultArgsFunction.getWorkAreaTwoConfig()); assertSame(this.configuration, this.twoWorkAreaDefaultArgsFunction.getConfiguration()); assertTrue(this.twoWorkAreaDefaultArgsFunction.isTwoWorkAreaFunction()); assertTrue(this.twoWorkAreaDefaultArgsFunction.hasDefaultArguments()); }