Search in sources :

Example 1 with Portable

use of com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.Method.Portable in project hazelcast by hazelcast.

the class DefaultPortableReaderSpecTest method fromPortableArrayAnyToPortableArrayAnyToPrimitiveScenarios.

// ----------------------------------------------------------------------------------------------------------
// from PORTABLE_ARRAY[any] via PORTABLE_ARRAY[any] to further PRIMITIVE access
// ----------------------------------------------------------------------------------------------------------
private static void fromPortableArrayAnyToPortableArrayAnyToPrimitiveScenarios(List<Object[]> result) {
    String p = "fromPortableArrayAnyToPortableArrayAnyToPrimitiveScenarios";
    // =============================================
    // INPUT mixed
    // =============================================
    PrimitivePortable p1 = prim(1, NONE);
    PrimitivePortable p10 = prim(10, FULL);
    PrimitivePortable p20 = prim(20, FULL);
    NestedGroupPortable input = nested(new Portable[] { new GroupPortable(new Portable[0]), group(p1, p10), new GroupPortable((Portable[]) null), group(new PrimitivePortable[] { p20 }) });
    Class failure = IllegalArgumentException.class;
    result.addAll(asList(scenario(input, failure, ByteArray, "portables[any].portables[any].byte_", p), scenario(input, failure, ShortArray, "portables[any].portables[any].short_", p), scenario(input, failure, IntArray, "portables[any].portables[any].int_", p), scenario(input, failure, LongArray, "portables[any].portables[any].long_", p), scenario(input, failure, CharArray, "portables[any].portables[any].char_", p), scenario(input, failure, FloatArray, "portables[any].portables[any].float_", p), scenario(input, failure, DoubleArray, "portables[any].portables[any].double_", p), scenario(input, failure, BooleanArray, "portables[any].portables[any].boolean_", p)));
    List expectedUtfArray = list(null, p1.string_, p10.string_, null, p20.string_);
    result.add(scenario(input, expectedUtfArray, UTFArray, "portables[any].portables[any].string_", p));
    result.addAll(asList(scenario(input, list(null, p1.byte_, p10.byte_, null, p20.byte_), Generic, "portables[any].portables[any].byte_", p), scenario(input, list(null, p1.short_, p10.short_, null, p20.short_), Generic, "portables[any].portables[any].short_", p), scenario(input, list(null, p1.int_, p10.int_, null, p20.int_), Generic, "portables[any].portables[any].int_", p), scenario(input, list(null, p1.long_, p10.long_, null, p20.long_), Generic, "portables[any].portables[any].long_", p), scenario(input, list(null, p1.char_, p10.char_, null, p20.char_), Generic, "portables[any].portables[any].char_", p), scenario(input, list(null, p1.float_, p10.float_, null, p20.float_), Generic, "portables[any].portables[any].float_", p), scenario(input, list(null, p1.double_, p10.double_, null, p20.double_), Generic, "portables[any].portables[any].double_", p), scenario(input, list(null, p1.boolean_, p10.boolean_, null, p20.boolean_), Generic, "portables[any].portables[any].boolean_", p), scenario(input, list(null, p1.string_, p10.string_, null, p20.string_), Generic, "portables[any].portables[any].string_", p)));
    // =============================================
    // INPUT empty
    // =============================================
    NestedGroupPortable inputEmpty = nested(new Portable[0]);
    result.addAll(asList(scenario(inputEmpty, null, ByteArray, "portables[any].portables[any].byte_", p), scenario(inputEmpty, null, ShortArray, "portables[any].portables[any].short_", p), scenario(inputEmpty, null, IntArray, "portables[any].portables[any].int_", p), scenario(inputEmpty, null, LongArray, "portables[any].portables[any].long_", p), scenario(inputEmpty, null, CharArray, "portables[any].portables[any].char_", p), scenario(inputEmpty, null, FloatArray, "portables[any].portables[any].float_", p), scenario(inputEmpty, null, DoubleArray, "portables[any].portables[any].double_", p), scenario(inputEmpty, null, BooleanArray, "portables[any].portables[any].boolean_", p), scenario(inputEmpty, null, UTFArray, "portables[any].portables[any].string_", p)));
    result.addAll(asList(scenario(inputEmpty, null, Generic, "portables[any].portables[any].byte_", p), scenario(inputEmpty, null, Generic, "portables[any].portables[any].short_", p), scenario(inputEmpty, null, Generic, "portables[any].portables[any].int_", p), scenario(inputEmpty, null, Generic, "portables[any].portables[any].long_", p), scenario(inputEmpty, null, Generic, "portables[any].portables[any].char_", p), scenario(inputEmpty, null, Generic, "portables[any].portables[any].float_", p), scenario(inputEmpty, null, Generic, "portables[any].portables[any].double_", p), scenario(inputEmpty, null, Generic, "portables[any].portables[any].boolean_", p), scenario(inputEmpty, null, Generic, "portables[any].portables[any].string_", p)));
    // =============================================
    // INPUT null
    // =============================================
    NestedGroupPortable inputNull = nested((Portable[]) null);
    result.addAll(asList(scenario(inputNull, null, ByteArray, "portables[any].portables[any].byte_", p), scenario(inputNull, null, ShortArray, "portables[any].portables[any].short_", p), scenario(inputNull, null, IntArray, "portables[any].portables[any].int_", p), scenario(inputNull, null, LongArray, "portables[any].portables[any].long_", p), scenario(inputNull, null, CharArray, "portables[any].portables[any].char_", p), scenario(inputNull, null, FloatArray, "portables[any].portables[any].float_", p), scenario(inputNull, null, DoubleArray, "portables[any].portables[any].double_", p), scenario(inputNull, null, BooleanArray, "portables[any].portables[any].boolean_", p), scenario(inputNull, null, UTFArray, "portables[any].portables[any].string_", p)));
    result.addAll(asList(scenario(inputNull, null, Generic, "portables[any].portables[any].byte_", p), scenario(inputNull, null, Generic, "portables[any].portables[any].short_", p), scenario(inputNull, null, Generic, "portables[any].portables[any].int_", p), scenario(inputNull, null, Generic, "portables[any].portables[any].long_", p), scenario(inputNull, null, Generic, "portables[any].portables[any].char_", p), scenario(inputNull, null, Generic, "portables[any].portables[any].float_", p), scenario(inputNull, null, Generic, "portables[any].portables[any].double_", p), scenario(inputNull, null, Generic, "portables[any].portables[any].boolean_", p), scenario(inputNull, null, Generic, "portables[any].portables[any].string_", p)));
}
Also used : GroupPortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.GroupPortable) Portable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.Method.Portable) Portable(com.hazelcast.nio.serialization.Portable) PrimitivePortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.PrimitivePortable) NestedGroupPortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.NestedGroupPortable) PrimitivePortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.PrimitivePortable) NestedGroupPortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.NestedGroupPortable) Arrays.asList(java.util.Arrays.asList) List(java.util.List) ArrayList(java.util.ArrayList) GroupPortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.GroupPortable) NestedGroupPortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.NestedGroupPortable)

