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)); } }
@Test public void testDocumentOneWorkAreaFunction() { Mockito.when(this.functionMock.getWorkAreaOne()).thenReturn(workAreaOne); Mockito.when(this.functionMock.isTwoWorkAreas()).thenReturn(false); FunctionDocumentation result = this.documentationConfig.document(functionDocumentation, functionMock); assertSame(functionDocumentation, result); assertEquals(2, result.getFields().size()); assertTrue(result.getFields().contains(iDocOne)); assertTrue(result.getFields().contains(iDocTwo)); Mockito.verify(this.functionMock, Mockito.never()).getWorkAreaTwo(); }
@Test public void testDocumentTwoWorkAreaFunction() { Mockito.when(this.functionMock.getWorkAreaOne()).thenReturn(workAreaOne); Mockito.when(this.functionMock.isTwoWorkAreas()).thenReturn(true); Mockito.when(this.functionMock.getWorkAreaTwo()).thenReturn(workAreaTwo); FunctionDocumentation result = this.documentationConfig.document(functionDocumentation, functionMock); assertSame(functionDocumentation, result); assertEquals(4, result.getFields().size()); // grouped field should have been skipped assertFalse(result.getFields().contains(new MissingDocumentation(this.groupedField.getId()))); assertTrue(result.getFields().remove(iDocOne)); assertTrue(result.getFields().remove(iDocTwo)); assertTrue(result.getFields().remove(iDocFour)); assertEquals(1, result.getFields().size()); assertTrue(result.getFields().first() instanceof MissingDocumentation); }