use of org.kie.workbench.common.widgets.client.datamodel.testclasses.TestSuperClass in project kie-wb-common by kiegroup.
the class PackageDataModelOracleTest method testSuperClass.
@Test
public void testSuperClass() throws IOException {
final ModuleDataModelOracle moduleLoader = ModuleDataModelOracleBuilder.newModuleOracleBuilder(new RawMVELEvaluator()).addClass(TestSuperClass.class).build();
final PackageDataModelOracle packageLoader = PackageDataModelOracleBuilder.newPackageOracleBuilder(new RawMVELEvaluator(), "org.kie.workbench.common.widgets.client.datamodel.testclasses").setModuleOracle(moduleLoader).build();
// Emulate server-to-client conversions
final Caller<IncrementalDataModelService> service = new MockIncrementalDataModelServiceCaller(packageLoader);
final AsyncPackageDataModelOracle oracle = new AsyncPackageDataModelOracleImpl(service, validatorInstance);
final PackageDataModelOracleBaselinePayload dataModel = new PackageDataModelOracleBaselinePayload();
dataModel.setPackageName(packageLoader.getPackageName());
dataModel.setModelFields(packageLoader.getModuleModelFields());
dataModel.setFieldParametersType(packageLoader.getModuleFieldParametersType());
PackageDataModelOracleTestUtils.populateDataModelOracle(mock(Path.class), new MockHasImports(), oracle, dataModel);
assertEquals(1, oracle.getFactTypes().length);
assertEquals(TestSuperClass.class.getSimpleName(), oracle.getFactTypes()[0]);
oracle.getFieldCompletions(TestSuperClass.class.getSimpleName(), new Callback<ModelField[]>() {
@Override
public void callback(final ModelField[] fields) {
assertEquals(3, fields.length);
}
});
assertEquals(DataType.TYPE_THIS, oracle.getFieldType(TestSuperClass.class.getSimpleName(), "this"));
assertEquals(TestSuperClass.class.getSimpleName(), oracle.getFieldClassName(TestSuperClass.class.getSimpleName(), "this"));
assertEquals(DataType.TYPE_STRING, oracle.getFieldType(TestSuperClass.class.getSimpleName(), "field1"));
assertEquals(String.class.getName(), oracle.getFieldClassName(TestSuperClass.class.getSimpleName(), "field1"));
assertEquals(DataType.TYPE_COLLECTION, oracle.getFieldType(TestSuperClass.class.getSimpleName(), "list"));
assertEquals(List.class.getName(), oracle.getFieldClassName(TestSuperClass.class.getSimpleName(), "list"));
assertEquals(String.class.getName(), oracle.getParametricFieldType(TestSuperClass.class.getSimpleName(), "list"));
}
Aggregations