Example 2 with Portable

use of com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.Method.Portable in project hazelcast by hazelcast.

the class DefaultPortableReaderSpecTest method fromPortableToPortableArrayToPrimitiveScenarios.

// ----------------------------------------------------------------------------------------------------------
// from PORTABLE via PORTABLE_ARRAY to further access
// ----------------------------------------------------------------------------------------------------------
private static void fromPortableToPortableArrayToPrimitiveScenarios(List<Object[]> result) {
    // FULLy initialised primitive objects accessed from portable stored in array
    String p = "fromPortableToPortableToPrimitiveScenarios";
    NestedGroupPortable nestedFullGroup = nested(group(prim(1, FULL), prim(10, FULL), prim(100, FULL)));
    result.addAll(asList(scenario(nestedFullGroup, ((GroupPortable) (nestedFullGroup.portable)).portables, PortableArray, "portable.portables", p), scenario(nestedFullGroup, ((GroupPortable) (nestedFullGroup.portable)).portables, PortableArray, "portable.portables[any]", p), scenario(nestedFullGroup, ((GroupPortable) (nestedFullGroup.portable)).portables[0], Portable, "portable.portables[0]", p), scenario(nestedFullGroup, ((GroupPortable) (nestedFullGroup.portable)).portables[1], Portable, "portable.portables[1]", p), scenario(nestedFullGroup, ((GroupPortable) (nestedFullGroup.portable)).portables[2], Portable, "portable.portables[2]", p), scenario(nestedFullGroup, null, Portable, "portable.portables[12]", p)));
    result.addAll(asList(scenario(nestedFullGroup, ((GroupPortable) (nestedFullGroup.portable)).portables, Generic, "portable.portables", p), scenario(nestedFullGroup, ((GroupPortable) (nestedFullGroup.portable)).portables, Generic, "portable.portables[any]", p), scenario(nestedFullGroup, ((GroupPortable) (nestedFullGroup.portable)).portables[0], Generic, "portable.portables[0]", p), scenario(nestedFullGroup, ((GroupPortable) (nestedFullGroup.portable)).portables[1], Generic, "portable.portables[1]", p), scenario(nestedFullGroup, ((GroupPortable) (nestedFullGroup.portable)).portables[2], Generic, "portable.portables[2]", p), scenario(nestedFullGroup, null, Generic, "portable.portables[12]", p)));
    result.addAll(expandPortableArrayPrimitiveScenario(nestedFullGroup, (GroupPortable) nestedFullGroup.portable, "portable.portableArray.primitiveUTF_", p));
    NestedGroupPortable nestedFullEmptyNullGroup = nested(group(prim(1, FULL), prim(10, NONE), prim(100, NULL)));
    result.addAll(expandPortableArrayPrimitiveScenario(nestedFullEmptyNullGroup, (GroupPortable) nestedFullEmptyNullGroup.portable, "portable.portableArray.primitiveUTF_", p));
    // empty or null portable array de-referenced further
    NestedGroupPortable nestedNullArrayGroup = nested(new GroupPortable((Portable[]) null));
    result.addAll(asList(scenario(nestedNullArrayGroup, null, PortableArray, "portable.portables", p), scenario(nestedNullArrayGroup, null, PortableArray, "portable.portables[any]", p), scenario(nestedNullArrayGroup, null, Portable, "portable.portables[0]", p), scenario(nestedNullArrayGroup, null, Portable, "portable.portables[1]", p), scenario(nestedNullArrayGroup, null, Portable, "portable.portables[2]", p)));
    result.addAll(asList(scenario(nestedNullArrayGroup, null, Generic, "portable.portables", p), scenario(nestedNullArrayGroup, null, Generic, "portable.portables[any]", p), scenario(nestedNullArrayGroup, null, Generic, "portable.portables[0]", p), scenario(nestedNullArrayGroup, null, Generic, "portable.portables[1]", p), scenario(nestedNullArrayGroup, null, Generic, "portable.portables[2]", p)));
    result.addAll(expandPortableArrayPrimitiveScenario(nestedNullArrayGroup, (GroupPortable) nestedNullArrayGroup.portable, "portable.portableArray.primitiveUTF_", p));
    NestedGroupPortable nestedEmptyArrayGroup = nested(new GroupPortable(new Portable[0]));
    result.addAll(asList(scenario(nestedEmptyArrayGroup, new Portable[0], PortableArray, "portable.portables", p), scenario(nestedEmptyArrayGroup, null, PortableArray, "portable.portables[any]", p), scenario(nestedEmptyArrayGroup, null, Portable, "portable.portables[0]", p), scenario(nestedEmptyArrayGroup, null, Portable, "portable.portables[1]", p), scenario(nestedEmptyArrayGroup, null, Portable, "portable.portables[2]", p)));
    result.addAll(asList(scenario(nestedEmptyArrayGroup, new Portable[0], Generic, "portable.portables", p), scenario(nestedEmptyArrayGroup, null, Generic, "portable.portables[any]", p), scenario(nestedEmptyArrayGroup, null, Generic, "portable.portables[0]", p), scenario(nestedEmptyArrayGroup, null, Generic, "portable.portables[1]", p), scenario(nestedEmptyArrayGroup, null, Generic, "portable.portables[2]", p)));
    result.addAll(expandPortableArrayPrimitiveScenario(nestedEmptyArrayGroup, (GroupPortable) nestedEmptyArrayGroup.portable, "portable.portableArray.primitiveUTF_", p));
    NestedGroupPortable nestedEmpty = nested(new GroupPortable[0]);
    result.addAll(asList(scenario(nestedEmpty, null, PortableArray, "portable.portables", p), scenario(nestedEmpty, null, PortableArray, "portable.portables[any]", p), scenario(nestedEmpty, null, Portable, "portable.portables[0]", p), scenario(nestedEmpty, null, Portable, "portable.portables[1]", p), scenario(nestedEmpty, null, Portable, "portable.portables[2]", p)));
    result.addAll(asList(scenario(nestedEmpty, null, Generic, "portable.portables", p), scenario(nestedEmpty, null, Generic, "portable.portables[any]", p), scenario(nestedEmpty, null, Generic, "portable.portables[0]", p), scenario(nestedEmpty, null, Generic, "portable.portables[1]", p), scenario(nestedEmpty, null, Generic, "portable.portables[2]", p)));
    result.addAll(expandPortableArrayPrimitiveScenario(nestedEmpty, (GroupPortable) nestedEmpty.portable, "portable.portableArray.primitiveUTF_", p));
    NestedGroupPortable nestedNull = nested((GroupPortable[]) null);
    result.addAll(asList(scenario(nestedNull, null, PortableArray, "portable.portables", p), scenario(nestedNull, null, PortableArray, "portable.portables[any]", p), scenario(nestedNull, null, Portable, "portable.portables[0]", p), scenario(nestedNull, null, Portable, "portable.portables[1]", p), scenario(nestedNull, null, Portable, "portable.portables[2]", p)));
    result.addAll(asList(scenario(nestedNull, null, Generic, "portable.portables", p), scenario(nestedNull, null, Generic, "portable.portables[any]", p), scenario(nestedNull, null, Generic, "portable.portables[0]", p), scenario(nestedNull, null, Generic, "portable.portables[1]", p), scenario(nestedNull, null, Generic, "portable.portables[2]", p)));
    result.addAll(expandPortableArrayPrimitiveScenario(nestedNull, (GroupPortable) nestedNull.portable, "portable.portableArray.primitiveUTF_", p));
}
Also used : GroupPortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.GroupPortable) Portable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.Method.Portable) Portable(com.hazelcast.nio.serialization.Portable) PrimitivePortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.PrimitivePortable) NestedGroupPortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.NestedGroupPortable) NestedGroupPortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.NestedGroupPortable) GroupPortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.GroupPortable) NestedGroupPortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.NestedGroupPortable)

