Example #1
0
        public void ArrayOneDimensionByteStringVariantTest()
        {
            byte[]   _testArray    = new byte[] { 143, 2, 0, 0, 0, 5, 0, 0, 0, 0, 1, 2, 3, 4, 5, 0, 0, 0, 5, 6, 7, 8, 9 };
            IVariant _EncodedArray = null;

            using (MemoryStream _stream = new MemoryStream(_testArray))
                using (TestBinaryReader _buffer = new TestBinaryReader(_stream))
                {
                    Assert.IsNotNull(_buffer);
                    _EncodedArray = _buffer.ReadVariant(_buffer);
                    _buffer.Close();
                }
            Assert.IsNotNull(_EncodedArray);
            Assert.AreEqual <BuiltInType>(BuiltInType.ByteString, _EncodedArray.UATypeInfo.BuiltInType);
            Assert.AreEqual <int>(1, _EncodedArray.UATypeInfo.ValueRank);
            Assert.IsInstanceOfType(_EncodedArray.Value, typeof(Array));
            Array _value = _EncodedArray.Value as Array;

            Assert.IsNotNull(_value);
            Assert.AreEqual <int>(1, _value.Rank);
            Assert.AreEqual <int>(2, _value.GetLength(0));
            byte[][] _recovered = (byte[][])_value;
            byte[][] _expected  = new byte[][] { new byte[] { 0, 1, 2, 3, 4 }, new byte[] { 5, 6, 7, 8, 9 } };
            for (int i = 0; i < _value.Rank; i++)
            {
                CollectionAssert.AreEqual(_expected[i], _recovered[i]);
            }
        }
Example #2
0
 public void VariantGuidTestMethod()
 {
     using (MemoryStream _stream = new MemoryStream(CommonDefinitions.TestGuidVariant))
         using (TestBinaryReader _buffer = new TestBinaryReader(_stream))
         {
             Assert.IsNotNull(_buffer);
             IVariant _EncodedVGuid = _buffer.ReadVariant(_buffer);
             _buffer.Close();
             Assert.IsNotNull(_EncodedVGuid);
             Assert.AreEqual <BuiltInType>(BuiltInType.Guid, _EncodedVGuid.UATypeInfo.BuiltInType);
             Assert.AreEqual <int>(-1, _EncodedVGuid.UATypeInfo.ValueRank);
             Assert.AreEqual <Guid>(CommonDefinitions.TestGuid, (Guid)_EncodedVGuid.Value);
         }
 }
Example #3
0
 public void VariantDateTimeTestMethod()
 {
     foreach (CommonDefinitions.DateTimeVariantEncoding _dtx in CommonDefinitions.DateTimeTestingValues)
     {
         using (MemoryStream _stream = new MemoryStream(_dtx.encoding))
             using (TestBinaryReader _buffer = new TestBinaryReader(_stream))
             {
                 Assert.IsNotNull(_buffer);
                 IVariant _variant = _buffer.ReadVariant(_buffer);
                 _buffer.Close();
                 Assert.AreEqual <BuiltInType>(BuiltInType.DateTime, _variant.UATypeInfo.BuiltInType);
                 Assert.AreEqual <DateTime>(_dtx.dateTime, (DateTime)_variant.Value);
             }
     }
 }
Example #4
0
        public void ArrayOneDimensionVariantTest()
        {
            byte[]   _testArray    = new byte[] { 134, 5, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 3, 0, 0, 0, 4, 0, 0, 0 };
            IVariant _EncodedArray = null;

            using (MemoryStream _stream = new MemoryStream(_testArray))
                using (TestBinaryReader _buffer = new TestBinaryReader(_stream))
                {
                    Assert.IsNotNull(_buffer);
                    _EncodedArray = _buffer.ReadVariant(_buffer);
                    _buffer.Close();
                }
            Assert.IsNotNull(_EncodedArray);
            Assert.AreEqual <BuiltInType>(BuiltInType.Int32, _EncodedArray.UATypeInfo.BuiltInType);
            Assert.AreEqual <int>(1, _EncodedArray.UATypeInfo.ValueRank);
            Assert.IsInstanceOfType(_EncodedArray.Value, typeof(Array));
            Array _value = _EncodedArray.Value as Array;

            Assert.IsNotNull(_value);
            Assert.AreEqual <int>(1, _value.Rank);
            Assert.AreEqual <int>(5, _value.GetLength(0));
            CollectionAssert.AreEqual(new Int32[] { 0, 1, 2, 3, 4 }, _value);
        }