in main/testtools/source/bridgetest/cli/cli_vb_bridgetest.vb [210:470]
Private Shared Function performSequenceTest(xBT As XBridgeTest) As Boolean
Dim bRet As Boolean = True
Dim xBT2 As XBridgeTest2
Try
xBT2 = DirectCast(xBT,XBridgeTest2)
Catch e As InvalidCastException
Return False
End Try
Dim arBool() As Boolean = {True, False, True}
Dim arChar() As Char = {"A"C,"B"C,"C"C}
Dim arByte() As Byte = { 1, 2, &Hff}
Dim arShort() As Short = {Int16.MinValue, 1, Int16.MaxValue}
Dim arUShort() As UInt16 = {Convert.ToUInt16(0), Convert.ToUInt16(1), _
Convert.ToUInt16(&Hffff)}
Dim arLong() As Integer = {Int32.MinValue, 1, Int32.MaxValue}
Dim arULong() As UInt32 = {Convert.ToUInt32(0), Convert.ToUInt32(1), _
Convert.ToUInt32(&HffffffffL)}
Dim arHyper() As Long = {Int64.MinValue, 1, Int64.MaxValue}
Dim arUHyper() As UInt64 = {Convert.ToUInt64(0), Convert.ToUInt64(1), _
Convert.ToUInt64(&Hffffffff5L)}
Dim arFloat() As Single = {1.1f, 2.2f, 3.3f}
Dim arDouble() As Double = {1.11, 2.22, 3.33}
Dim arString() As String = {"String 1", "String 2", "String 3"}
Dim arAny() As Any = {New Any(True), New Any(11111), New Any(3.14)}
Dim arObject() As Object = {New WeakBase(), New WeakBase(), New WeakBase()}
Dim arEnum() As TestEnum = {TestEnum.ONE, TestEnum.TWO, TestEnum.CHECK}
Dim arStruct() As TestElement = {New TestElement(), New TestElement(), _
New TestElement()}
assign( arStruct(0), True, "@"C, 17, &H1234, Convert.ToUInt16(&Hfedc), _
&H12345678, Convert.ToUInt32(&H123456), &H123456789abcdef0, _
Convert.ToUInt64(123456788), 17.0815F, 3.1415926359, _
TestEnum.LOLA, CONSTANTS.STRING_TEST_CONSTANT, arObject(0), _
New Any(GetType(System.Object), arObject(0)))
assign( arStruct(1), True, "A"C, 17, &H1234, Convert.ToUInt16(&Hfedc), _
&H12345678, Convert.ToUInt32(&H123456), &H123456789abcdef0, _
Convert.ToUInt64(12345678), 17.0815F, 3.1415926359, _
TestEnum.TWO, CONSTANTS.STRING_TEST_CONSTANT, arObject(1), _
New Any(GetType(System.Object), arObject(1)) )
assign( arStruct(2), True, "B"C, 17, &H1234, Convert.ToUInt16(&Hfedc), _
&H12345678, Convert.ToUInt32(654321), &H123456789abcdef0, _
Convert.ToUInt64(87654321), 17.0815F, 3.1415926359, _
TestEnum.CHECK, Constants.STRING_TEST_CONSTANT, arObject(2), _
New Any(GetType(System.Object), arObject(2)))
Dim arLong3()()() As Integer = New Integer()()() { _
New Integer()(){New Integer(){1,2,3},New Integer(){4,5,6}, New Integer(){7,8,9} }, _
New Integer ()(){New Integer(){1,2,3},New Integer(){4,5,6}, New Integer(){7,8,9}}, _
New Integer()(){New Integer(){1,2,3},New Integer(){4,5,6}, New Integer(){7,8,9}}}
Dim seqSeqRet()() As Integer = xBT2.setDim2(arLong3(0))
bRet = check( compareData(seqSeqRet, arLong3(0)), "sequence test") _
And bRet
Dim seqSeqRet2()()() As Integer = xBT2.setDim3(arLong3)
bRet = check( compareData(seqSeqRet2, arLong3), "sequence test") _
And bRet
Dim seqAnyRet() As Any = xBT2.setSequenceAny(arAny)
bRet = check( compareData(seqAnyRet, arAny), "sequence test") And bRet
Dim seqBoolRet() As Boolean = xBT2.setSequenceBool(arBool)
bRet = check( compareData(seqBoolRet, arBool), "sequence test") _
And bRet
Dim seqByteRet() As Byte = xBT2.setSequenceByte(arByte)
bRet = check( compareData(seqByteRet, arByte), "sequence test") _
And bRet
Dim seqCharRet() As Char = xBT2.setSequenceChar(arChar)
bRet = check( compareData(seqCharRet, arChar), "sequence test") _
And bRet
Dim seqShortRet() As Short = xBT2.setSequenceShort(arShort)
bRet = check( compareData(seqShortRet, arShort), "sequence test") _
And bRet
Dim seqLongRet() As Integer = xBT2.setSequenceLong(arLong)
bRet = check( compareData(seqLongRet, arLong), "sequence test") _
And bRet
Dim seqHyperRet() As Long = xBT2.setSequenceHyper(arHyper)
bRet = check( compareData(seqHyperRet,arHyper), "sequence test") _
And bRet
Dim seqFloatRet() As Single = xBT2.setSequenceFloat(arFloat)
bRet = check( compareData(seqFloatRet, arFloat), "sequence test") _
And bRet
Dim seqDoubleRet() As Double= xBT2.setSequenceDouble(arDouble)
bRet = check( compareData(seqDoubleRet, arDouble), "sequence test") _
And bRet
Dim seqEnumRet() As TestEnum = xBT2.setSequenceEnum(arEnum)
bRet = check( compareData(seqEnumRet, arEnum), "sequence test") _
And bRet
Dim seqUShortRet() As UInt16 = xBT2.setSequenceUShort(arUShort)
bRet = check( compareData(seqUShortRet, arUShort), "sequence test") _
And bRet
Dim seqULongRet() As UInt32 = xBT2.setSequenceULong(arULong)
bRet = check( compareData(seqULongRet, arULong), "sequence test") _
And bRet
Dim seqUHyperRet() As UInt64 = xBT2.setSequenceUHyper(arUHyper)
bRet = check( compareData(seqUHyperRet, arUHyper), "sequence test") _
And bRet
Dim seqObjectRet() As Object = xBT2.setSequenceXInterface(arObject)
bRet = check( compareData(seqObjectRet, arObject), "sequence test") _
And bRet
Dim seqStringRet() As String = xBT2.setSequenceString(arString)
bRet = check( compareData(seqStringRet, arString), "sequence test") _
And bRet
Dim seqStructRet() As TestElement = xBT2.setSequenceStruct(arStruct)
bRet = check( compareData(seqStructRet, arStruct), "sequence test") _
And bRet
Dim arBoolTemp() As Boolean = DirectCast(arBool.Clone(), Boolean())
Dim arCharTemp() As Char = DirectCast(arChar.Clone(), Char())
Dim arByteTemp() As Byte = DirectCast(arByte.Clone(), Byte())
Dim arShortTemp() As Short = DirectCast(arShort.Clone(), Short())
Dim arUShortTemp() As UInt16 = DirectCast(arUShort.Clone(), UInt16())
Dim arLongTemp() As Integer= DirectCast(arLong.Clone(), Integer())
Dim arULongTemp() As UInt32 = DirectCast(arULong.Clone(), UInt32())
Dim arHyperTemp() As Long = DirectCast(arHyper.Clone(), Long())
Dim arUHyperTemp() As UInt64 = DirectCast(arUHyper.Clone(), UInt64())
Dim arFloatTemp() As Single = DirectCast(arFloat.Clone(), Single())
Dim arDoubleTemp() As Double = DirectCast(arDouble.Clone(), Double())
Dim arEnumTemp() As TestEnum = DirectCast(arEnum.Clone(), TestEnum())
Dim arStringTemp() As String = DirectCast(arString.Clone(), String())
Dim arObjectTemp() As Object = DirectCast(arObject.Clone(), Object())
Dim arAnyTemp() As Any = DirectCast(arAny.Clone(), Any())
Dim arLong2Temp()() As Integer = New Integer()(){New Integer(){1,2,3}, _
New Integer(){4,5,6}, New Integer(){7,8,9} }
Dim arLong3Temp()()() As Integer = New Integer()()(){ _
New Integer()(){New Integer(){1,2,3},New Integer(){4,5,6}, New Integer(){7,8,9} }, _
New Integer ()(){New Integer(){1,2,3},New Integer(){4,5,6}, New Integer(){7,8,9}}, _
New Integer()(){New Integer(){1,2,3},New Integer(){4,5,6}, New Integer(){7,8,9}}}
xBT2.setSequencesInOut( arBoolTemp, arCharTemp, arByteTemp, _
arShortTemp, arUShortTemp, arLongTemp, _
arULongTemp, arHyperTemp, arUHyperTemp, _
arFloatTemp, arDoubleTemp, arEnumTemp, _
arStringTemp, arObjectTemp, _
arAnyTemp, arLong2Temp, arLong3Temp)
bRet = check( _
compareData(arBoolTemp, arBool) And _
compareData(arCharTemp , arChar) And _
compareData(arByteTemp , arByte) And _
compareData(arShortTemp , arShort) And _
compareData(arUShortTemp , arUShort) And _
compareData(arLongTemp , arLong) And _
compareData(arULongTemp , arULong) And _
compareData(arHyperTemp , arHyper) And _
compareData(arUHyperTemp , arUHyper) And _
compareData(arFloatTemp , arFloat) And _
compareData(arDoubleTemp , arDouble) And _
compareData(arEnumTemp , arEnum) And _
compareData(arStringTemp , arString) And _
compareData(arObjectTemp , arObject) And _
compareData(arAnyTemp , arAny) And _
compareData(arLong2Temp , arLong3(0)) And _
compareData(arLong3Temp , arLong3), "sequence test") And bRet
Dim arBoolOut() As Boolean
Dim arCharOut() As Char
Dim arByteOut() As Byte
Dim arShortOut() As Short
Dim arUShortOut() As UInt16
Dim arLongOut() As Integer
Dim arULongOut() As UInt32
Dim arHyperOut() As Long
Dim arUHyperOut() As UInt64
Dim arFloatOut() As Single
Dim arDoubleOut() As Double
Dim arEnumOut() As TestEnum
Dim arStringOut() As String
Dim arObjectOut() As Object
Dim arAnyOut() As Any
Dim arLong2Out()() As Integer
Dim arLong3Out()()() As Integer
xBT2.setSequencesOut( arBoolOut, arCharOut, arByteOut, _
arShortOut, arUShortOut, arLongOut, _
arULongOut, arHyperOut, arUHyperOut, _
arFloatOut, arDoubleOut, arEnumOut, _
arStringOut, arObjectOut, arAnyOut, _
arLong2Out, arLong3Out)
bRet = check( _
compareData(arBoolOut, arBool) And _
compareData(arCharOut, arChar) And _
compareData(arByteOut, arByte) And _
compareData(arShortOut, arShort) And _
compareData(arUShortOut, arUShort) And _
compareData(arLongOut, arLong) And _
compareData(arULongOut, arULong) And _
compareData(arHyperOut, arHyper) And _
compareData(arUHyperOut, arUHyper) And _
compareData(arFloatOut, arFloat) And _
compareData(arDoubleOut, arDouble) And _
compareData(arEnumOut, arEnum) And _
compareData(arStringOut, arString) And _
compareData(arObjectOut, arObject) And _
compareData(arAnyOut, arAny) And _
compareData(arLong2Out, arLong3(0)) And _
compareData(arLong3Out, arLong3), "sequence test") And bRet
Dim _arLong2()() As Integer = New Integer()(){}
seqSeqRet = xBT2.setDim2(_arLong2)
bRet = check( compareData(seqSeqRet, _arLong2), "sequence test") And bRet
Dim _arLong3()()() As Integer = New Integer()()(){}
seqSeqRet2 = xBT2.setDim3(_arLong3)
bRet = check( compareData(seqSeqRet2, _arLong3), "sequence test") And bRet
Dim _arAny() As Any = New Any(){}
seqAnyRet = xBT2.setSequenceAny(_arAny)
bRet = check( compareData(seqAnyRet, _arAny), "sequence test") And bRet
Dim _arBool() As Boolean = New Boolean() {}
seqBoolRet = xBT2.setSequenceBool(_arBool)
bRet = check( compareData(seqBoolRet, _arBool), "sequence test") And bRet
Dim _arByte() As Byte = New Byte() {}
seqByteRet = xBT2.setSequenceByte(_arByte)
bRet = check( compareData(seqByteRet, _arByte), "sequence test") And bRet
Dim _arChar() As Char = New Char() {}
seqCharRet = xBT2.setSequenceChar(_arChar)
bRet = check( compareData(seqCharRet, _arChar), "sequence test") And bRet
Dim _arShort() As Short = New Short() {}
seqShortRet = xBT2.setSequenceShort(_arShort)
bRet = check( compareData(seqShortRet, _arShort), "sequence test") And bRet
Dim _arLong() As Integer = New Integer() {}
seqLongRet = xBT2.setSequenceLong(_arLong)
bRet = check( compareData(seqLongRet, _arLong), "sequence test") And bRet
Dim _arHyper() As Long = New Long(){}
seqHyperRet = xBT2.setSequenceHyper(_arHyper)
bRet = check( compareData(seqHyperRet, _arHyper), "sequence test") And bRet
Dim _arFloat() As Single = New Single(){}
seqFloatRet = xBT2.setSequenceFloat(_arFloat)
bRet = check( compareData(seqFloatRet, _arFloat), "sequence test") And bRet
Dim _arDouble() As Double = New Double(){}
seqDoubleRet = xBT2.setSequenceDouble(_arDouble)
bRet = check( compareData(seqDoubleRet, _arDouble), "sequence test") And bRet
Dim _arEnum() As TestEnum = New TestEnum(){}
seqEnumRet = xBT2.setSequenceEnum(_arEnum)
bRet = check( compareData(seqEnumRet, _arEnum), "sequence test") And bRet
Dim _arUShort() As UInt16 = New UInt16(){}
seqUShortRet = xBT2.setSequenceUShort(_arUShort)
bRet = check( compareData(seqUShortRet, _arUShort), "sequence test") And bRet
Dim _arULong() As UInt32 = New UInt32(){}
seqULongRet = xBT2.setSequenceULong(_arULong)
bRet = check( compareData(seqULongRet, _arULong), "sequence test") And bRet
Dim _arUHyper() As UInt64 = New UInt64(){}
seqUHyperRet = xBT2.setSequenceUHyper(_arUHyper)
bRet = check( compareData(seqUHyperRet, _arUHyper), "sequence test") And bRet
Dim _arObject() As Object = New Object(){}
seqObjectRet = xBT2.setSequenceXInterface(_arObject)
bRet = check( compareData(seqObjectRet, _arObject), "sequence test") And bRet
Dim _arString() As String = New String(){}
seqStringRet = xBT2.setSequenceString(_arString)
bRet = check( compareData(seqStringRet, _arString), "sequence test") And bRet
Dim _arStruct() As TestElement = New TestElement(){}
seqStructRet = xBT2.setSequenceStruct(_arStruct)
bRet = check( compareData(seqStructRet, _arStruct), "sequence test") And bRet
Return bRet
End Function