public bool Equals( ActionList x, ActionList y) { if (ReferenceEquals(x, y)) { return(true); } if (x == null || y == null) { return(false); } if (x.Id != y.Id) { return(false); } var actionComparer = new ActionInfoComparer(); foreach (var action in x) { if (!y.Any(item => actionComparer.Equals( item, action))) { return(false); } } return(true); }
public bool Equals( ActionInfo x, ActionInfo y) { if (ReferenceEquals(x, y)) { return(true); } if (x == null || y == null) { return(false); } var concernComparer = new ConcernInfoComparer(); var actionComparer = new ActionInfoComparer(); var telemetryComparer = new TelemetryInfoComparer(); if (x.Id != y.Id || x.Type != y.Type || x.Target != y.Target || x.Api != y.Api || !ReferenceEquals( x.Parent, y.Parent) || !concernComparer.Equals( x.TargetConcern, y.TargetConcern) || !actionComparer.Equals( x.TargetAction, y.TargetAction) || !telemetryComparer.Equals( x.Telemetry, y.Telemetry)) { return(false); } return(true); }