示例#1
0
        public void TestRandomValues_i()
        {
            var rand = new System.Random();
            var buff = new Byte[8];

            for(Int32 i = 0; i < Settings.NumTests; ++i)
            {
                rand.NextBytes(buff);
                UInt64 packed = BitConverter.ToUInt64(buff, 0);

                // Cannot guarantee that this packed value is valid.
                try
                {
                    var packedObj = new NormalisedShort4();
                    packedObj.PackedValue = packed;
                    Single realX, realY, realZ, realW = 0f;
                    packedObj.UnpackTo(out realX, out realY, out realZ, out realW);
                    var newPackedObj = new NormalisedShort4(realX, realY, realZ, realW);
                    Assert.That(newPackedObj.PackedValue, Is.EqualTo(packed));
                }
                catch(ArgumentException)
                {
                    continue;
                }
            }
        }