You've already forked linux-packaging-mono
Imported Upstream version 5.14.0.106
Former-commit-id: 03fab0f68b93e237c47a03f7d3793d7f5d7c276d
This commit is contained in:
parent
c34b058d3e
commit
fee6ab6a16
@@ -1,6 +1,7 @@
|
||||
using System;
|
||||
|
||||
using Mono.Cecil;
|
||||
using Mono.Cecil.Cil;
|
||||
|
||||
using NUnit.Framework;
|
||||
|
||||
@@ -91,15 +92,16 @@ namespace Mono.Cecil.Tests {
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void MismatchedLibraryAndSymbols_DoNotThrow ()
|
||||
public void MismatchedLibraryAndSymbols ()
|
||||
{
|
||||
// SQLite-net.dll (from nuget) shiped with mismatched symbol files, but throwIfNoSymbol did not prevent it from throwing
|
||||
var readerParms = new ReaderParameters {
|
||||
var parameters = new ReaderParameters {
|
||||
ReadSymbols = true,
|
||||
SymbolReaderProvider = new Cil.DefaultSymbolReaderProvider (throwIfNoSymbol: false)
|
||||
SymbolReaderProvider = new DefaultSymbolReaderProvider (throwIfNoSymbol: false),
|
||||
ThrowIfSymbolsAreNotMatching = false,
|
||||
};
|
||||
|
||||
using (var module = GetResourceModule ("SQLite-net.dll", readerParms)) {
|
||||
using (var module = GetResourceModule ("SQLite-net.dll", parameters)) {
|
||||
Assert.Null (module.SymbolReader);
|
||||
}
|
||||
}
|
||||
|
@@ -254,6 +254,15 @@ namespace Mono.Cecil.Tests {
|
||||
}
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void GetNonExistentTypeRuntimeName ()
|
||||
{
|
||||
using (var module = GetResourceModule ("libhello.dll")) {
|
||||
var type = module.GetType ("DoesNotExist", runtimeName: true);
|
||||
Assert.IsNull (type);
|
||||
}
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void OpenModuleImmediate ()
|
||||
{
|
||||
|
@@ -50,6 +50,36 @@ namespace Mono.Cecil.Tests {
|
||||
Assert.AreEqual (typeof (PortablePdbReader), module.SymbolReader.GetType ());
|
||||
}, symbolReaderProvider: typeof (DefaultSymbolReaderProvider), symbolWriterProvider: typeof (DefaultSymbolWriterProvider), verify: !Platform.OnMono);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void MdbMismatch ()
|
||||
{
|
||||
Assert.Throws<SymbolsNotMatchingException> (() => GetResourceModule ("mdb-mismatch.dll", new ReaderParameters { SymbolReaderProvider = new MdbReaderProvider () }));
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void MdbIgnoreMismatch()
|
||||
{
|
||||
using (var module = GetResourceModule ("mdb-mismatch.dll", new ReaderParameters { SymbolReaderProvider = new MdbReaderProvider (), ThrowIfSymbolsAreNotMatching = false })) {
|
||||
Assert.IsNull (module.SymbolReader);
|
||||
Assert.IsFalse (module.HasSymbols);
|
||||
}
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void PortablePdbMismatch ()
|
||||
{
|
||||
Assert.Throws<SymbolsNotMatchingException> (() => GetResourceModule ("pdb-mismatch.dll", new ReaderParameters { SymbolReaderProvider = new PortablePdbReaderProvider () }));
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void PortablePdbIgnoreMismatch()
|
||||
{
|
||||
using (var module = GetResourceModule ("pdb-mismatch.dll", new ReaderParameters { SymbolReaderProvider = new PortablePdbReaderProvider (), ThrowIfSymbolsAreNotMatching = false })) {
|
||||
Assert.IsNull (module.SymbolReader);
|
||||
Assert.IsFalse (module.HasSymbols);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
BIN
external/cecil/Test/Resources/assemblies/mdb-mismatch.dll.mdb
vendored
Normal file
BIN
external/cecil/Test/Resources/assemblies/mdb-mismatch.dll.mdb
vendored
Normal file
Binary file not shown.
BIN
external/cecil/Test/Resources/assemblies/pdb-mismatch.pdb
vendored
Normal file
BIN
external/cecil/Test/Resources/assemblies/pdb-mismatch.pdb
vendored
Normal file
Binary file not shown.
Reference in New Issue
Block a user