use of org.talend.dataquality.properties.TDQIndicatorDefinitionItem in project tdq-studio-se by Talend.
the class InidcatorUnitTest method testGetFormsCase1.
/**
* Test method for {@link org.talend.dataprofiler.core.ui.editor.preview.IndicatorUnit#getForms()}.
*
* test case 1: Get Forms from ColumnSetIndicatorUnit
*/
@Test
public void testGetFormsCase1() {
RowCountIndicator rowCountIndicator = IndicatorsFactory.eINSTANCE.createRowCountIndicator();
IRepositoryViewObject rowCountRepositoryViewObject = null;
try {
List<IRepositoryViewObject> all = ProxyRepositoryFactory.getInstance().getAll(ERepositoryObjectType.SYSTEM_INDICATORS_SIMPLE_STATISTICS);
Assert.assertEquals(10, all.size());
rowCountRepositoryViewObject = all.get(7);
} catch (PersistenceException e) {
Assert.fail(e.getMessage());
}
Assert.assertNotNull(rowCountRepositoryViewObject);
TDQIndicatorDefinitionItem rowCountItem = (TDQIndicatorDefinitionItem) rowCountRepositoryViewObject.getProperty().getItem();
rowCountIndicator.setIndicatorDefinition(rowCountItem.getIndicatorDefinition());
ColumnSetIndicatorUnit columnSetIndicatorUnit = new ColumnSetIndicatorUnit(IndicatorEnum.RowCountIndicatorEnum, rowCountIndicator);
FormEnum[] forms = new FormEnum[] { FormEnum.IndicatorThresholdsForm };
FormEnum[] resultforms = columnSetIndicatorUnit.getForms();
Assert.assertEquals(forms.length, resultforms.length);
for (int index = 0; index < forms.length; index++) {
Assert.assertEquals(forms[index], resultforms[index]);
}
}
use of org.talend.dataquality.properties.TDQIndicatorDefinitionItem in project tdq-studio-se by Talend.
the class InidcatorUnitTest method testGetIndicatorNameCase2.
/**
* Test method for {@link org.talend.dataprofiler.core.ui.editor.preview.IndicatorUnit#getIndicatorName()}.
*
* test case 2: Get Indicator Name from ColumnIndicatorUnit
*/
@Test
public void testGetIndicatorNameCase2() {
RowCountIndicator rowCountIndicator = IndicatorsFactory.eINSTANCE.createRowCountIndicator();
IRepositoryViewObject rowCountRepositoryViewObject = null;
try {
List<IRepositoryViewObject> all = ProxyRepositoryFactory.getInstance().getAll(ERepositoryObjectType.SYSTEM_INDICATORS_SIMPLE_STATISTICS);
Assert.assertEquals(10, all.size());
rowCountRepositoryViewObject = all.get(7);
} catch (PersistenceException e) {
Assert.fail(e.getMessage());
}
Assert.assertNotNull(rowCountRepositoryViewObject);
TDQIndicatorDefinitionItem rowCountItem = (TDQIndicatorDefinitionItem) rowCountRepositoryViewObject.getProperty().getItem();
rowCountIndicator.setIndicatorDefinition(rowCountItem.getIndicatorDefinition());
ColumnIndicatorUnit columnIndicatorUnit = new ColumnIndicatorUnit(IndicatorEnum.RowCountIndicatorEnum, rowCountIndicator, null);
Assert.assertEquals(org.talend.cwm.management.i18n.Messages.getString(rowCountItem.getProperty().getLabel()), columnIndicatorUnit.getIndicatorName());
}
use of org.talend.dataquality.properties.TDQIndicatorDefinitionItem in project tdq-studio-se by Talend.
the class BenfordLawFrequencyStateTest method setUp.
/**
* init the state.
*
* @throws java.lang.Exception
*/
@Before
public void setUp() throws Exception {
UnitTestBuildHelper.initProjectStructure();
List<IndicatorUnit> units = new ArrayList<IndicatorUnit>();
BenfordLawFrequencyIndicator benfordLawFrequencyIndicator = IndicatorsFactory.eINSTANCE.createBenfordLawFrequencyIndicator();
List<IRepositoryViewObject> all = ProxyRepositoryFactory.getInstance().getAll(ERepositoryObjectType.SYSTEM_INDICATORS_FRAUDDETECTION);
Assert.assertEquals(1, all.size());
IRepositoryViewObject iRepositoryViewObject = all.get(0);
Assert.assertNotNull(iRepositoryViewObject);
TDQIndicatorDefinitionItem benfordItem = (TDQIndicatorDefinitionItem) iRepositoryViewObject.getProperty().getItem();
benfordLawFrequencyIndicator.setIndicatorDefinition(benfordItem.getIndicatorDefinition());
ModelElementIndicator modelElementIndicator = UnitTestBuildHelper.createModelElementIndicator();
ColumnIndicatorUnit columnIndicatorUnit = new ColumnIndicatorUnit(IndicatorEnum.BenfordLawFrequencyIndicatorEnum, benfordLawFrequencyIndicator, modelElementIndicator);
// IndicatorUnit unit = mock(IndicatorUnit.class);
units.add(columnIndicatorUnit);
for (int i = 0; i < 10; i++) {
benfordLawFrequencyIndicator.handle(i);
}
benState = new BenfordLawFrequencyState(units);
}
use of org.talend.dataquality.properties.TDQIndicatorDefinitionItem in project tdq-studio-se by Talend.
the class FileSystemImportWriterTest method testMergeSystemIndicator.
/**
* Test method for
* {@link org.talend.dataprofiler.core.ui.imex.model.FileSystemImportWriter#mergeSystemIndicator(org.talend.dataprofiler.core.ui.imex.model.ItemRecord, org.talend.dataquality.indicators.definition.IndicatorDefinition)}
* .
*/
@Test
public void testMergeSystemIndicator() {
ItemRecord mockItem = mock(ItemRecord.class);
TDQIndicatorDefinitionItem siItem = PropertiesFactory.eINSTANCE.createTDQIndicatorDefinitionItem();
Property siProp = org.talend.core.model.properties.PropertiesFactory.eINSTANCE.createProperty();
IndicatorDefinition SIdef = DefinitionFactory.eINSTANCE.createIndicatorDefinition();
siItem.setIndicatorDefinition(SIdef);
siItem.setProperty(siProp);
IndicatorDefinition importedDef = DefinitionFactory.eINSTANCE.createIndicatorDefinition();
// make mockItem has: one new template, one modified newer template, one modified older template.
// $NON-NLS-1$ //$NON-NLS-2$
TdExpression e0 = BooleanExpressionHelper.createTdExpression("new", "new body");
// $NON-NLS-1$
e0.setModificationDate("20130101");
// $NON-NLS-1$ //$NON-NLS-2$
TdExpression e1 = BooleanExpressionHelper.createTdExpression("tem_1", "modified newer body");
// $NON-NLS-1$
e1.setModificationDate("20130101");
// $NON-NLS-1$ //$NON-NLS-2$
TdExpression e2 = BooleanExpressionHelper.createTdExpression("tem_2", "modified older body");
// $NON-NLS-1$
e2.setModificationDate("20110101");
importedDef.getSqlGenericExpression().add(e0);
importedDef.getSqlGenericExpression().add(e1);
importedDef.getSqlGenericExpression().add(e2);
when(mockItem.getElement()).thenReturn(importedDef);
// $NON-NLS-1$ //$NON-NLS-2$
TdExpression e3 = BooleanExpressionHelper.createTdExpression("tem_1", "should be replaced");
// $NON-NLS-1$
e3.setModificationDate("20120101");
// $NON-NLS-1$ //$NON-NLS-2$
TdExpression e4 = BooleanExpressionHelper.createTdExpression("tem_2", "should keep this");
// $NON-NLS-1$
e4.setModificationDate("20120101");
SIdef.getSqlGenericExpression().add(e3);
SIdef.getSqlGenericExpression().add(e4);
ReturnCode rc = mock(ReturnCode.class);
when(rc.isOk()).thenReturn(true);
ElementWriterFactory ewFactory = mock(ElementWriterFactory.class);
IndicatorDefinitionWriter indWriter = mock(IndicatorDefinitionWriter.class);
when(indWriter.save(siItem, false)).thenReturn(rc);
// $NON-NLS-1$
stub(method(ElementWriterFactory.class, "getInstance")).toReturn(ewFactory);
when(ewFactory.createIndicatorDefinitionWriter()).thenReturn(indWriter);
// before merge
Assert.assertEquals(SIdef.getSqlGenericExpression().size(), 2);
writer.mergeSystemIndicator(mockItem, siItem);
// after merge
Assert.assertEquals(SIdef.getSqlGenericExpression().size(), 3);
for (TdExpression ex : SIdef.getSqlGenericExpression()) {
if (ex.getLanguage().equals("new")) {
// $NON-NLS-1$
// $NON-NLS-1$
Assert.assertEquals("new body", ex.getBody());
} else if (ex.getLanguage().equals("tem_1")) {
// $NON-NLS-1$
// $NON-NLS-1$
Assert.assertEquals("modified newer body", ex.getBody());
} else if (ex.getLanguage().equals("tem_2")) {
// $NON-NLS-1$
// $NON-NLS-1$
Assert.assertEquals("should keep this", ex.getBody());
}
}
// other type?not SI
}
use of org.talend.dataquality.properties.TDQIndicatorDefinitionItem in project tdq-studio-se by Talend.
the class ItemRecordTest method saveIndicatorDefintion.
private void saveIndicatorDefintion(String uuid, String name) throws PersistenceException {
// create definition
IndicatorDefinition createIndicatorDefinition = DefinitionFactory.eINSTANCE.createIndicatorDefinition();
TDQIndicatorDefinitionItem createTDQIndicatorDefinitionItem = PropertiesFactory.eINSTANCE.createTDQIndicatorDefinitionItem();
createTDQIndicatorDefinitionItem.setIndicatorDefinition(createIndicatorDefinition);
Property createProperty = org.talend.core.model.properties.PropertiesFactory.eINSTANCE.createProperty();
createProperty.setLabel(name);
createIndicatorDefinition.setLabel(name);
createIndicatorDefinition.setName(name);
createTDQIndicatorDefinitionItem.setProperty(createProperty);
createProperty.setId(uuid);
ProxyRepositoryFactory.getInstance().create(createTDQIndicatorDefinitionItem, new Path(ERepositoryObjectType.TDQ_SYSTEM_INDICATORS.getFolder()).removeFirstSegments(2), false);
}
Aggregations