Browse Source

Add type system accessibility tests.

newNRvisualizers
Daniel Grunwald 13 years ago
parent
commit
89ef0aef0e
  1. 10
      ICSharpCode.NRefactory.Tests/TypeSystem/TypeSystemTests.TestCase.cs
  2. 13
      ICSharpCode.NRefactory.Tests/TypeSystem/TypeSystemTests.cs

10
ICSharpCode.NRefactory.Tests/TypeSystem/TypeSystemTests.TestCase.cs

@ -332,4 +332,14 @@ namespace ICSharpCode.NRefactory.TypeSystem.TestCase @@ -332,4 +332,14 @@ namespace ICSharpCode.NRefactory.TypeSystem.TestCase
public void Foo (int? bar = 42) { }
}
public class AccessibilityTest
{
public void Public() {}
internal void Internal() {}
protected internal void ProtectedInternal() {}
internal protected void InternalProtected() {}
protected void Protected() {}
private void Private() {}
void None() {}
}
}

13
ICSharpCode.NRefactory.Tests/TypeSystem/TypeSystemTests.cs

@ -1213,5 +1213,18 @@ namespace ICSharpCode.NRefactory.TypeSystem @@ -1213,5 +1213,18 @@ namespace ICSharpCode.NRefactory.TypeSystem
var method = type.GetMethods ().Single (m => m.Name == "Foo");
Assert.AreEqual(42, method.Parameters.Single ().ConstantValue);
}
[Test]
public void AccessibilityTests()
{
ITypeDefinition type = GetTypeDefinition(typeof(AccessibilityTest));
Assert.AreEqual(Accessibility.Public, type.Methods.Single(m => m.Name == "Public").Accessibility);
Assert.AreEqual(Accessibility.Internal, type.Methods.Single(m => m.Name == "Internal").Accessibility);
Assert.AreEqual(Accessibility.ProtectedOrInternal, type.Methods.Single(m => m.Name == "ProtectedInternal").Accessibility);
Assert.AreEqual(Accessibility.ProtectedOrInternal, type.Methods.Single(m => m.Name == "InternalProtected").Accessibility);
Assert.AreEqual(Accessibility.Protected, type.Methods.Single(m => m.Name == "Protected").Accessibility);
Assert.AreEqual(Accessibility.Private, type.Methods.Single(m => m.Name == "Private").Accessibility);
Assert.AreEqual(Accessibility.Private, type.Methods.Single(m => m.Name == "None").Accessibility);
}
}
}

Loading…
Cancel
Save