protected void testTypeUpdateForAttributes() throws Exception { StructTypeDefinition typeDefinition = getTypeDefinition(newName(), TypesUtil.createRequiredAttrDef("a", DataTypes.INT_TYPE)); TypeSystem ts = getTypeSystem(); TypesDef typesDef = getTypesDef(typeDefinition); ts.defineTypes(typesDef); String typeName = typeDefinition.typeName; typeDefinition = getTypeDefinition(typeName, TypesUtil.createOptionalAttrDef("a", DataTypes.INT_TYPE)); ts.updateTypes(getTypesDef(typeDefinition)); typeDefinition = getTypeDefinition(typeName, TypesUtil.createOptionalAttrDef("a", DataTypes.INT_TYPE), TypesUtil.createOptionalAttrDef("b", DataTypes.INT_TYPE)); ts.updateTypes(getTypesDef(typeDefinition)); typeDefinition = getTypeDefinition(typeName, TypesUtil.createOptionalAttrDef("a", DataTypes.INT_TYPE), TypesUtil.createOptionalAttrDef("b", DataTypes.INT_TYPE), TypesUtil.createRequiredAttrDef("c", DataTypes.INT_TYPE)); try { ts.updateTypes(getTypesDef(typeDefinition)); Assert.fail("Expected TypeUpdateException"); } catch (TypeUpdateException e) { Assert.assertEquals(getNumberOfFields(ts, typeDefinition.typeName), 2); typeDefinition = getTypeDefinition(typeName, TypesUtil.createOptionalAttrDef("a", DataTypes.INT_TYPE)); try { ts.updateTypes(getTypesDef(typeDefinition)); } catch (TypeUpdateException e) {
@BeforeMethod public void setup() throws Exception { super.setup(); structType = getTypeSystem().getDataType(StructType.class, STRUCT_TYPE_1); recursiveStructType = getTypeSystem().getDataType(StructType.class, STRUCT_TYPE_2); invalidStructType = getTypeSystem().getDataType(StructType.class, STRUCT_TYPE_3); }
@BeforeMethod public void setup() throws Exception { super.setup(); structType = getTypeSystem().getDataType(StructType.class, STRUCT_TYPE_1); recursiveStructType = getTypeSystem().getDataType(StructType.class, STRUCT_TYPE_2); invalidStructType = getTypeSystem().getDataType(StructType.class, STRUCT_TYPE_3); }
protected void testTypeUpdateForAttributes() throws Exception { StructTypeDefinition typeDefinition = getTypeDefinition(newName(), TypesUtil.createRequiredAttrDef("a", DataTypes.INT_TYPE)); TypeSystem ts = getTypeSystem(); TypesDef typesDef = getTypesDef(typeDefinition); ts.defineTypes(typesDef); String typeName = typeDefinition.typeName; typeDefinition = getTypeDefinition(typeName, TypesUtil.createOptionalAttrDef("a", DataTypes.INT_TYPE)); ts.updateTypes(getTypesDef(typeDefinition)); typeDefinition = getTypeDefinition(typeName, TypesUtil.createOptionalAttrDef("a", DataTypes.INT_TYPE), TypesUtil.createOptionalAttrDef("b", DataTypes.INT_TYPE)); ts.updateTypes(getTypesDef(typeDefinition)); typeDefinition = getTypeDefinition(typeName, TypesUtil.createOptionalAttrDef("a", DataTypes.INT_TYPE), TypesUtil.createOptionalAttrDef("b", DataTypes.INT_TYPE), TypesUtil.createRequiredAttrDef("c", DataTypes.INT_TYPE)); try { ts.updateTypes(getTypesDef(typeDefinition)); Assert.fail("Expected TypeUpdateException"); } catch (TypeUpdateException e) { Assert.assertEquals(getNumberOfFields(ts, typeDefinition.typeName), 2); typeDefinition = getTypeDefinition(typeName, TypesUtil.createOptionalAttrDef("a", DataTypes.INT_TYPE)); try { ts.updateTypes(getTypesDef(typeDefinition)); } catch (TypeUpdateException e) {