public class org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration extends org.finos.legend.engine.external.shared.format.model.transformation.toModel.SchemaToModelGenerationTest
{
public void <init>()
{
org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration v;
v := @this: org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration;
specialinvoke v.<org.finos.legend.engine.external.shared.format.model.transformation.toModel.SchemaToModelGenerationTest: void <init>()>();
return;
}
public void testSimpleCsv()
{
org.finos.legend.engine.external.shared.format.model.test.ExternalSchemaSetGrammarBuilder v, v;
org.finos.legend.engine.external.shared.format.model.test.ModelTexts v, v;
org.finos.legend.engine.protocol.pure.v.model.context.PureModelContextData v;
org.finos.legend.engine.external.format.flatdata.transformation.toModel.FlatDataToModelConfiguration v;
java.lang.String v;
org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration v;
v := @this: org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration;
v = staticinvoke <org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration: org.finos.legend.engine.external.shared.format.model.test.ExternalSchemaSetGrammarBuilder newExternalSchemaSetGrammarBuilder(java.lang.String,java.lang.String)>("test::Simple", "FlatData");
v = virtualinvoke v.<org.finos.legend.engine.external.shared.format.model.test.ExternalSchemaSetGrammarBuilder: org.finos.legend.engine.external.shared.format.model.test.ExternalSchemaSetGrammarBuilder withSchemaText(java.lang.String)>("section data: DelimitedWithHeadings\n{\n  scope.untilEof;\n  delimiter: \',\';\n\n  Record\n  {\n    Name            : STRING;\n    Employed        : INTEGER(optional);\n    IQ              : INTEGER(optional);\n    \'Weight KG\'     : DECIMAL(optional);\n    \'DATE OF BIRTH\' : DATE;\n    TIME_OF_DEATH   : DATETIME;\n  }\n}");
v = virtualinvoke v.<org.finos.legend.engine.external.shared.format.model.test.ExternalSchemaSetGrammarBuilder: java.lang.String build()>();
v = specialinvoke v.<org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration: org.finos.legend.engine.external.format.flatdata.transformation.toModel.FlatDataToModelConfiguration config(java.lang.String,boolean)>("test::gen", 0);
v = staticinvoke <org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration: org.finos.legend.engine.protocol.pure.v.model.context.PureModelContextData generateModel(java.lang.String,org.finos.legend.engine.external.shared.format.model.transformation.toModel.SchemaToModelConfiguration)>(v, v);
v = staticinvoke <org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration: org.finos.legend.engine.external.shared.format.model.test.ModelTexts modelTextsFromString(java.lang.String)>(">>>test::gen::dataRecord\nClass test::gen::dataRecord extends meta::pure::metamodel::type::Any\n{\n  Name: String[1];\n  Employed: Integer[0..1];\n  IQ: Integer[0..1];\n  \'Weight KG\': Float[0..1];\n  \'DATE OF BIRTH\': StrictDate[1];\n  TIME_OF_DEATH: DateTime[1];\n}");
v = staticinvoke <org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration: org.finos.legend.engine.external.shared.format.model.test.ModelTexts modelTextsFromContextData(org.finos.legend.engine.protocol.pure.v.model.context.PureModelContextData)>(v);
staticinvoke <org.junit.Assert: void assertEquals(java.lang.Object,java.lang.Object)>(v, v);
return;
}
public void testSimpleCsvWithPurifiedNames()
{
org.finos.legend.engine.external.shared.format.model.test.ExternalSchemaSetGrammarBuilder v, v;
org.finos.legend.engine.external.shared.format.model.test.ModelTexts v, v;
org.finos.legend.engine.protocol.pure.v.model.context.PureModelContextData v;
org.finos.legend.engine.external.format.flatdata.transformation.toModel.FlatDataToModelConfiguration v;
java.lang.String v;
org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration v;
v := @this: org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration;
v = staticinvoke <org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration: org.finos.legend.engine.external.shared.format.model.test.ExternalSchemaSetGrammarBuilder newExternalSchemaSetGrammarBuilder(java.lang.String,java.lang.String)>("test::Simple", "FlatData");
v = virtualinvoke v.<org.finos.legend.engine.external.shared.format.model.test.ExternalSchemaSetGrammarBuilder: org.finos.legend.engine.external.shared.format.model.test.ExternalSchemaSetGrammarBuilder withSchemaText(java.lang.String)>("section data: DelimitedWithHeadings\n{\n  scope.untilEof;\n  delimiter: \',\';\n\n  Record\n  {\n    Name            : STRING;\n    Employed        : INTEGER(optional);\n    IQ              : INTEGER(optional);\n    \'Weight KG\'     : DECIMAL(optional);\n    \'DATE OF BIRTH\' : DATE;\n    TIME_OF_DEATH   : DATETIME;\n  }\n}");
v = virtualinvoke v.<org.finos.legend.engine.external.shared.format.model.test.ExternalSchemaSetGrammarBuilder: java.lang.String build()>();
v = specialinvoke v.<org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration: org.finos.legend.engine.external.format.flatdata.transformation.toModel.FlatDataToModelConfiguration config(java.lang.String,boolean)>("test::gen", 1);
v = staticinvoke <org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration: org.finos.legend.engine.protocol.pure.v.model.context.PureModelContextData generateModel(java.lang.String,org.finos.legend.engine.external.shared.format.model.transformation.toModel.SchemaToModelConfiguration)>(v, v);
v = staticinvoke <org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration: org.finos.legend.engine.external.shared.format.model.test.ModelTexts modelTextsFromString(java.lang.String)>(">>>test::gen::DataRecord\nClass test::gen::DataRecord extends meta::pure::metamodel::type::Any\n{\n  name: String[1];\n  employed: Integer[0..1];\n  iq: Integer[0..1];\n  weightKg: Float[0..1];\n  dateOfBirth: StrictDate[1];\n  timeOfDeath: DateTime[1];\n}");
v = staticinvoke <org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration: org.finos.legend.engine.external.shared.format.model.test.ModelTexts modelTextsFromContextData(org.finos.legend.engine.protocol.pure.v.model.context.PureModelContextData)>(v);
staticinvoke <org.junit.Assert: void assertEquals(java.lang.Object,java.lang.Object)>(v, v);
return;
}
public void testMultiSectionCsv()
{
org.finos.legend.engine.external.shared.format.model.test.ExternalSchemaSetGrammarBuilder v, v;
org.finos.legend.engine.external.shared.format.model.test.ModelTexts v, v;
org.finos.legend.engine.protocol.pure.v.model.context.PureModelContextData v;
org.finos.legend.engine.external.format.flatdata.transformation.toModel.FlatDataToModelConfiguration v;
java.lang.String v;
org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration v;
v := @this: org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration;
v = staticinvoke <org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration: org.finos.legend.engine.external.shared.format.model.test.ExternalSchemaSetGrammarBuilder newExternalSchemaSetGrammarBuilder(java.lang.String,java.lang.String)>("test::Simple", "FlatData");
v = virtualinvoke v.<org.finos.legend.engine.external.shared.format.model.test.ExternalSchemaSetGrammarBuilder: org.finos.legend.engine.external.shared.format.model.test.ExternalSchemaSetGrammarBuilder withSchemaText(java.lang.String)>("section header: DelimitedWithoutHeadings\n{\n  scope.forNumberOfLines: 1;\n  delimiter: \',\';\n\n  Record\n  {\n    Nationality {1} : STRING;\n  }\n}section data: DelimitedWithHeadings\n{\n  scope.untilEof;\n  delimiter: \',\';\n\n  Record\n  {\n    Name            : STRING;\n    Employed        : INTEGER(optional);\n    IQ              : INTEGER(optional);\n    \'Weight KG\'     : DECIMAL(optional);\n    \'DATE OF BIRTH\' : DATE;\n    TIME_OF_DEATH   : DATETIME;\n  }\n}");
v = virtualinvoke v.<org.finos.legend.engine.external.shared.format.model.test.ExternalSchemaSetGrammarBuilder: java.lang.String build()>();
v = specialinvoke v.<org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration: org.finos.legend.engine.external.format.flatdata.transformation.toModel.FlatDataToModelConfiguration config(java.lang.String,boolean,java.lang.String)>("test::gen", 1, "PeopleSet");
v = staticinvoke <org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration: org.finos.legend.engine.protocol.pure.v.model.context.PureModelContextData generateModel(java.lang.String,org.finos.legend.engine.external.shared.format.model.transformation.toModel.SchemaToModelConfiguration)>(v, v);
v = staticinvoke <org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration: org.finos.legend.engine.external.shared.format.model.test.ModelTexts modelTextsFromString(java.lang.String)>(">>>test::gen::DataRecord\nClass test::gen::DataRecord extends meta::pure::metamodel::type::Any\n{\n  name: String[1];\n  employed: Integer[0..1];\n  iq: Integer[0..1];\n  weightKg: Float[0..1];\n  dateOfBirth: StrictDate[1];\n  timeOfDeath: DateTime[1];\n}\n\n>>>test::gen::HeaderRecord\nClass test::gen::HeaderRecord extends meta::pure::metamodel::type::Any\n{\n  nationality: String[1];\n}\n\n>>>test::gen::PeopleSet\nClass test::gen::PeopleSet extends meta::pure::metamodel::type::Any\n{\n}\n\n>>>test::gen::PeopleSet_DataRecord\nAssociation test::gen::PeopleSet_DataRecord\n{\n  peopleSet: test::gen::PeopleSet[1];\n  data: test::gen::DataRecord[*];\n}\n\n>>>test::gen::PeopleSet_HeaderRecord\nAssociation test::gen::PeopleSet_HeaderRecord\n{\n  peopleSet: test::gen::PeopleSet[1];\n  header: test::gen::HeaderRecord[1];\n}");
v = staticinvoke <org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration: org.finos.legend.engine.external.shared.format.model.test.ModelTexts modelTextsFromContextData(org.finos.legend.engine.protocol.pure.v.model.context.PureModelContextData)>(v);
staticinvoke <org.junit.Assert: void assertEquals(java.lang.Object,java.lang.Object)>(v, v);
return;
}
public void testMultiSectionCsvWithBinding()
{
java.lang.Object[] v;
java.lang.String[] v;
org.finos.legend.engine.external.shared.format.model.test.ModelTexts v, v;
org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.ModelUnit v;
org.finos.legend.engine.protocol.pure.v.model.context.PureModelContextData v;
org.finos.legend.engine.external.format.flatdata.transformation.toModel.FlatDataToModelConfiguration v;
java.lang.String v, v, v;
org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration v;
org.finos.legend.engine.external.shared.format.model.test.ExternalSchemaSetGrammarBuilder v, v;
java.util.List v, v;
java.lang.Object v;
v := @this: org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration;
v = staticinvoke <org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration: org.finos.legend.engine.external.shared.format.model.test.ExternalSchemaSetGrammarBuilder newExternalSchemaSetGrammarBuilder(java.lang.String,java.lang.String)>("test::Simple", "FlatData");
v = virtualinvoke v.<org.finos.legend.engine.external.shared.format.model.test.ExternalSchemaSetGrammarBuilder: org.finos.legend.engine.external.shared.format.model.test.ExternalSchemaSetGrammarBuilder withSchemaText(java.lang.String)>("section header: DelimitedWithoutHeadings\n{\n  scope.forNumberOfLines: 1;\n  delimiter: \',\';\n\n  Record\n  {\n    Nationality {1} : STRING;\n  }\n}section data: DelimitedWithHeadings\n{\n  scope.untilEof;\n  delimiter: \',\';\n\n  Record\n  {\n    Name            : STRING;\n    Employed        : INTEGER(optional);\n    IQ              : INTEGER(optional);\n    \'Weight KG\'     : DECIMAL(optional);\n    \'DATE OF BIRTH\' : DATE;\n    TIME_OF_DEATH   : DATETIME;\n  }\n}");
v = virtualinvoke v.<org.finos.legend.engine.external.shared.format.model.test.ExternalSchemaSetGrammarBuilder: java.lang.String build()>();
v = specialinvoke v.<org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration: org.finos.legend.engine.external.format.flatdata.transformation.toModel.FlatDataToModelConfiguration config(java.lang.String,boolean,java.lang.String)>("test::gen", 1, "PeopleSet");
v = staticinvoke <org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration: org.finos.legend.engine.protocol.pure.v.model.context.PureModelContextData generateModel(java.lang.String,org.finos.legend.engine.external.shared.format.model.transformation.toModel.SchemaToModelConfiguration,boolean,java.lang.String)>(v, v, 1, "test::gen::TargetBinding");
v = staticinvoke <org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration: org.finos.legend.engine.external.shared.format.model.test.ModelTexts modelTextsFromString(java.lang.String)>(">>>test::gen::DataRecord\nClass test::gen::DataRecord extends meta::pure::metamodel::type::Any\n{\n  name: String[1];\n  employed: Integer[0..1];\n  iq: Integer[0..1];\n  weightKg: Float[0..1];\n  dateOfBirth: StrictDate[1];\n  timeOfDeath: DateTime[1];\n}\n\n>>>test::gen::HeaderRecord\nClass test::gen::HeaderRecord extends meta::pure::metamodel::type::Any\n{\n  nationality: String[1];\n}\n\n>>>test::gen::PeopleSet\nClass test::gen::PeopleSet extends meta::pure::metamodel::type::Any\n{\n}\n\n>>>test::gen::PeopleSet_DataRecord\nAssociation test::gen::PeopleSet_DataRecord\n{\n  peopleSet: test::gen::PeopleSet[1];\n  data: test::gen::DataRecord[*];\n}\n\n>>>test::gen::PeopleSet_HeaderRecord\nAssociation test::gen::PeopleSet_HeaderRecord\n{\n  peopleSet: test::gen::PeopleSet[1];\n  header: test::gen::HeaderRecord[1];\n}");
v = staticinvoke <org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration: org.finos.legend.engine.external.shared.format.model.test.ModelTexts modelTextsFromContextData(org.finos.legend.engine.protocol.pure.v.model.context.PureModelContextData)>(v);
staticinvoke <org.junit.Assert: void assertEquals(java.lang.Object,java.lang.Object)>(v, v);
v = virtualinvoke v.<org.finos.legend.engine.protocol.pure.v.model.context.PureModelContextData: java.util.List getElementsOfType(java.lang.Class)>(class "Lorg/finos/legend/engine/protocol/pure/v1/model/packageableElement/externalFormat/Binding;");
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(0);
v = virtualinvoke v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: java.lang.String getPath()>();
staticinvoke <org.junit.Assert: void assertEquals(java.lang.Object,java.lang.Object)>("test::gen::TargetBinding", v);
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: java.lang.String contentType>;
staticinvoke <org.junit.Assert: void assertEquals(java.lang.Object,java.lang.Object)>("application/x.flatdata", v);
v = newarray (java.lang.String)[5];
v[0] = "test::gen::PeopleSet";
v[1] = "test::gen::PeopleSet_HeaderRecord";
v[2] = "test::gen::PeopleSet_DataRecord";
v[3] = "test::gen::HeaderRecord";
v[4] = "test::gen::DataRecord";
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.ModelUnit modelUnit>;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.ModelUnit: java.util.List packageableElementIncludes>;
v = interfaceinvoke v.<java.util.List: java.lang.Object[] toArray()>();
staticinvoke <org.junit.Assert: void assertArrayEquals(java.lang.Object[],java.lang.Object[])>(v, v);
return;
}
private org.finos.legend.engine.external.format.flatdata.transformation.toModel.FlatDataToModelConfiguration config(java.lang.String, boolean)
{
org.finos.legend.engine.external.format.flatdata.transformation.toModel.FlatDataToModelConfiguration v;
java.lang.String v;
boolean v;
org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration v;
v := @this: org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration;
v := @parameter: java.lang.String;
v := @parameter: boolean;
v = specialinvoke v.<org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration: org.finos.legend.engine.external.format.flatdata.transformation.toModel.FlatDataToModelConfiguration config(java.lang.String,boolean,java.lang.String)>(v, v, null);
return v;
}
private org.finos.legend.engine.external.format.flatdata.transformation.toModel.FlatDataToModelConfiguration config(java.lang.String, boolean, java.lang.String)
{
org.finos.legend.engine.external.format.flatdata.transformation.toModel.FlatDataToModelConfiguration v;
java.lang.String v, v;
boolean v;
org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration v;
v := @this: org.finos.legend.engine.external.format.flatdata.transformation.toModel.TestFlatDataToModelGeneration;
v := @parameter: java.lang.String;
v := @parameter: boolean;
v := @parameter: java.lang.String;
v = new org.finos.legend.engine.external.format.flatdata.transformation.toModel.FlatDataToModelConfiguration;
specialinvoke v.<org.finos.legend.engine.external.format.flatdata.transformation.toModel.FlatDataToModelConfiguration: void <init>()>();
v.<org.finos.legend.engine.external.format.flatdata.transformation.toModel.FlatDataToModelConfiguration: java.lang.String format> = "FlatData";
v.<org.finos.legend.engine.external.format.flatdata.transformation.toModel.FlatDataToModelConfiguration: java.lang.String targetPackage> = v;
v.<org.finos.legend.engine.external.format.flatdata.transformation.toModel.FlatDataToModelConfiguration: boolean purifyNames> = v;
v.<org.finos.legend.engine.external.format.flatdata.transformation.toModel.FlatDataToModelConfiguration: java.lang.String schemaClassName> = v;
return v;
}
}