package org.openmrs.module.reporting.definition.library.implementerconfigured; import static org.hamcrest.core.Is.is; import static org.junit.Assert.assertThat; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileOutputStream; import java.io.FileWriter; import java.io.InputStream; import java.io.PrintWriter; import java.net.URL; import org.hamcrest.core.Is; import org.junit.Before; import org.junit.Test; import org.openmrs.module.reporting.dataset.DataSet; import org.openmrs.module.reporting.dataset.definition.DataSetDefinition; import org.openmrs.module.reporting.dataset.definition.EvaluatableDataSetDefinition; import org.openmrs.module.reporting.dataset.definition.service.DataSetDefinitionService; import org.openmrs.module.reporting.evaluation.EvaluationContext; import org.openmrs.test.BaseModuleContextSensitiveTest; import org.openmrs.util.OpenmrsUtil; import org.springframework.beans.factory.annotation.Autowired; public class ImplementerConfiguredDataSetDefinitionLibraryComponentTest extends BaseModuleContextSensitiveTest { @Autowired DataSetDefinitionService service; @Autowired ImplementerConfiguredDataSetDefinitionLibrary library; @Before public void setUp() throws Exception { File dir = new File(getClass().getClassLoader().getResource("implementerconfigured/dataSet.groovy").toURI() .getPath()).getParentFile(); library.setDirectory(dir); } @Test public void testGroovyWithAutowired() throws Exception { DataSetDefinition definition = library.getDefinition("configuration.definitionlibrary.dataset.dataSet"); DataSet dataSet = service.evaluate(definition, new EvaluationContext()); assertThat(dataSet.getMetaData().getColumnCount(), is(1)); assertThat(dataSet.iterator().next().getColumnValue("groovy"), Is.<Object>is("Xanadu")); } }