Example 3 with Portable

use of com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.Method.Portable in project hazelcast by hazelcast.

the class DefaultPortableReaderSpecTest method fromPortableArrayToPortableArrayAnyScenarios.

// ----------------------------------------------------------------------------------------------------------
// from PORTABLE_ARRAY to PORTABLE_ARRAY access + further
// ----------------------------------------------------------------------------------------------------------
private static void fromPortableArrayToPortableArrayAnyScenarios(List<Object[]> result) {
    String p = "fromPortableArrayToPortableArrayAnyScenarios";
    NestedGroupPortable anyGroup = nested(new Portable[] { group(prim(1, FULL), prim(10, NONE), prim(50, NULL)), group(prim(2, FULL), prim(20, NONE), prim(80, NULL)) });
    result.addAll(asList(scenario(anyGroup, ((GroupPortable) (anyGroup.portables[0])).portables, PortableArray, "portables[0].portables[any]", p), scenario(anyGroup, new Portable[] { prim(1, FULL), prim(2, FULL) }, PortableArray, "portables[any].portables[0]", p), scenario(anyGroup, new Portable[] { prim(10, FULL), prim(20, FULL) }, PortableArray, "portables[any].portables[1]", p), scenario(anyGroup, new Portable[] { prim(50, FULL), prim(80, FULL) }, PortableArray, "portables[any].portables[2]", p), scenario(anyGroup, new Portable[] { prim(1, FULL), prim(10, FULL), prim(50, FULL), prim(2, FULL), prim(20, FULL), prim(80, FULL) }, PortableArray, "portables[any].portables[any]", p)));
    result.addAll(asList(scenario(anyGroup, ((GroupPortable) (anyGroup.portables[0])).portables, Generic, "portables[0].portables[any]", p), scenario(anyGroup, new Portable[] { prim(1, FULL), prim(2, FULL) }, Generic, "portables[any].portables[0]", p), scenario(anyGroup, new Portable[] { prim(10, FULL), prim(20, FULL) }, Generic, "portables[any].portables[1]", p), scenario(anyGroup, new Portable[] { prim(50, FULL), prim(80, FULL) }, Generic, "portables[any].portables[2]", p), scenario(anyGroup, new Portable[] { prim(1, FULL), prim(10, FULL), prim(50, FULL), prim(2, FULL), prim(20, FULL), prim(80, FULL) }, Generic, "portables[any].portables[any]", p)));
    NestedGroupPortable nestedEmptyArrayGroup = nested(new Portable[] { new GroupPortable(new Portable[0]), group(prim(1, FULL), prim(10, NONE), prim(50, NULL)) });
    result.addAll(asList(scenario(nestedEmptyArrayGroup, null, PortableArray, "portables[0].portables[any]", p), scenario(nestedEmptyArrayGroup, new Portable[] { null, prim(1, FULL) }, PortableArray, "portables[any].portables[0]", p), scenario(nestedEmptyArrayGroup, new Portable[] { null, prim(10, FULL) }, PortableArray, "portables[any].portables[1]", p), scenario(nestedEmptyArrayGroup, new Portable[] { null, prim(50, FULL) }, PortableArray, "portables[any].portables[2]", p), scenario(nestedEmptyArrayGroup, new Portable[] { null, prim(1, FULL), prim(10, FULL), prim(50, FULL) }, PortableArray, "portables[any].portables[any]", p)));
    result.addAll(asList(scenario(nestedEmptyArrayGroup, null, Generic, "portables[0].portables[any]", p), scenario(nestedEmptyArrayGroup, new Portable[] { null, prim(1, FULL) }, Generic, "portables[any].portables[0]", p), scenario(nestedEmptyArrayGroup, new Portable[] { null, prim(10, FULL) }, Generic, "portables[any].portables[1]", p), scenario(nestedEmptyArrayGroup, new Portable[] { null, prim(50, FULL) }, Generic, "portables[any].portables[2]", p), scenario(nestedEmptyArrayGroup, new Portable[] { null, prim(1, FULL), prim(10, FULL), prim(50, FULL) }, Generic, "portables[any].portables[any]", p)));
    NestedGroupPortable nestedNullArrayGroup = nested(new Portable[] { new GroupPortable((Portable[]) null), group(prim(1, FULL), prim(10, NONE), prim(50, NULL)) });
    result.addAll(asList(scenario(nestedNullArrayGroup, null, PortableArray, "portables[0].portables[any]", p), scenario(nestedNullArrayGroup, new Portable[] { null, prim(1, FULL) }, PortableArray, "portables[any].portables[0]", p), scenario(nestedNullArrayGroup, new Portable[] { null, prim(10, FULL) }, PortableArray, "portables[any].portables[1]", p), scenario(nestedNullArrayGroup, new Portable[] { null, prim(50, FULL) }, PortableArray, "portables[any].portables[2]", p), scenario(nestedNullArrayGroup, new Portable[] { null, prim(1, FULL), prim(10, FULL), prim(50, FULL) }, PortableArray, "portables[any].portables[any]", p)));
    result.addAll(asList(scenario(nestedNullArrayGroup, null, PortableArray, "portables[0].portables[any]", p), scenario(nestedNullArrayGroup, new Portable[] { null, prim(1, FULL) }, Generic, "portables[any].portables[0]", p), scenario(nestedNullArrayGroup, new Portable[] { null, prim(10, FULL) }, Generic, "portables[any].portables[1]", p), scenario(nestedNullArrayGroup, new Portable[] { null, prim(50, FULL) }, Generic, "portables[any].portables[2]", p), scenario(nestedNullArrayGroup, new Portable[] { null, prim(1, FULL), prim(10, FULL), prim(50, FULL) }, Generic, "portables[any].portables[any]", p)));
}
Also used : GroupPortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.GroupPortable) Portable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.Method.Portable) Portable(com.hazelcast.nio.serialization.Portable) PrimitivePortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.PrimitivePortable) NestedGroupPortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.NestedGroupPortable) NestedGroupPortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.NestedGroupPortable) GroupPortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.GroupPortable) NestedGroupPortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.NestedGroupPortable)

