Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/cecil.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJb Evain <jb@evain.net>2017-03-22 01:46:26 +0300
committerJb Evain <jb@evain.net>2017-03-22 01:46:26 +0300
commitbb314a7c38f063222ad7f942a12392f9f56e97f4 (patch)
tree07d6ed8397fa094bd8ab5aaeec360cb0f18cf3e0 /Test/Mono.Cecil.Tests
parente11e18e57b9c4fcee303581e54975a05f4644f66 (diff)
Fix TypeDefinition.MetadataType for core types
Diffstat (limited to 'Test/Mono.Cecil.Tests')
-rw-r--r--Test/Mono.Cecil.Tests/TypeTests.cs20
1 files changed, 17 insertions, 3 deletions
diff --git a/Test/Mono.Cecil.Tests/TypeTests.cs b/Test/Mono.Cecil.Tests/TypeTests.cs
index 1bf834a..d378042 100644
--- a/Test/Mono.Cecil.Tests/TypeTests.cs
+++ b/Test/Mono.Cecil.Tests/TypeTests.cs
@@ -255,10 +255,24 @@ namespace Mono.Cecil.Tests {
[Test]
public void DeferredCorlibTypeDef ()
{
- var module = ModuleDefinition.ReadModule (typeof (object).Assembly.Location, new ReaderParameters (ReadingMode.Deferred));
- var object_type = module.TypeSystem.Object;
+ using (var module = ModuleDefinition.ReadModule (typeof (object).Assembly.Location, new ReaderParameters (ReadingMode.Deferred))) {
+ var object_type = module.TypeSystem.Object;
+ Assert.IsInstanceOf<TypeDefinition> (object_type);
+ }
+ }
- Assert.IsInstanceOf<TypeDefinition> (object_type);
+ [Test]
+ public void CorlibTypesMetadataType ()
+ {
+ using (var module = ModuleDefinition.ReadModule (typeof (object).Assembly.Location)) {
+ var type = module.GetType ("System.String");
+ Assert.IsNotNull (type);
+ Assert.IsNotNull (type.BaseType);
+ Assert.AreEqual ("System.Object", type.BaseType.FullName);
+ Assert.IsInstanceOf<TypeDefinition> (type.BaseType);
+ Assert.AreEqual (MetadataType.String, type.MetadataType);
+ Assert.AreEqual (MetadataType.Object, type.BaseType.MetadataType);
+ }
}
}
}