public void CanStripType()
{
if (Platform.OnMono)
return;
var assemblyResolver = WindowsRuntimeAssemblyResolver.CreateInstance ();
TestModule (ModuleName, (originalModule) => {
var types = CustomListTypeNames.Select (typeName => originalModule.Types.Single (t => t.Name == typeName)).ToArray ();
foreach (var type in types)
originalModule.Types.Remove (type);
var tmpPath = Path.GetTempFileName ();
originalModule.Write (tmpPath);
try {
TestModule (tmpPath, (modifiedModule) => {
foreach (var type in types)
Assert.IsTrue (!modifiedModule.Types.Any (t => t.FullName == type.FullName));
}, verify: false, assemblyResolver: assemblyResolver, applyWindowsRuntimeProjections: true);
} finally {
File.Delete (tmpPath);
}
}, readOnly: true, verify: false, assemblyResolver: assemblyResolver, applyWindowsRuntimeProjections: true);
}