1. How to test internal / protected
methods in c#
Howard 2014/02/13
2. Modifiers
• internal
•
The internal keyword is an access modifier for types and type members. Internal types
or members are accessible only within files in the same assembly
• protected
•
The protected keyword is a member access modifier. A protected member is
accessible within its class and by derived class instances.
5. How to test internal methods?
• InternalsVisibleToAttribute
•
•
Specifies that types that are ordinarily visible only within the current assembly are
visible to a specified assembly.
Namespace: System.Runtime.CompilerServices
11. new Modifier
• When used as a declaration modifier, the new keyword explicitly hides a
member that is inherited from a base class.
• When you hide an inherited member, the derived version of the member
replaces the base class version.
• Although you can hide members without using the new modifier, you get a
compiler warning. If you use new to explicitly hide a member, it suppresses
this warning.
12. How to test protected methods?
– better solution!
Set method modifier to protected internal, and use InternalsVisibleToAttribute
• protected internal: Access is limited to the current assembly or types derived
from the containing class.
13. References
• How to Test Private and Protected methods in .NET
•
http://www.codeproject.com/Articles/9715/How-to-Test-Private-and-Protected-methods-inNET
• InternalsVisibleToAttribute Class
•
http://msdn.microsoft.com/enus/library/system.runtime.compilerservices.internalsvisibletoattribute(v=vs.110).aspx
• Modifiers
•
http://msdn.microsoft.com/en-us/library/6tcf2h8w.aspx
•
http://msdn.microsoft.com/en-us/library/435f1dw2.aspx
• new Modifier