public void CanProjectParametersAndReturnTypes()
{
if (Platform.OnMono)
return;
TestModule (ModuleName, (module) => {
var types = ManagedClassTypeNames.Select (typeName => module.Types.Single (t => t.Name == typeName));
foreach (var type in types) {
var listGetter = type.Properties.Single (p => p.Name == "List").GetMethod;
var listSetter = type.Properties.Single (p => p.Name == "List").SetMethod;
Assert.IsNotNull (listGetter);
Assert.IsNotNull (listSetter);
Assert.AreEqual (listGetter.ReturnType.FullName, "System.Collections.Generic.IList`1<System.Int32>");
Assert.AreEqual (listSetter.Parameters.Count, 1);
Assert.AreEqual (listSetter.Parameters [0].ParameterType.FullName, "System.Collections.Generic.IList`1<System.Int32>");
}
}, verify: false, assemblyResolver: WindowsRuntimeAssemblyResolver.CreateInstance (), applyWindowsRuntimeProjections: true);
}