Skip to content

Commit

Permalink
Removed the "non-private" part from names since visibility is now use…
Browse files Browse the repository at this point in the history
…d to find members
  • Loading branch information
dennisdoomen committed Aug 20, 2023
1 parent fee579b commit 2f146d7
Show file tree
Hide file tree
Showing 7 changed files with 28 additions and 28 deletions.
18 changes: 9 additions & 9 deletions Src/FluentAssertions/Common/TypeExtensions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -184,10 +184,10 @@ public static bool OverridesEquals(this Type type)
/// </returns>
public static PropertyInfo FindProperty(this Type type, string propertyName, MemberVisibility memberVisibility)
{
var properties = type.GetNonPrivateProperties(memberVisibility);
var properties = type.GetProperties(memberVisibility);

return Array.Find(properties, p =>
p.Name == propertyName || p.Name.EndsWith("." + propertyName, StringComparison.OrdinalIgnoreCase));
p.Name == propertyName || p.Name.EndsWith("." + propertyName, StringComparison.Ordinal));
}

/// <summary>
Expand All @@ -198,25 +198,25 @@ public static PropertyInfo FindProperty(this Type type, string propertyName, Mem
/// </returns>
public static FieldInfo FindField(this Type type, string fieldName, MemberVisibility memberVisibility)
{
var fields = type.GetNonPrivateFields(memberVisibility);
var fields = type.GetFields(memberVisibility);

return Array.Find(fields, p =>
p.Name == fieldName || p.Name.EndsWith("." + fieldName, StringComparison.Ordinal));
}

public static MemberInfo[] GetNonPrivateMembers(this Type typeToReflect, MemberVisibility visibility)
public static MemberInfo[] GetMembers(this Type typeToReflect, MemberVisibility visibility)
{
return GetTypeReflectorFor(typeToReflect, visibility).NonPrivateMembers;
return GetTypeReflectorFor(typeToReflect, visibility).Members;
}

public static PropertyInfo[] GetNonPrivateProperties(this Type typeToReflect, MemberVisibility visibility)
public static PropertyInfo[] GetProperties(this Type typeToReflect, MemberVisibility visibility)
{
return GetTypeReflectorFor(typeToReflect, visibility).NonPrivateProperties;
return GetTypeReflectorFor(typeToReflect, visibility).Properties;
}

public static FieldInfo[] GetNonPrivateFields(this Type typeToReflect, MemberVisibility visibility)
public static FieldInfo[] GetFields(this Type typeToReflect, MemberVisibility visibility)
{
return GetTypeReflectorFor(typeToReflect, visibility).NonPrivateFields;
return GetTypeReflectorFor(typeToReflect, visibility).Fields;
}

private static TypeMemberReflector GetTypeReflectorFor(Type typeToReflect, MemberVisibility visibility)
Expand Down
20 changes: 10 additions & 10 deletions Src/FluentAssertions/Common/TypeMemberReflector.cs
Original file line number Diff line number Diff line change
Expand Up @@ -16,22 +16,22 @@ internal sealed class TypeMemberReflector

public TypeMemberReflector(Type typeToReflect, MemberVisibility visibility)
{
NonPrivateProperties = LoadNonPrivateProperties(typeToReflect, visibility);
NonPrivateFields = LoadNonPrivateFields(typeToReflect, visibility);
NonPrivateMembers = NonPrivateProperties.Concat<MemberInfo>(NonPrivateFields).ToArray();
Properties = LoadProperties(typeToReflect, visibility);
Fields = LoadFields(typeToReflect, visibility);
Members = Properties.Concat<MemberInfo>(Fields).ToArray();
}

public MemberInfo[] NonPrivateMembers { get; }
public MemberInfo[] Members { get; }

public PropertyInfo[] NonPrivateProperties { get; }
public PropertyInfo[] Properties { get; }

public FieldInfo[] NonPrivateFields { get; }
public FieldInfo[] Fields { get; }

private static PropertyInfo[] LoadNonPrivateProperties(Type typeToReflect, MemberVisibility visibility)
private static PropertyInfo[] LoadProperties(Type typeToReflect, MemberVisibility visibility)
{
IEnumerable<PropertyInfo> query =
from propertyInfo in GetPropertiesFromHierarchy(typeToReflect, visibility)
where HasNonPrivateGetter(propertyInfo, visibility)
where HasGetter(propertyInfo, visibility)
where !propertyInfo.IsIndexer()
select propertyInfo;

Expand Down Expand Up @@ -64,7 +64,7 @@ private static bool IsExplicitImplementation(PropertyInfo property)
property.Name.Contains('.', StringComparison.Ordinal);
}

private static FieldInfo[] LoadNonPrivateFields(Type typeToReflect, MemberVisibility visibility)
private static FieldInfo[] LoadFields(Type typeToReflect, MemberVisibility visibility)
{
IEnumerable<FieldInfo> query =
from fieldInfo in GetFieldsFromHierarchy(typeToReflect, visibility)
Expand Down Expand Up @@ -165,7 +165,7 @@ private static TMemberInfo[] GetClassMembers<TMemberInfo>(Type typeToReflect,
return members.ToArray();
}

private static bool HasNonPrivateGetter(PropertyInfo propertyInfo, MemberVisibility visibility)
private static bool HasGetter(PropertyInfo propertyInfo, MemberVisibility visibility)
{
MethodInfo getMethod = propertyInfo.GetGetMethod(nonPublic: true);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,11 @@ internal class AllFieldsSelectionRule : IMemberSelectionRule
public IEnumerable<IMember> SelectMembers(INode currentNode, IEnumerable<IMember> selectedMembers,
MemberSelectionContext context)
{
IEnumerable<IMember> selectedNonPrivateFields = context.Type
.GetNonPrivateFields(context.IncludedFields)
IEnumerable<IMember> selectedFields = context.Type
.GetFields(context.IncludedFields)
.Select(info => new Field(info, currentNode));

return selectedMembers.Union(selectedNonPrivateFields).ToList();
return selectedMembers.Union(selectedFields).ToList();
}

/// <summary>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,11 @@ internal class AllPropertiesSelectionRule : IMemberSelectionRule
public IEnumerable<IMember> SelectMembers(INode currentNode, IEnumerable<IMember> selectedMembers,
MemberSelectionContext context)
{
IEnumerable<IMember> selectedNonPrivateProperties = context.Type
.GetNonPrivateProperties(context.IncludedProperties)
IEnumerable<IMember> selectedProperties = context.Type
.GetProperties(context.IncludedProperties)
.Select(info => new Property(context.Type, info, currentNode));

return selectedMembers.Union(selectedNonPrivateProperties).ToList();
return selectedMembers.Union(selectedProperties).ToList();
}

/// <summary>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ public IncludeMemberByPathSelectionRule(MemberPath pathToInclude)
protected override void AddOrRemoveMembersFrom(List<IMember> selectedMembers, INode parent, string parentPath,
MemberSelectionContext context)
{
foreach (MemberInfo memberInfo in context.Type.GetNonPrivateMembers(MemberVisibility.Public | MemberVisibility.Internal))
foreach (MemberInfo memberInfo in context.Type.GetMembers(MemberVisibility.Public | MemberVisibility.Internal))
{
var memberPath = new MemberPath(context.Type, memberInfo.DeclaringType, parentPath.Combine(memberInfo.Name));

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ public IEnumerable<IMember> SelectMembers(INode currentNode, IEnumerable<IMember
{
var members = new List<IMember>(selectedMembers);

foreach (MemberInfo memberInfo in currentNode.Type.GetNonPrivateMembers(MemberVisibility.Public |
foreach (MemberInfo memberInfo in currentNode.Type.GetMembers(MemberVisibility.Public |
MemberVisibility.Internal))
{
IMember member = MemberFactory.Create(memberInfo, currentNode);
Expand Down
2 changes: 1 addition & 1 deletion Src/FluentAssertions/Formatting/DefaultValueFormatter.cs
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ public void Format(object value, FormattedObjectGraph formattedGraph, Formatting
/// <remarks>The default is all non-private members.</remarks>
protected virtual MemberInfo[] GetMembers(Type type)
{
return type.GetNonPrivateMembers(MemberVisibility.Public);
return type.GetMembers(MemberVisibility.Public);
}

private static bool HasCompilerGeneratedToStringImplementation(object value)
Expand Down

0 comments on commit 2f146d7

Please sign in to comment.