AsmResolver.Tests.Net.FieldRvaTests.TestInterpretAsArray C# (CSharp) Метод

TestInterpretAsArray() приватный Метод

private TestInterpretAsArray ( ) : void
Результат void
        public void TestInterpretAsArray()
        {
            var elementType = ElementType.I4;
            int[] expected = new int[] { 1, 2, 3 };
            byte[] data = new byte[] { 1, 0, 0, 0, 2, 0, 0, 0, 3, 0, 0, 0 };

            var assembly = Utilities.CreateTempNetAssembly();
            var importer = new ReferenceImporter(assembly.NetDirectory.MetadataHeader.GetStream<TableStream>());
            var fieldType = new TypeDefinition(string.Empty, "__StaticArrayInitTypeSize=" + data.Length,
                 importer.ImportType(typeof(ValueType)));

            var field = new FieldDefinition(FieldName,
                FieldAttributes.Public | FieldAttributes.Static | FieldAttributes.HasFieldRva,
                new FieldSignature(new TypeDefOrRefSignature(fieldType) { IsValueType = true }));

            var fieldRva = new FieldRva(field, data);

            int[] actual = fieldRva.InterpretAsArray(elementType).Cast<int>().ToArray();

            Assert.AreEqual(expected.Length, actual.Length, "Length of arrays differ.");
            for (int i = 0; i < actual.Length; i++)
                Assert.AreEqual(expected[i], actual[i], "Element " + i + " differs from expected.");
        }