Browse Source

Add test case for explicit interface implementation involving nullable types

pull/3111/head
Daniel Grunwald 2 years ago
parent
commit
a99eed0503
  1. 45
      ICSharpCode.Decompiler.Tests/TestCases/Pretty/NullableRefTypes.cs

45
ICSharpCode.Decompiler.Tests/TestCases/Pretty/NullableRefTypes.cs

@ -1,5 +1,6 @@ @@ -1,5 +1,6 @@
#nullable enable
using System;
using System.Collections;
using System.Collections.Generic;
namespace ICSharpCode.Decompiler.Tests.TestCases.Pretty
@ -139,4 +140,48 @@ namespace ICSharpCode.Decompiler.Tests.TestCases.Pretty @@ -139,4 +140,48 @@ namespace ICSharpCode.Decompiler.Tests.TestCases.Pretty
Console.WriteLine(format, num, num2, tuple);
}
}
public class T06_ExplicitInterfaceImplementation : IEnumerable<KeyValuePair<string, string?>>, IEnumerable
{
// TODO: declaring type is not yet rendered with nullability annotations from the base type
IEnumerator<KeyValuePair<string, string?>> IEnumerable<KeyValuePair<string, string>>.GetEnumerator()
{
yield return new KeyValuePair<string, string>("a", "b");
}
IEnumerator IEnumerable.GetEnumerator()
{
throw new NotImplementedException();
}
}
public class T07_ExplicitInterfaceImplementation : IEnumerator<KeyValuePair<string, string?>>, IEnumerator, IDisposable
{
KeyValuePair<string, string?> IEnumerator<KeyValuePair<string, string>>.Current {
get {
throw new NotImplementedException();
}
}
object IEnumerator.Current {
get {
throw new NotImplementedException();
}
}
void IDisposable.Dispose()
{
throw new NotImplementedException();
}
bool IEnumerator.MoveNext()
{
throw new NotImplementedException();
}
void IEnumerator.Reset()
{
throw new NotImplementedException();
}
}
}

Loading…
Cancel
Save