public class org.finos.legend.engine.plan.execution.result.TDSResultSerializationTest extends java.lang.Object
{
public org.finos.legend.engine.plan.execution.result.serialization.SerializationFormat format;
public java.lang.String expected;
public void <init>()
{
org.finos.legend.engine.plan.execution.result.TDSResultSerializationTest v;
v := @this: org.finos.legend.engine.plan.execution.result.TDSResultSerializationTest;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public static java.util.Collection serializationFormatsToTest()
{
java.lang.Object[] v, v, v, v, v, v;
org.finos.legend.engine.plan.execution.result.serialization.SerializationFormat v, v, v, v, v, v;
java.lang.Object[][] v;
java.util.List v;
v = newarray (java.lang.Object[])[6];
v = newarray (java.lang.Object)[2];
v = <org.finos.legend.engine.plan.execution.result.serialization.SerializationFormat: org.finos.legend.engine.plan.execution.result.serialization.SerializationFormat DEFAULT>;
v[0] = v;
v[1] = "{\"builder\":{\"_type\":\"tdsBuilder\",\"columns\":[{\"name\":\"stringCol\",\"type\":\"String\",\"enumMapping\":{}},{\"name\":\"intCol\",\"type\":\"Integer\",\"enumMapping\":{}},{\"name\":\"floatCol\",\"type\":\"Float\",\"enumMapping\":{}},{\"name\":\"boolCol\",\"type\":\"Boolean\",\"enumMapping\":{}},{\"name\":\"decimalCol\",\"type\":\"Decimal\",\"enumMapping\":{}},{\"name\":\"strictDateCol\",\"type\":\"StrictDate\",\"enumMapping\":{}},{\"name\":\"dateTimeCol\",\"type\":\"DateTime\",\"enumMapping\":{}}]},\"result\":{\"columns\":[\"stringCol\",\"intCol\",\"floatCol\",\"boolCol\",\"decimalCol\",\"strictDateCol\",\"dateTimeCol\"],\"rows\":[{\"values\":[\"Hello\",2,1.23,true,2.345,\"2020-01-01\",\"2020-01-01T01:01:01Z\"]},{\"values\":[\"World\",3,2.345,false,3.456,\"2021-02-01\",\"2021-02-01T01:01:01Z\"]},{\"values\":[null,null,null,null,null,null,null]}]},\"activities\":[{\"activity\":\"abc\"}]}";
v[0] = v;
v = newarray (java.lang.Object)[2];
v = <org.finos.legend.engine.plan.execution.result.serialization.SerializationFormat: org.finos.legend.engine.plan.execution.result.serialization.SerializationFormat RAW>;
v[0] = v;
v[1] = "{\"columns\":[{\"name\":\"stringCol\",\"type\":\"String\",\"enumMapping\":{}},{\"name\":\"intCol\",\"type\":\"Integer\",\"enumMapping\":{}},{\"name\":\"floatCol\",\"type\":\"Float\",\"enumMapping\":{}},{\"name\":\"boolCol\",\"type\":\"Boolean\",\"enumMapping\":{}},{\"name\":\"decimalCol\",\"type\":\"Decimal\",\"enumMapping\":{}},{\"name\":\"strictDateCol\",\"type\":\"StrictDate\",\"enumMapping\":{}},{\"name\":\"dateTimeCol\",\"type\":\"DateTime\",\"enumMapping\":{}}],\"rows\":[[\"Hello\",2,1.23,true,2.345,\"2020-01-01\",\"2020-01-01T01:01:01Z\"],[\"World\",3,2.345,false,3.456,\"2021-02-01\",\"2021-02-01T01:01:01Z\"],[null,null,null,null,null,null,null]],\"activities\":[{\"activity\":\"abc\"}]}";
v[1] = v;
v = newarray (java.lang.Object)[2];
v = <org.finos.legend.engine.plan.execution.result.serialization.SerializationFormat: org.finos.legend.engine.plan.execution.result.serialization.SerializationFormat CSV>;
v[0] = v;
v[1] = "stringCol,intCol,floatCol,boolCol,decimalCol,strictDateCol,dateTimeCol\r\nHello,2,1.23,true,2.345,2020-01-01,2020-01-01T01:01:01Z\r\nWorld,3,2.345,false,3.456,2021-02-01,2021-02-01T01:01:01Z\r\n,,,,,,\r\n";
v[2] = v;
v = newarray (java.lang.Object)[2];
v = <org.finos.legend.engine.plan.execution.result.serialization.SerializationFormat: org.finos.legend.engine.plan.execution.result.serialization.SerializationFormat CSV_TRANSFORMED>;
v[0] = v;
v[1] = "stringCol,intCol,floatCol,boolCol,decimalCol,strictDateCol,dateTimeCol\r\nHello,2,1.23,true,2.345,2020-01-01,2020-01-01T01:01:01Z\r\nWorld,3,2.345,false,3.456,2021-02-01,2021-02-01T01:01:01Z\r\n,,,,,,\r\n";
v[3] = v;
v = newarray (java.lang.Object)[2];
v = <org.finos.legend.engine.plan.execution.result.serialization.SerializationFormat: org.finos.legend.engine.plan.execution.result.serialization.SerializationFormat PURE>;
v[0] = v;
v[1] = "{\"builder\":{\"_type\":\"tdsBuilder\",\"columns\":[{\"name\":\"stringCol\",\"type\":\"String\",\"enumMapping\":{}},{\"name\":\"intCol\",\"type\":\"Integer\",\"enumMapping\":{}},{\"name\":\"floatCol\",\"type\":\"Float\",\"enumMapping\":{}},{\"name\":\"boolCol\",\"type\":\"Boolean\",\"enumMapping\":{}},{\"name\":\"decimalCol\",\"type\":\"Decimal\",\"enumMapping\":{}},{\"name\":\"strictDateCol\",\"type\":\"StrictDate\",\"enumMapping\":{}},{\"name\":\"dateTimeCol\",\"type\":\"DateTime\",\"enumMapping\":{}}]},\"result\":{\"columns\":[\"stringCol\",\"intCol\",\"floatCol\",\"boolCol\",\"decimalCol\",\"strictDateCol\",\"dateTimeCol\"],\"rows\":[{\"values\":[\"Hello\",2,1.23,true,2.345,\"2020-01-01\",\"2020-01-01T01:01:01Z\"]},{\"values\":[\"World\",3,2.345,false,3.456,\"2021-02-01\",\"2021-02-01T01:01:01Z\"]},{\"values\":[null,null,null,null,null,null,null]}]},\"activities\":[{\"activity\":\"abc\"}]}";
v[4] = v;
v = newarray (java.lang.Object)[2];
v = <org.finos.legend.engine.plan.execution.result.serialization.SerializationFormat: org.finos.legend.engine.plan.execution.result.serialization.SerializationFormat PURE_TDSOBJECT>;
v[0] = v;
v[1] = "[{\"stringCol\":\"Hello\",\"intCol\":2,\"floatCol\":1.23,\"boolCol\":true,\"decimalCol\":2.345,\"strictDateCol\":\"2020-01-01\",\"dateTimeCol\":\"2020-01-01T01:01:01Z\"},{\"stringCol\":\"World\",\"intCol\":3,\"floatCol\":2.345,\"boolCol\":false,\"decimalCol\":3.456,\"strictDateCol\":\"2021-02-01\",\"dateTimeCol\":\"2021-02-01T01:01:01Z\"},{\"stringCol\":null,\"intCol\":null,\"floatCol\":null,\"boolCol\":null,\"decimalCol\":null,\"strictDateCol\":null,\"dateTimeCol\":null}]";
v[5] = v;
v = staticinvoke <java.util.Arrays: java.util.List asList(java.lang.Object[])>(v);
return v;
}
public void testSerialization() throws java.io.IOException
{
org.finos.legend.engine.plan.execution.result.TDSResultSerializationTest v;
org.finos.legend.engine.plan.execution.result.serialization.Serializer v;
java.io.ByteArrayOutputStream v;
org.finos.legend.engine.plan.execution.result.serialization.SerializationFormat v;
java.lang.String v, v;
org.finos.legend.engine.plan.execution.result.TDSResult v;
v := @this: org.finos.legend.engine.plan.execution.result.TDSResultSerializationTest;
v = staticinvoke <org.finos.legend.engine.plan.execution.result.TDSResultSerializationTest: org.finos.legend.engine.plan.execution.result.TDSResult getTdsResult()>();
v = new java.io.ByteArrayOutputStream;
specialinvoke v.<java.io.ByteArrayOutputStream: void <init>()>();
v = v.<org.finos.legend.engine.plan.execution.result.TDSResultSerializationTest: org.finos.legend.engine.plan.execution.result.serialization.SerializationFormat format>;
v = virtualinvoke v.<org.finos.legend.engine.plan.execution.result.TDSResult: org.finos.legend.engine.plan.execution.result.serialization.Serializer getSerializer(org.finos.legend.engine.plan.execution.result.serialization.SerializationFormat)>(v);
virtualinvoke v.<org.finos.legend.engine.plan.execution.result.serialization.Serializer: void stream(java.io.OutputStream)>(v);
v = v.<org.finos.legend.engine.plan.execution.result.TDSResultSerializationTest: java.lang.String expected>;
v = virtualinvoke v.<java.io.ByteArrayOutputStream: java.lang.String toString()>();
staticinvoke <org.junit.Assert: void assertEquals(java.lang.Object,java.lang.Object)>(v, v);
return;
}
private static org.finos.legend.engine.plan.execution.result.TDSResult getTdsResult()
{
org.eclipse.collections.api.list.MutableList v, v, v, v, v, v;
java.math.BigDecimal v, v;
org.finos.legend.engine.protocol.pure.v.model.executionPlan.result.TDSColumn v, v, v, v, v, v, v;
java.lang.Long v, v;
org.finos.legend.engine.plan.execution.result.TDSResult v;
java.util.stream.Stream v;
org.finos.legend.engine.plan.dependencies.domain.date.PureDate v, v, v, v;
java.lang.Object[] v, v, v, v, v, v, v;
java.lang.Double v, v;
org.eclipse.collections.api.factory.list.MutableListFactory v, v, v, v, v, v;
java.lang.Object[][] v;
org.finos.legend.engine.plan.execution.result.TDSResultSerializationTest$1 v;
java.lang.Boolean v, v;
org.finos.legend.engine.protocol.pure.v.model.executionPlan.result.TDSColumn[] v;
org.finos.legend.engine.plan.execution.result.builder.tds.TDSBuilder v;
v = new org.finos.legend.engine.plan.execution.result.TDSResultSerializationTest$1;
specialinvoke v.<org.finos.legend.engine.plan.execution.result.TDSResultSerializationTest$1: void <init>()>();
v.<org.finos.legend.engine.plan.execution.result.ExecutionActivity: java.lang.String _type> = "testActivity";
v = <org.eclipse.collections.api.factory.Lists: org.eclipse.collections.api.factory.list.MutableListFactory mutable>;
v = newarray (org.finos.legend.engine.plan.execution.result.ExecutionActivity)[1];
v[0] = v;
v = interfaceinvoke v.<org.eclipse.collections.api.factory.list.MutableListFactory: org.eclipse.collections.api.list.MutableList 'with'(java.lang.Object[])>(v);
v = <org.eclipse.collections.api.factory.Lists: org.eclipse.collections.api.factory.list.MutableListFactory mutable>;
v = newarray (org.finos.legend.engine.protocol.pure.v.model.executionPlan.result.TDSColumn)[7];
v = new org.finos.legend.engine.protocol.pure.v.model.executionPlan.result.TDSColumn;
specialinvoke v.<org.finos.legend.engine.protocol.pure.v.model.executionPlan.result.TDSColumn: void <init>(java.lang.String,java.lang.String)>("stringCol", "String");
v[0] = v;
v = new org.finos.legend.engine.protocol.pure.v.model.executionPlan.result.TDSColumn;
specialinvoke v.<org.finos.legend.engine.protocol.pure.v.model.executionPlan.result.TDSColumn: void <init>(java.lang.String,java.lang.String)>("intCol", "Integer");
v[1] = v;
v = new org.finos.legend.engine.protocol.pure.v.model.executionPlan.result.TDSColumn;
specialinvoke v.<org.finos.legend.engine.protocol.pure.v.model.executionPlan.result.TDSColumn: void <init>(java.lang.String,java.lang.String)>("floatCol", "Float");
v[2] = v;
v = new org.finos.legend.engine.protocol.pure.v.model.executionPlan.result.TDSColumn;
specialinvoke v.<org.finos.legend.engine.protocol.pure.v.model.executionPlan.result.TDSColumn: void <init>(java.lang.String,java.lang.String)>("boolCol", "Boolean");
v[3] = v;
v = new org.finos.legend.engine.protocol.pure.v.model.executionPlan.result.TDSColumn;
specialinvoke v.<org.finos.legend.engine.protocol.pure.v.model.executionPlan.result.TDSColumn: void <init>(java.lang.String,java.lang.String)>("decimalCol", "Decimal");
v[4] = v;
v = new org.finos.legend.engine.protocol.pure.v.model.executionPlan.result.TDSColumn;
specialinvoke v.<org.finos.legend.engine.protocol.pure.v.model.executionPlan.result.TDSColumn: void <init>(java.lang.String,java.lang.String)>("strictDateCol", "StrictDate");
v[5] = v;
v = new org.finos.legend.engine.protocol.pure.v.model.executionPlan.result.TDSColumn;
specialinvoke v.<org.finos.legend.engine.protocol.pure.v.model.executionPlan.result.TDSColumn: void <init>(java.lang.String,java.lang.String)>("dateTimeCol", "DateTime");
v[6] = v;
v = interfaceinvoke v.<org.eclipse.collections.api.factory.list.MutableListFactory: org.eclipse.collections.api.list.MutableList 'with'(java.lang.Object[])>(v);
v = <org.eclipse.collections.api.factory.Lists: org.eclipse.collections.api.factory.list.MutableListFactory mutable>;
v = newarray (java.lang.Object)[7];
v[0] = "Hello";
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(2L);
v[1] = v;
v = staticinvoke <java.lang.Double: java.lang.Double valueOf(double)>(1.23);
v[2] = v;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(1);
v[3] = v;
v = new java.math.BigDecimal;
specialinvoke v.<java.math.BigDecimal: void <init>(java.lang.String)>("2.345");
v[4] = v;
v = staticinvoke <org.finos.legend.engine.plan.dependencies.domain.date.PureDate: org.finos.legend.engine.plan.dependencies.domain.date.PureDate newPureDate(int,int,int)>(2020, 1, 1);
v[5] = v;
v = staticinvoke <org.finos.legend.engine.plan.dependencies.domain.date.PureDate: org.finos.legend.engine.plan.dependencies.domain.date.PureDate newPureDate(int,int,int,int,int,int)>(2020, 1, 1, 1, 1, 1);
v[6] = v;
v = interfaceinvoke v.<org.eclipse.collections.api.factory.list.MutableListFactory: org.eclipse.collections.api.list.MutableList 'with'(java.lang.Object[])>(v);
v = <org.eclipse.collections.api.factory.Lists: org.eclipse.collections.api.factory.list.MutableListFactory mutable>;
v = newarray (java.lang.Object)[7];
v[0] = "World";
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(3L);
v[1] = v;
v = staticinvoke <java.lang.Double: java.lang.Double valueOf(double)>(2.345);
v[2] = v;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(0);
v[3] = v;
v = new java.math.BigDecimal;
specialinvoke v.<java.math.BigDecimal: void <init>(java.lang.String)>("3.456");
v[4] = v;
v = staticinvoke <org.finos.legend.engine.plan.dependencies.domain.date.PureDate: org.finos.legend.engine.plan.dependencies.domain.date.PureDate newPureDate(int,int,int)>(2021, 2, 1);
v[5] = v;
v = staticinvoke <org.finos.legend.engine.plan.dependencies.domain.date.PureDate: org.finos.legend.engine.plan.dependencies.domain.date.PureDate newPureDate(int,int,int,int,int,int)>(2021, 2, 1, 1, 1, 1);
v[6] = v;
v = interfaceinvoke v.<org.eclipse.collections.api.factory.list.MutableListFactory: org.eclipse.collections.api.list.MutableList 'with'(java.lang.Object[])>(v);
v = <org.eclipse.collections.api.factory.Lists: org.eclipse.collections.api.factory.list.MutableListFactory mutable>;
v = newarray (java.lang.Object)[7];
v[0] = null;
v[1] = null;
v[2] = null;
v[3] = null;
v[4] = null;
v[5] = null;
v[6] = null;
v = interfaceinvoke v.<org.eclipse.collections.api.factory.list.MutableListFactory: org.eclipse.collections.api.list.MutableList 'with'(java.lang.Object[])>(v);
v = new org.finos.legend.engine.plan.execution.result.TDSResult;
v = <org.eclipse.collections.api.factory.Lists: org.eclipse.collections.api.factory.list.MutableListFactory mutable>;
v = newarray (java.lang.Object[])[3];
v = interfaceinvoke v.<java.util.List: java.lang.Object[] toArray()>();
v[0] = v;
v = interfaceinvoke v.<java.util.List: java.lang.Object[] toArray()>();
v[1] = v;
v = interfaceinvoke v.<java.util.List: java.lang.Object[] toArray()>();
v[2] = v;
v = interfaceinvoke v.<org.eclipse.collections.api.factory.list.MutableListFactory: org.eclipse.collections.api.list.MutableList 'with'(java.lang.Object[])>(v);
v = interfaceinvoke v.<org.eclipse.collections.api.list.MutableList: java.util.stream.Stream stream()>();
v = new org.finos.legend.engine.plan.execution.result.builder.tds.TDSBuilder;
specialinvoke v.<org.finos.legend.engine.plan.execution.result.builder.tds.TDSBuilder: void <init>(java.util.List)>(v);
specialinvoke v.<org.finos.legend.engine.plan.execution.result.TDSResult: void <init>(java.util.stream.Stream,org.finos.legend.engine.plan.execution.result.builder.tds.TDSBuilder,java.util.List,java.lang.String)>(v, v, v, null);
return v;
}
}