Imported Upstream version 6.6.0.89

Former-commit-id: b39a328747c2f3414dc52e009fb6f0aa80ca2492
This commit is contained in:
Xamarin Public Jenkins (auto-signing)
2019-09-24 08:53:40 +00:00
parent cf815e07e0
commit 95fdb59ea6
2556 changed files with 138145 additions and 47453 deletions

View File

@@ -449,6 +449,21 @@ namespace Mono.Cecil.Tests {
});
}
[Test]
public void GenericParameterConstraint ()
{
TestModule ("GenericParameterConstraintAttributes.dll", module => {
var type = module.GetType ("Foo.Library`1");
var gp = type.GenericParameters.Single ();
var constraint = gp.Constraints.Single ();
Assert.IsTrue (constraint.HasCustomAttributes);
var attributes = constraint.CustomAttributes;
Assert.AreEqual (1, attributes.Count);
Assert.AreEqual ("System.Runtime.CompilerServices.NullableAttribute", attributes [0].AttributeType.FullName);
}, verify: !Platform.OnMono);
}
[Test]
public void NullCharInString ()
{

View File

@@ -669,5 +669,19 @@ class Program
Assert.AreEqual (Path.GetFileName (debug_header_pdb_path), pdb_path);
}
}
[Test]
public void WriteAndReadAgainModuleWithDeterministicMvid ()
{
const string resource = "mylib.dll";
string destination = Path.GetTempFileName ();
using (var module = GetResourceModule (resource, new ReaderParameters { SymbolReaderProvider = new PortablePdbReaderProvider () })) {
module.Write (destination, new WriterParameters { DeterministicMvid = true, SymbolWriterProvider = new SymbolWriterProvider () });
}
using (var module = ModuleDefinition.ReadModule (destination, new ReaderParameters { SymbolReaderProvider = new PortablePdbReaderProvider () })) {
}
}
}
}

View File

@@ -98,8 +98,8 @@ namespace Mono.Cecil.Tests {
Assert.IsTrue (t.HasConstraints);
Assert.AreEqual (2, t.Constraints.Count);
Assert.AreEqual ("Zap", t.Constraints [0].FullName);
Assert.AreEqual ("IZoom", t.Constraints [1].FullName);
Assert.AreEqual ("Zap", t.Constraints [0].ConstraintType.FullName);
Assert.AreEqual ("IZoom", t.Constraints [1].ConstraintType.FullName);
});
}
@@ -132,8 +132,8 @@ namespace Mono.Cecil.Tests {
var t2 = duel.GenericParameters [1];
var t3 = duel.GenericParameters [2];
Assert.AreEqual (t1, t2.Constraints [0]);
Assert.AreEqual (t2, t3.Constraints [0]);
Assert.AreEqual (t1, t2.Constraints [0].ConstraintType);
Assert.AreEqual (t2, t3.Constraints [0].ConstraintType);
});
}