Example 4 with Portable

use of com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.Method.Portable in project hazelcast by hazelcast.

the class DefaultPortableReaderSpecTest method fromPortableArrayToPrimitiveScenarios.

// ----------------------------------------------------------------------------------------------------------
// from PORTABLE-ARRAY to primitive and primitive-array access
// ----------------------------------------------------------------------------------------------------------
private static void fromPortableArrayToPrimitiveScenarios(List<Object[]> result) {
    String p = "fromPortableArrayToPrimitiveScenarios";
    // FULLy initialised primitive objects accessed from portable stored in array
    GroupPortable fullGroupVarious = group(prim(1, FULL), prim(10, FULL), prim(100, FULL));
    result.addAll(expandPortableArrayPrimitiveScenario(fullGroupVarious, fullGroupVarious, "portableArray.primitiveUTF_", p));
    GroupPortable fullEmptyNullGroup = group(prim(1, FULL), prim(10, NONE), prim(100, NULL));
    result.addAll(expandPortableArrayPrimitiveScenario(fullEmptyNullGroup, fullEmptyNullGroup, "portableArray.primitiveUTF_", p));
    // empty or null portable array de-referenced further
    GroupPortable nullArrayGroup = new GroupPortable((Portable[]) null);
    result.addAll(expandPortableArrayPrimitiveScenario(nullArrayGroup, nullArrayGroup, "portableArray.primitiveUTF_", p));
    GroupPortable emptyArrayGroup = new GroupPortable(new Portable[0]);
    result.addAll(expandPortableArrayPrimitiveScenario(emptyArrayGroup, emptyArrayGroup, "portableArray.primitiveUTF_", p));
    // FULLy initialised primitive arrays accessed from portable stored in array
    GroupPortable fullGroup = group(prim(FULL), prim(FULL), prim(FULL));
    result.addAll(expandPrimitiveArrayScenario(fullGroup, prim(FULL), "portables[0].primitiveArray", p));
    result.addAll(expandPrimitiveArrayScenario(fullGroup, prim(FULL), "portables[1].primitiveArray", p));
    result.addAll(expandPrimitiveArrayScenario(fullGroup, prim(FULL), "portables[2].primitiveArray", p));
    // EMPTY primitive arrays accessed from portable stored in array
    GroupPortable noneGroup = group(prim(NONE), prim(NONE), prim(NONE));
    result.addAll(expandPrimitiveArrayScenario(noneGroup, prim(NONE), "portables[0].primitiveArray", p));
    result.addAll(expandPrimitiveArrayScenario(noneGroup, prim(NONE), "portables[1].primitiveArray", p));
    result.addAll(expandPrimitiveArrayScenario(noneGroup, prim(NONE), "portables[2].primitiveArray", p));
    // NULL primitive arrays accessed from portable stored in array
    GroupPortable nullGroup = group(prim(NULL), prim(NULL), prim(NULL));
    result.addAll(expandPrimitiveArrayScenario(nullGroup, prim(NULL), "portables[0].primitiveArray", p));
    result.addAll(expandPrimitiveArrayScenario(nullGroup, prim(NULL), "portables[1].primitiveArray", p));
    result.addAll(expandPrimitiveArrayScenario(nullGroup, prim(NULL), "portables[2].primitiveArray", p));
    // EMPTY portable array -> de-referenced further for primitive access
    result.addAll(expandPrimitiveScenario(emptyArrayGroup, IllegalArgumentException.class, "portables[0].primitive_", p));
    result.addAll(expandPrimitiveScenario(emptyArrayGroup, IllegalArgumentException.class, "portables[1].primitive_", p));
    result.addAll(expandPrimitiveScenario(emptyArrayGroup, IllegalArgumentException.class, "portables[2].primitive_", p));
    result.add(scenario(emptyArrayGroup, null, UTF, "portables[0].string_", p));
    result.add(scenario(emptyArrayGroup, null, UTF, "portables[1].string_", p));
    result.add(scenario(emptyArrayGroup, null, Generic, "portables[0].string_", p));
    result.add(scenario(emptyArrayGroup, null, Generic, "portables[1].string_", p));
    // EMPTY portable array -> de-referenced further for array access
    result.addAll(expandPrimitiveArrayScenario(emptyArrayGroup, null, "portables[0].primitiveArray", p));
    result.addAll(expandPrimitiveArrayScenario(emptyArrayGroup, null, "portables[1].primitiveArray", p));
    result.addAll(expandPrimitiveArrayScenario(emptyArrayGroup, null, "portables[2].primitiveArray", p));
    // NULL portable array -> de-referenced further for primitive access
    result.addAll(expandPrimitiveScenario(nullArrayGroup, IllegalArgumentException.class, "portables[0].primitive_", p));
    result.addAll(expandPrimitiveScenario(nullArrayGroup, IllegalArgumentException.class, "portables[1].primitive_", p));
    result.addAll(expandPrimitiveScenario(nullArrayGroup, IllegalArgumentException.class, "portables[2].primitive_", p));
    result.add(scenario(nullArrayGroup, null, UTF, "portables[0].string_", p));
    result.add(scenario(nullArrayGroup, null, UTF, "portables[1].string_", p));
    result.add(scenario(nullArrayGroup, null, Generic, "portables[0].string_", p));
    result.add(scenario(nullArrayGroup, null, Generic, "portables[1].string_", p));
    // EMPTY portable array -> de-referenced further for array access
    result.addAll(expandPrimitiveArrayScenario(nullArrayGroup, null, "portables[0].primitiveArray", p));
    result.addAll(expandPrimitiveArrayScenario(nullArrayGroup, null, "portables[1].primitiveArray", p));
    result.addAll(expandPrimitiveArrayScenario(nullArrayGroup, null, "portables[2].primitiveArray", p));
}
Also used : GroupPortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.GroupPortable) Portable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.Method.Portable) Portable(com.hazelcast.nio.serialization.Portable) PrimitivePortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.PrimitivePortable) NestedGroupPortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.NestedGroupPortable) GroupPortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.GroupPortable) NestedGroupPortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.NestedGroupPortable)

Example 5 with Portable

use of com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.Method.Portable in project hazelcast by hazelcast.

the class DefaultPortableReaderSpecTest method fromPortableArrayToPortableArrayToPrimitiveScenarios.

// ----------------------------------------------------------------------------------------------------------
// from PORTABLE_ARRAY to PORTABLE_ARRAY access + further
// ----------------------------------------------------------------------------------------------------------
private static void fromPortableArrayToPortableArrayToPrimitiveScenarios(List<Object[]> result) {
    String p = "fromPortableArrayToPortableArrayToPrimitiveScenarios";
    // FULLy initialised primitive objects accessed from portable stored in array
    NestedGroupPortable nestedFullGroup = nested(group(prim(1, FULL), prim(10, FULL), prim(100, FULL)));
    result.addAll(asList(scenario(nestedFullGroup, ((GroupPortable) (nestedFullGroup.portables[0])).portables, PortableArray, "portables[0].portables", p), scenario(nestedFullGroup, ((GroupPortable) (nestedFullGroup.portables[0])).portables, PortableArray, "portables[0].portables[any]", p), scenario(nestedFullGroup, new Portable[] { prim(1, FULL) }, PortableArray, "portables[any].portables[0]", p), scenario(nestedFullGroup, ((GroupPortable) (nestedFullGroup.portables[0])).portables, PortableArray, "portables[any].portables[any]", p), scenario(nestedFullGroup, ((GroupPortable) (nestedFullGroup.portables[0])).portables[0], Portable, "portables[0].portables[0]", p), scenario(nestedFullGroup, ((GroupPortable) (nestedFullGroup.portables[0])).portables[1], Portable, "portables[0].portables[1]", p), scenario(nestedFullGroup, ((GroupPortable) (nestedFullGroup.portables[0])).portables[2], Portable, "portables[0].portables[2]", p), scenario(nestedFullGroup, null, Portable, "portables[0].portables[12]", p)));
    result.addAll(asList(scenario(nestedFullGroup, ((GroupPortable) (nestedFullGroup.portables[0])).portables, Generic, "portables[0].portables", p), scenario(nestedFullGroup, ((GroupPortable) (nestedFullGroup.portables[0])).portables, Generic, "portables[0].portables[any]", p), scenario(nestedFullGroup, new Portable[] { prim(1, FULL) }, Generic, "portables[any].portables[0]", p), scenario(nestedFullGroup, ((GroupPortable) (nestedFullGroup.portables[0])).portables, Generic, "portables[any].portables[any]", p), scenario(nestedFullGroup, ((GroupPortable) (nestedFullGroup.portables[0])).portables[0], Generic, "portables[0].portables[0]", p), scenario(nestedFullGroup, ((GroupPortable) (nestedFullGroup.portables[0])).portables[1], Generic, "portables[0].portables[1]", p), scenario(nestedFullGroup, ((GroupPortable) (nestedFullGroup.portables[0])).portables[2], Generic, "portables[0].portables[2]", p), scenario(nestedFullGroup, null, Generic, "portables[0].portables[12]", p)));
    result.addAll(expandPortableArrayPrimitiveScenario(nestedFullGroup, (GroupPortable) nestedFullGroup.portable, "portables[0].portableArray.primitiveUTF_", p));
    NestedGroupPortable anyGroup = nested(new Portable[] { group(prim(1, FULL), prim(10, NONE), prim(50, NULL)), group(prim(2, FULL), prim(20, NONE), prim(80, NULL)) });
    result.addAll(expandPortableArrayPrimitiveScenario(anyGroup, (GroupPortable) anyGroup.portables[0], "portables[0].portableArray.primitiveUTF_", p));
    // empty or null portable array de-referenced further
    NestedGroupPortable nestedNullArrayGroup = nested(new GroupPortable((Portable[]) null));
    result.addAll(asList(scenario(nestedNullArrayGroup, null, PortableArray, "portables[0].portables", p), scenario(nestedNullArrayGroup, null, PortableArray, "portables[0].portables[any]", p), scenario(nestedNullArrayGroup, null, PortableArray, "portables[any].portables[0]", p), scenario(nestedNullArrayGroup, null, PortableArray, "portables[any].portables[any]", p), scenario(nestedNullArrayGroup, null, Portable, "portables[0].portables[0]", p), scenario(nestedNullArrayGroup, null, Portable, "portables[0].portables[1]", p), scenario(nestedNullArrayGroup, null, Portable, "portables[0].portables[2]", p)));
    result.addAll(asList(scenario(nestedNullArrayGroup, null, Generic, "portables[0].portables", p), scenario(nestedNullArrayGroup, null, Generic, "portables[0].portables[any]", p), scenario(nestedNullArrayGroup, null, Generic, "portables[any].portables[0]", p), scenario(nestedNullArrayGroup, null, Generic, "portables[any].portables[any]", p), scenario(nestedNullArrayGroup, null, Generic, "portables[0].portables[0]", p), scenario(nestedNullArrayGroup, null, Generic, "portables[0].portables[1]", p), scenario(nestedNullArrayGroup, null, Generic, "portables[0].portables[2]", p)));
    result.addAll(expandPortableArrayPrimitiveScenario(nestedNullArrayGroup, (GroupPortable) nestedNullArrayGroup.portable, "portables[0].portableArray.primitiveUTF_", p));
    NestedGroupPortable nestedEmptyArrayGroup = nested(new GroupPortable(new Portable[0]));
    result.addAll(asList(scenario(nestedEmptyArrayGroup, new Portable[0], PortableArray, "portables[0].portables", p), scenario(nestedEmptyArrayGroup, null, PortableArray, "portables[0].portables[any]", p), scenario(nestedEmptyArrayGroup, null, PortableArray, "portables[any].portables[0]", p), scenario(nestedEmptyArrayGroup, null, PortableArray, "portables[any].portables[any]", p), scenario(nestedEmptyArrayGroup, null, Portable, "portables[0].portables[0]", p), scenario(nestedEmptyArrayGroup, null, Portable, "portables[0].portables[1]", p), scenario(nestedEmptyArrayGroup, null, Portable, "portables[0].portables[2]", p)));
    result.addAll(asList(scenario(nestedEmptyArrayGroup, new Portable[0], Generic, "portables[0].portables", p), scenario(nestedEmptyArrayGroup, null, Generic, "portables[0].portables[any]", p), scenario(nestedEmptyArrayGroup, null, Generic, "portables[any].portables[0]", p), scenario(nestedEmptyArrayGroup, null, Generic, "portables[any].portables[any]", p), scenario(nestedEmptyArrayGroup, null, Generic, "portables[0].portables[0]", p), scenario(nestedEmptyArrayGroup, null, Generic, "portables[0].portables[1]", p), scenario(nestedEmptyArrayGroup, null, Generic, "portables[0].portables[2]", p)));
    result.addAll(expandPortableArrayPrimitiveScenario(nestedEmptyArrayGroup, (GroupPortable) nestedEmptyArrayGroup.portable, "portables[0].portableArray.primitiveUTF_", p));
    NestedGroupPortable nestedEmpty = nested(new GroupPortable[0]);
    result.addAll(asList(scenario(nestedEmpty, null, PortableArray, "portables[0].portables", p), scenario(nestedEmpty, null, PortableArray, "portables[0].portables[any]", p), scenario(nestedEmpty, null, PortableArray, "portables[any].portables[0]", p), scenario(nestedEmpty, null, PortableArray, "portables[any].portables[any]", p), scenario(nestedEmpty, null, Portable, "portables[0].portables[0]", p), scenario(nestedEmpty, null, Portable, "portables[0].portables[1]", p), scenario(nestedEmpty, null, Portable, "portables[0].portables[2]", p)));
    result.addAll(asList(scenario(nestedEmpty, null, Generic, "portables[0].portables", p), scenario(nestedEmpty, null, Generic, "portables[0].portables[any]", p), scenario(nestedEmpty, null, Generic, "portables[any].portables[0]", p), scenario(nestedEmpty, null, Generic, "portables[any].portables[any]", p), scenario(nestedEmpty, null, Generic, "portables[0].portables[0]", p), scenario(nestedEmpty, null, Generic, "portables[0].portables[1]", p), scenario(nestedEmpty, null, Generic, "portables[0].portables[2]", p)));
    result.addAll(expandPortableArrayPrimitiveScenario(nestedEmpty, (GroupPortable) nestedEmpty.portable, "portables[0].portableArray.primitiveUTF_", p));
    NestedGroupPortable nestedNull = nested((GroupPortable[]) null);
    result.addAll(asList(scenario(nestedNull, null, PortableArray, "portables[0].portables", p), scenario(nestedNull, null, PortableArray, "portables[0].portables[any]", p), scenario(nestedNull, null, PortableArray, "portables[any].portables[0]", p), scenario(nestedNull, null, PortableArray, "portables[any].portables[any]", p), scenario(nestedNull, null, Portable, "portables[0].portables[0]", p), scenario(nestedNull, null, Portable, "portables[0].portables[1]", p), scenario(nestedNull, null, Portable, "portables[0].portables[2]", p)));
    result.addAll(asList(scenario(nestedNull, null, Generic, "portables[0].portables", p), scenario(nestedNull, null, Generic, "portables[0].portables[any]", p), scenario(nestedNull, null, Generic, "portables[any].portables[0]", p), scenario(nestedNull, null, Generic, "portables[any].portables[any]", p), scenario(nestedNull, null, Generic, "portables[0].portables[0]", p), scenario(nestedNull, null, Generic, "portables[0].portables[1]", p), scenario(nestedNull, null, Generic, "portables[0].portables[2]", p)));
    result.addAll(expandPortableArrayPrimitiveScenario(nestedNull, (GroupPortable) nestedNull.portable, "portables[0].portableArray.primitiveUTF_", p));
}
Also used : GroupPortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.GroupPortable) Portable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.Method.Portable) Portable(com.hazelcast.nio.serialization.Portable) PrimitivePortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.PrimitivePortable) NestedGroupPortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.NestedGroupPortable) NestedGroupPortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.NestedGroupPortable) GroupPortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.GroupPortable) NestedGroupPortable(com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.NestedGroupPortable)

Aggregations

Portable (com.hazelcast.nio.serialization.Portable)6 GroupPortable (com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.GroupPortable)6 Portable (com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.Method.Portable)6 NestedGroupPortable (com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.NestedGroupPortable)6 PrimitivePortable (com.hazelcast.nio.serialization.impl.DefaultPortableReaderTestStructure.PrimitivePortable)6 ArrayList (java.util.ArrayList)2 Arrays.asList (java.util.Arrays.asList)2 List (java.util.List)2