diff --git a/Source/Mockolate.SourceGenerators/Sources/Sources.IndexerSetups.cs b/Source/Mockolate.SourceGenerators/Sources/Sources.IndexerSetups.cs index d82ab7a6..defc523d 100644 --- a/Source/Mockolate.SourceGenerators/Sources/Sources.IndexerSetups.cs +++ b/Source/Mockolate.SourceGenerators/Sources/Sources.IndexerSetups.cs @@ -93,7 +93,7 @@ private static void AppendIndexerSetup(StringBuilder sb, int numberOfParameters) string discards = string.Join(", ", Enumerable.Range(1, numberOfParameters).Select(_ => "_")); sb.Append("\t/// ").AppendLine(); - sb.Append("\t/// Sets up a indexer for "); + sb.Append("\t/// Sets up a indexer getter for "); for (int i = 1; i < numberOfParameters - 1; i++) { sb.Append(", "); @@ -102,41 +102,14 @@ private static void AppendIndexerSetup(StringBuilder sb, int numberOfParameters) sb.Append(" and .").AppendLine(); sb.Append("\t/// ").AppendLine(); - sb.Append("\tinternal interface IIndexerSetup").AppendLine(); + sb.Append("\tinternal interface IIndexerGetterSetup").AppendLine(); sb.Append("\t{").AppendLine(); - sb.Append("\t\t/// ").AppendLine(); - sb.Append( - "\t\t/// Flag indicating if the base class implementation should be called, and its return values used as default values.") - .AppendLine(); - sb.Append("\t\t/// ").AppendLine(); - sb.Append("\t\t/// ").AppendLine(); - sb.Append("\t\t/// If not specified, use .").AppendLine(); - sb.Append("\t\t/// ").AppendLine(); - sb.Append("\t\tIIndexerSetup CallingBaseClass(bool callBaseClass = true);").AppendLine(); - sb.AppendLine(); - - sb.Append("\t\t/// ").AppendLine(); - sb.Append("\t\t/// Initializes the indexer with the given .").AppendLine(); - sb.Append("\t\t/// ").AppendLine(); - sb.Append("\t\tIIndexerSetup InitializeWith(TValue value);") - .AppendLine(); - sb.AppendLine(); - - sb.Append("\t\t/// ").AppendLine(); - sb.Append("\t\t/// Initializes the according to the given .") - .AppendLine(); - sb.Append("\t\t/// ").AppendLine(); - sb.Append("\t\tIIndexerSetup InitializeWith(Func<") - .Append(typeParams).Append(", TValue> valueGenerator);").AppendLine(); - sb.AppendLine(); - sb.Append("\t\t/// ").AppendLine(); sb.Append( "\t\t/// Registers a to be invoked whenever the indexer's getter is accessed.") .AppendLine(); sb.Append("\t\t/// ").AppendLine(); - sb.Append("\t\tIIndexerSetupCallbackBuilder OnGet(Action callback);") + sb.Append("\t\tIIndexerSetupCallbackBuilder Do(Action callback);") .AppendLine(); sb.AppendLine(); @@ -148,7 +121,7 @@ private static void AppendIndexerSetup(StringBuilder sb, int numberOfParameters) sb.Append("\t\t/// ").AppendLine(); sb.Append("\t\t/// The callback receives the parameters of the indexer.").AppendLine(); sb.Append("\t\t/// ").AppendLine(); - sb.Append("\t\tIIndexerSetupCallbackBuilder OnGet(Action<") + sb.Append("\t\tIIndexerSetupCallbackBuilder Do(Action<") .Append(typeParams) .Append("> callback);").AppendLine(); sb.AppendLine(); @@ -161,7 +134,7 @@ private static void AppendIndexerSetup(StringBuilder sb, int numberOfParameters) sb.Append("\t\t/// ").AppendLine(); sb.Append("\t\t/// The callback receives the parameters of the indexer and the value of the indexer as last parameter.").AppendLine(); sb.Append("\t\t/// ").AppendLine(); - sb.Append("\t\tIIndexerSetupCallbackBuilder OnGet(Action<") + sb.Append("\t\tIIndexerSetupCallbackBuilder Do(Action<") .Append(typeParams) .Append(", TValue> callback);").AppendLine(); sb.AppendLine(); @@ -174,17 +147,30 @@ private static void AppendIndexerSetup(StringBuilder sb, int numberOfParameters) sb.Append("\t\t/// ").AppendLine(); sb.Append("\t\t/// The callback receives an incrementing access counter as first parameter, the parameters of the indexer and the value of the indexer as last parameter.").AppendLine(); sb.Append("\t\t/// ").AppendLine(); - sb.Append("\t\tIIndexerSetupCallbackBuilder OnGet(Action Do(Action callback);").AppendLine(); + sb.Append("\t}").AppendLine(); sb.AppendLine(); + sb.Append("\t/// ").AppendLine(); + sb.Append("\t/// Sets up a indexer setter for "); + for (int i = 1; i < numberOfParameters - 1; i++) + { + sb.Append(", "); + } + + sb.Append(" and .").AppendLine(); + sb.Append("\t/// ").AppendLine(); + sb.Append("\tinternal interface IIndexerSetterSetup").AppendLine(); + sb.Append("\t{").AppendLine(); sb.Append("\t\t/// ").AppendLine(); sb.Append( "\t\t/// Registers a to be invoked whenever the indexer's setter is accessed.") .AppendLine(); sb.Append("\t\t/// ").AppendLine(); - sb.Append("\t\tIIndexerSetupCallbackBuilder OnSet(Action callback);") + sb.Append("\t\tIIndexerSetupCallbackBuilder Do(Action callback);") .AppendLine(); sb.AppendLine(); @@ -197,7 +183,7 @@ private static void AppendIndexerSetup(StringBuilder sb, int numberOfParameters) sb.Append("\t\t/// The callback receives the value the indexer is set to as single parameter.").AppendLine(); sb.Append("\t\t/// ").AppendLine(); sb.Append("\t\tIIndexerSetupCallbackBuilder OnSet(Action callback);").AppendLine(); + .Append("> Do(Action callback);").AppendLine(); sb.AppendLine(); sb.Append("\t\t/// ").AppendLine(); @@ -208,7 +194,7 @@ private static void AppendIndexerSetup(StringBuilder sb, int numberOfParameters) sb.Append("\t\t/// ").AppendLine(); sb.Append("\t\t/// The callback receives the parameters of the indexer and the value the indexer is set to as last parameter.").AppendLine(); sb.Append("\t\t/// ").AppendLine(); - sb.Append("\t\tIIndexerSetupCallbackBuilder OnSet(Action<") + sb.Append("\t\tIIndexerSetupCallbackBuilder Do(Action<") .Append(typeParams).Append(", TValue> callback);").AppendLine(); sb.AppendLine(); @@ -220,8 +206,62 @@ private static void AppendIndexerSetup(StringBuilder sb, int numberOfParameters) sb.Append("\t\t/// ").AppendLine(); sb.Append("\t\t/// The callback receives an incrementing access counter as first parameter, the parameters of the indexer and the value the indexer is set to as last parameter.").AppendLine(); sb.Append("\t\t/// ").AppendLine(); - sb.Append("\t\tIIndexerSetupCallbackBuilder OnSet(Action Do(Action callback);").AppendLine(); + sb.Append("\t}").AppendLine(); + sb.AppendLine(); + + sb.Append("\t/// ").AppendLine(); + sb.Append("\t/// Sets up a indexer for "); + for (int i = 1; i < numberOfParameters - 1; i++) + { + sb.Append(", "); + } + + sb.Append(" and .").AppendLine(); + sb.Append("\t/// ").AppendLine(); + sb.Append("\tinternal interface IIndexerSetup").AppendLine(); + sb.Append("\t{").AppendLine(); + sb.Append("\t\t/// ").AppendLine(); + sb.Append("\t\t/// Sets up callbacks on the getter.").AppendLine(); + sb.Append("\t\t/// ").AppendLine(); + sb.Append("\t\tIIndexerGetterSetup OnGet { get; }").AppendLine(); + sb.AppendLine(); + + sb.Append("\t\t/// ").AppendLine(); + sb.Append("\t\t/// Sets up callbacks on the setter.").AppendLine(); + sb.Append("\t\t/// ").AppendLine(); + sb.Append("\t\tIIndexerSetterSetup OnSet { get; }").AppendLine(); + sb.AppendLine(); + + sb.Append("\t\t/// ").AppendLine(); + sb.Append( + "\t\t/// Flag indicating if the base class implementation should be called, and its return values used as default values.") + .AppendLine(); + sb.Append("\t\t/// ").AppendLine(); + sb.Append("\t\t/// ").AppendLine(); + sb.Append("\t\t/// If not specified, use .").AppendLine(); + sb.Append("\t\t/// ").AppendLine(); + sb.Append("\t\tIIndexerSetup CallingBaseClass(bool callBaseClass = true);").AppendLine(); + sb.AppendLine(); + + sb.Append("\t\t/// ").AppendLine(); + sb.Append("\t\t/// Initializes the indexer with the given .").AppendLine(); + sb.Append("\t\t/// ").AppendLine(); + sb.Append("\t\tIIndexerSetup InitializeWith(TValue value);") + .AppendLine(); + sb.AppendLine(); + + sb.Append("\t\t/// ").AppendLine(); + sb.Append("\t\t/// Initializes the according to the given .") + .AppendLine(); + sb.Append("\t\t/// ").AppendLine(); + sb.Append("\t\tIIndexerSetup InitializeWith(Func<") + .Append(typeParams).Append(", TValue> valueGenerator);").AppendLine(); sb.AppendLine(); sb.Append("\t\t/// ").AppendLine(); @@ -481,7 +521,9 @@ private static void AppendIndexerSetup(StringBuilder sb, int numberOfParameters) .Append(") : IndexerSetup,") .AppendLine(); sb.Append("\t\tIIndexerSetupCallbackBuilder,").AppendLine(); - sb.Append("\t\tIIndexerSetupReturnBuilder").AppendLine(); + sb.Append("\t\tIIndexerSetupReturnBuilder,").AppendLine(); + sb.Append("\t\tIIndexerGetterSetup,").AppendLine(); + sb.Append("\t\tIIndexerSetterSetup").AppendLine(); sb.Append("\t{").AppendLine(); sb.Append("\t\tprivate readonly List>> _getterCallbacks = [];") @@ -543,9 +585,16 @@ private static void AppendIndexerSetup(StringBuilder sb, int numberOfParameters) sb.Append("\t\t}").AppendLine(); sb.AppendLine(); - sb.Append("\t\t/// ").AppendLine(); - sb.Append("\t\tpublic IIndexerSetupCallbackBuilder OnGet(Action callback)").AppendLine(); + sb.Append("\t\t/// ").AppendLine(); + sb.Append("\t\tpublic IIndexerGetterSetup OnGet").AppendLine(); + sb.Append("\t\t\t=> this;").AppendLine(); + sb.AppendLine(); + + sb.Append("\t\t/// ").AppendLine(); + sb.Append("\t\tIIndexerSetupCallbackBuilder IIndexerGetterSetup.Do(Action callback)").AppendLine(); sb.Append("\t\t{").AppendLine(); sb.Append("\t\t\tCallback>? currentCallback = new((_, ") .Append(discards).Append(", _) => callback());").AppendLine(); @@ -555,8 +604,9 @@ private static void AppendIndexerSetup(StringBuilder sb, int numberOfParameters) sb.Append("\t\t}").AppendLine(); sb.AppendLine(); - sb.Append("\t\t/// ").AppendLine(); - sb.Append("\t\tpublic IIndexerSetupCallbackBuilder OnGet(Action<") + sb.Append("\t\t/// ").AppendLine(); + sb.Append("\t\tIIndexerSetupCallbackBuilder IIndexerGetterSetup.Do(Action<") .Append(typeParams) .Append("> callback)").AppendLine(); sb.Append("\t\t{").AppendLine(); @@ -568,8 +618,9 @@ private static void AppendIndexerSetup(StringBuilder sb, int numberOfParameters) sb.Append("\t\t}").AppendLine(); sb.AppendLine(); - sb.Append("\t\t/// ").AppendLine(); - sb.Append("\t\tpublic IIndexerSetupCallbackBuilder OnGet(Action<") + sb.Append("\t\t/// ").AppendLine(); + sb.Append("\t\tIIndexerSetupCallbackBuilder IIndexerGetterSetup.Do(Action<") .Append(typeParams) .Append(", TValue> callback)").AppendLine(); sb.Append("\t\t{").AppendLine(); @@ -581,8 +632,9 @@ private static void AppendIndexerSetup(StringBuilder sb, int numberOfParameters) sb.Append("\t\t}").AppendLine(); sb.AppendLine(); - sb.Append("\t\t/// ").AppendLine(); - sb.Append("\t\tpublic IIndexerSetupCallbackBuilder OnGet(Action").AppendLine(); + sb.Append("\t\tIIndexerSetupCallbackBuilder IIndexerGetterSetup.Do(Action callback)").AppendLine(); sb.Append("\t\t{").AppendLine(); @@ -594,9 +646,16 @@ private static void AppendIndexerSetup(StringBuilder sb, int numberOfParameters) sb.Append("\t\t}").AppendLine(); sb.AppendLine(); - sb.Append("\t\t/// ").AppendLine(); - sb.Append("\t\tpublic IIndexerSetupCallbackBuilder OnSet(Action callback)").AppendLine(); + sb.Append("\t\t/// ").AppendLine(); + sb.Append("\t\tpublic IIndexerSetterSetup OnSet").AppendLine(); + sb.Append("\t\t\t=> this;").AppendLine(); + sb.AppendLine(); + + sb.Append("\t\t/// ").AppendLine(); + sb.Append("\t\tIIndexerSetupCallbackBuilder IIndexerSetterSetup.Do(Action callback)").AppendLine(); sb.Append("\t\t{").AppendLine(); sb.Append("\t\t\tCallback>? currentCallback = new((_, _, ") .Append(discards).Append(") => callback());").AppendLine(); @@ -606,9 +665,10 @@ private static void AppendIndexerSetup(StringBuilder sb, int numberOfParameters) sb.Append("\t\t}").AppendLine(); sb.AppendLine(); - sb.Append("\t\t/// ").AppendLine(); - sb.Append("\t\tpublic IIndexerSetupCallbackBuilder OnSet(Action callback)") + sb.Append("\t\t/// ").AppendLine(); + sb.Append("\t\tIIndexerSetupCallbackBuilder IIndexerSetterSetup.Do(Action callback)") .AppendLine(); sb.Append("\t\t{").AppendLine(); sb.Append("\t\t\tCallback>? currentCallback = new((_, ") @@ -619,9 +679,10 @@ private static void AppendIndexerSetup(StringBuilder sb, int numberOfParameters) sb.Append("\t\t}").AppendLine(); sb.AppendLine(); - sb.Append("\t\t/// ").AppendLine(); - sb.Append("\t\tpublic IIndexerSetupCallbackBuilder OnSet(Action<") + sb.Append("\t\t/// ").AppendLine(); + sb.Append("\t\tIIndexerSetupCallbackBuilder IIndexerSetterSetup.Do(Action<") .Append(typeParams).Append(", TValue> callback)").AppendLine(); sb.Append("\t\t{").AppendLine(); sb.Append("\t\t\tCallback>? currentCallback = new((_, ") @@ -632,9 +693,10 @@ private static void AppendIndexerSetup(StringBuilder sb, int numberOfParameters) sb.Append("\t\t}").AppendLine(); sb.AppendLine(); - sb.Append("\t\t/// ").AppendLine(); - sb.Append("\t\tpublic IIndexerSetupCallbackBuilder OnSet(Action").AppendLine(); + sb.Append("\t\tIIndexerSetupCallbackBuilder IIndexerSetterSetup.Do(Action callback)").AppendLine(); sb.Append("\t\t{").AppendLine(); sb.Append("\t\t\tCallback(MockBehavior behavior, Func def /// /// Sets up a indexer for . /// -public class IndexerSetup(IParameter match1) - : IndexerSetup, IIndexerSetupCallbackBuilder, IIndexerSetupReturnBuilder +public class IndexerSetup(IParameter match1) : IndexerSetup, + IIndexerSetupCallbackBuilder, IIndexerSetupReturnBuilder, + IIndexerGetterSetup, IIndexerSetterSetup { private readonly List>> _getterCallbacks = []; private readonly List>> _returnCallbacks = []; @@ -143,39 +144,8 @@ public class IndexerSetup(IParameter match1) private int _currentSetterCallbacksIndex; private Func? _initialization; - /// - public IIndexerSetup CallingBaseClass(bool callBaseClass = true) - { - _callBaseClass = callBaseClass; - return this; - } - - /// - public IIndexerSetup InitializeWith(TValue value) - { - if (_initialization is not null) - { - throw new MockException("The indexer is already initialized. You cannot initialize it twice."); - } - - _initialization = _ => value; - return this; - } - - /// - public IIndexerSetup InitializeWith(Func valueGenerator) - { - if (_initialization is not null) - { - throw new MockException("The indexer is already initialized. You cannot initialize it twice."); - } - - _initialization = valueGenerator; - return this; - } - - /// - public IIndexerSetupCallbackBuilder OnGet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerGetterSetup.Do(Action callback) { Callback> currentCallback = new((_, _, _) => callback()); _currentCallback = currentCallback; @@ -183,8 +153,8 @@ public IIndexerSetupCallbackBuilder OnGet(Action callback) return this; } - /// - public IIndexerSetupCallbackBuilder OnGet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerGetterSetup.Do(Action callback) { Callback> currentCallback = new((_, p1, _) => callback(p1)); _currentCallback = currentCallback; @@ -192,8 +162,8 @@ public IIndexerSetupCallbackBuilder OnGet(Action callback) return this; } - /// - public IIndexerSetupCallbackBuilder OnGet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerGetterSetup.Do(Action callback) { Callback> currentCallback = new((_, p1, v) => callback(p1, v)); _currentCallback = currentCallback; @@ -201,8 +171,8 @@ public IIndexerSetupCallbackBuilder OnGet(Action callbac return this; } - /// - public IIndexerSetupCallbackBuilder OnGet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerGetterSetup.Do(Action callback) { Callback> currentCallback = new(callback); _currentCallback = currentCallback; @@ -210,8 +180,8 @@ public IIndexerSetupCallbackBuilder OnGet(Action ca return this; } - /// - public IIndexerSetupCallbackBuilder OnSet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerSetterSetup.Do(Action callback) { Callback> currentCallback = new((_, _, _) => callback()); _currentCallback = currentCallback; @@ -219,8 +189,8 @@ public IIndexerSetupCallbackBuilder OnSet(Action callback) return this; } - /// - public IIndexerSetupCallbackBuilder OnSet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerSetterSetup.Do(Action callback) { Callback> currentCallback = new((_, _, v) => callback(v)); _currentCallback = currentCallback; @@ -228,8 +198,8 @@ public IIndexerSetupCallbackBuilder OnSet(Action callback) return this; } - /// - public IIndexerSetupCallbackBuilder OnSet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerSetterSetup.Do(Action callback) { Callback> currentCallback = new((_, p1, v) => callback(p1, v)); _currentCallback = currentCallback; @@ -237,8 +207,8 @@ public IIndexerSetupCallbackBuilder OnSet(Action callbac return this; } - /// - public IIndexerSetupCallbackBuilder OnSet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerSetterSetup.Do(Action callback) { Callback> currentCallback = new(callback); _currentCallback = currentCallback; @@ -246,6 +216,45 @@ public IIndexerSetupCallbackBuilder OnSet(Action ca return this; } + /// + public IIndexerSetup CallingBaseClass(bool callBaseClass = true) + { + _callBaseClass = callBaseClass; + return this; + } + + /// + public IIndexerSetup InitializeWith(TValue value) + { + if (_initialization is not null) + { + throw new MockException("The indexer is already initialized. You cannot initialize it twice."); + } + + _initialization = _ => value; + return this; + } + + /// + public IIndexerSetup InitializeWith(Func valueGenerator) + { + if (_initialization is not null) + { + throw new MockException("The indexer is already initialized. You cannot initialize it twice."); + } + + _initialization = valueGenerator; + return this; + } + + /// + public IIndexerGetterSetup OnGet + => this; + + /// + public IIndexerSetterSetup OnSet + => this; + /// public IIndexerSetupReturnBuilder Returns(TValue returnValue) { @@ -472,8 +481,9 @@ protected override bool TryGetInitialValue(MockBehavior behavior, Func def /// /// Sets up a indexer for and . /// -public class IndexerSetup(IParameter match1, IParameter match2) - : IndexerSetup, IIndexerSetupCallbackBuilder, IIndexerSetupReturnBuilder +public class IndexerSetup(IParameter match1, IParameter match2) : IndexerSetup + , IIndexerSetupCallbackBuilder, IIndexerSetupReturnBuilder, + IIndexerGetterSetup, IIndexerSetterSetup { private readonly List>> _getterCallbacks = []; private readonly List>> _returnCallbacks = []; @@ -486,39 +496,8 @@ public class IndexerSetup(IParameter match1, IParameter match2) private int _currentSetterCallbacksIndex; private Func? _initialization; - /// - public IIndexerSetup CallingBaseClass(bool callBaseClass = true) - { - _callBaseClass = callBaseClass; - return this; - } - - /// - public IIndexerSetup InitializeWith(TValue value) - { - if (_initialization is not null) - { - throw new MockException("The indexer is already initialized. You cannot initialize it twice."); - } - - _initialization = (_, _) => value; - return this; - } - - /// - public IIndexerSetup InitializeWith(Func valueGenerator) - { - if (_initialization is not null) - { - throw new MockException("The indexer is already initialized. You cannot initialize it twice."); - } - - _initialization = valueGenerator; - return this; - } - - /// - public IIndexerSetupCallbackBuilder OnGet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerGetterSetup.Do(Action callback) { Callback> currentCallback = new((_, _, _, _) => callback()); _currentCallback = currentCallback; @@ -526,8 +505,8 @@ public IIndexerSetupCallbackBuilder OnGet(Action callback) return this; } - /// - public IIndexerSetupCallbackBuilder OnGet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerGetterSetup.Do(Action callback) { Callback> currentCallback = new((_, p1, p2, _) => callback(p1, p2)); _currentCallback = currentCallback; @@ -535,8 +514,8 @@ public IIndexerSetupCallbackBuilder OnGet(Action callbac return this; } - /// - public IIndexerSetupCallbackBuilder OnGet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerGetterSetup.Do(Action callback) { Callback> currentCallback = new((_, p1, p2, v) => callback(p1, p2, v)); _currentCallback = currentCallback; @@ -544,8 +523,9 @@ public IIndexerSetupCallbackBuilder OnGet(Action return this; } - /// - public IIndexerSetupCallbackBuilder OnGet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerGetterSetup.Do( + Action callback) { Callback> currentCallback = new(callback); _currentCallback = currentCallback; @@ -553,8 +533,8 @@ public IIndexerSetupCallbackBuilder OnGet(Action - public IIndexerSetupCallbackBuilder OnSet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerSetterSetup.Do(Action callback) { Callback> currentCallback = new((_, _, _, _) => callback()); _currentCallback = currentCallback; @@ -562,8 +542,8 @@ public IIndexerSetupCallbackBuilder OnSet(Action callback) return this; } - /// - public IIndexerSetupCallbackBuilder OnSet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerSetterSetup.Do(Action callback) { Callback> currentCallback = new((_, _, _, v) => callback(v)); _currentCallback = currentCallback; @@ -571,8 +551,8 @@ public IIndexerSetupCallbackBuilder OnSet(Action callbac return this; } - /// - public IIndexerSetupCallbackBuilder OnSet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerSetterSetup.Do(Action callback) { Callback> currentCallback = new((_, p1, p2, v) => callback(p1, p2, v)); _currentCallback = currentCallback; @@ -580,8 +560,9 @@ public IIndexerSetupCallbackBuilder OnSet(Action return this; } - /// - public IIndexerSetupCallbackBuilder OnSet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerSetterSetup.Do( + Action callback) { Callback> currentCallback = new(callback); _currentCallback = currentCallback; @@ -589,6 +570,45 @@ public IIndexerSetupCallbackBuilder OnSet(Action + public IIndexerSetup CallingBaseClass(bool callBaseClass = true) + { + _callBaseClass = callBaseClass; + return this; + } + + /// + public IIndexerSetup InitializeWith(TValue value) + { + if (_initialization is not null) + { + throw new MockException("The indexer is already initialized. You cannot initialize it twice."); + } + + _initialization = (_, _) => value; + return this; + } + + /// + public IIndexerSetup InitializeWith(Func valueGenerator) + { + if (_initialization is not null) + { + throw new MockException("The indexer is already initialized. You cannot initialize it twice."); + } + + _initialization = valueGenerator; + return this; + } + + /// + public IIndexerGetterSetup OnGet + => this; + + /// + public IIndexerSetterSetup OnSet + => this; + /// public IIndexerSetupReturnBuilder Returns(TValue returnValue) { @@ -825,8 +845,9 @@ protected override bool TryGetInitialValue(MockBehavior behavior, Func def public class IndexerSetup( IParameter match1, IParameter match2, - IParameter match3) - : IndexerSetup, IIndexerSetupCallbackBuilder, IIndexerSetupReturnBuilder + IParameter match3) : IndexerSetup, + IIndexerSetupCallbackBuilder, IIndexerSetupReturnBuilder, + IIndexerGetterSetup, IIndexerSetterSetup { private readonly List>> _getterCallbacks = []; private readonly List>> _returnCallbacks = []; @@ -839,39 +860,8 @@ public class IndexerSetup( private int _currentSetterCallbacksIndex; private Func? _initialization; - /// - public IIndexerSetup CallingBaseClass(bool callBaseClass = true) - { - _callBaseClass = callBaseClass; - return this; - } - - /// - public IIndexerSetup InitializeWith(TValue value) - { - if (_initialization is not null) - { - throw new MockException("The indexer is already initialized. You cannot initialize it twice."); - } - - _initialization = (_, _, _) => value; - return this; - } - - /// - public IIndexerSetup InitializeWith(Func valueGenerator) - { - if (_initialization is not null) - { - throw new MockException("The indexer is already initialized. You cannot initialize it twice."); - } - - _initialization = valueGenerator; - return this; - } - - /// - public IIndexerSetupCallbackBuilder OnGet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerGetterSetup.Do(Action callback) { Callback> currentCallback = new((_, _, _, _, _) => callback()); _currentCallback = currentCallback; @@ -879,8 +869,9 @@ public IIndexerSetupCallbackBuilder OnGet(Action callback) return this; } - /// - public IIndexerSetupCallbackBuilder OnGet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerGetterSetup.Do( + Action callback) { Callback> currentCallback = new((_, p1, p2, p3, _) => callback(p1, p2, p3)); _currentCallback = currentCallback; @@ -888,8 +879,9 @@ public IIndexerSetupCallbackBuilder OnGet(Action return this; } - /// - public IIndexerSetupCallbackBuilder OnGet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerGetterSetup.Do( + Action callback) { Callback> currentCallback = new((_, p1, p2, p3, v) => callback(p1, p2, p3, v)); _currentCallback = currentCallback; @@ -897,8 +889,9 @@ public IIndexerSetupCallbackBuilder OnGet(Action - public IIndexerSetupCallbackBuilder OnGet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerGetterSetup.Do( + Action callback) { Callback> currentCallback = new(callback); _currentCallback = currentCallback; @@ -906,8 +899,8 @@ public IIndexerSetupCallbackBuilder OnGet(Action - public IIndexerSetupCallbackBuilder OnSet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerSetterSetup.Do(Action callback) { Callback> currentCallback = new((_, _, _, _, _) => callback()); _currentCallback = currentCallback; @@ -915,8 +908,8 @@ public IIndexerSetupCallbackBuilder OnSet(Action callback) return this; } - /// - public IIndexerSetupCallbackBuilder OnSet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerSetterSetup.Do(Action callback) { Callback> currentCallback = new((_, _, _, _, v) => callback(v)); _currentCallback = currentCallback; @@ -924,8 +917,9 @@ public IIndexerSetupCallbackBuilder OnSet(Action cal return this; } - /// - public IIndexerSetupCallbackBuilder OnSet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerSetterSetup.Do( + Action callback) { Callback> currentCallback = new((_, p1, p2, p3, v) => callback(p1, p2, p3, v)); _currentCallback = currentCallback; @@ -933,8 +927,9 @@ public IIndexerSetupCallbackBuilder OnSet(Action - public IIndexerSetupCallbackBuilder OnSet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerSetterSetup.Do( + Action callback) { Callback> currentCallback = new(callback); _currentCallback = currentCallback; @@ -942,6 +937,45 @@ public IIndexerSetupCallbackBuilder OnSet(Action + public IIndexerSetup CallingBaseClass(bool callBaseClass = true) + { + _callBaseClass = callBaseClass; + return this; + } + + /// + public IIndexerSetup InitializeWith(TValue value) + { + if (_initialization is not null) + { + throw new MockException("The indexer is already initialized. You cannot initialize it twice."); + } + + _initialization = (_, _, _) => value; + return this; + } + + /// + public IIndexerSetup InitializeWith(Func valueGenerator) + { + if (_initialization is not null) + { + throw new MockException("The indexer is already initialized. You cannot initialize it twice."); + } + + _initialization = valueGenerator; + return this; + } + + /// + public IIndexerGetterSetup OnGet + => this; + + /// + public IIndexerSetterSetup OnSet + => this; + /// public IIndexerSetupReturnBuilder Returns(TValue returnValue) { @@ -1189,8 +1223,9 @@ public class IndexerSetup( IParameter match2, IParameter match3, IParameter match4) - : IndexerSetup, IIndexerSetupCallbackBuilder, - IIndexerSetupReturnBuilder + : IndexerSetup, + IIndexerSetupCallbackBuilder, IIndexerSetupReturnBuilder, + IIndexerGetterSetup, IIndexerSetterSetup { private readonly List>> _getterCallbacks = []; private readonly List>> _returnCallbacks = []; @@ -1203,39 +1238,8 @@ public class IndexerSetup( private int _currentSetterCallbacksIndex; private Func? _initialization; - /// - public IIndexerSetup CallingBaseClass(bool callBaseClass = true) - { - _callBaseClass = callBaseClass; - return this; - } - - /// - public IIndexerSetup InitializeWith(TValue value) - { - if (_initialization is not null) - { - throw new MockException("The indexer is already initialized. You cannot initialize it twice."); - } - - _initialization = (_, _, _, _) => value; - return this; - } - - /// - public IIndexerSetup InitializeWith(Func valueGenerator) - { - if (_initialization is not null) - { - throw new MockException("The indexer is already initialized. You cannot initialize it twice."); - } - - _initialization = valueGenerator; - return this; - } - - /// - public IIndexerSetupCallbackBuilder OnGet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerGetterSetup.Do(Action callback) { Callback> currentCallback = new((_, _, _, _, _, _) => callback()); _currentCallback = currentCallback; @@ -1243,26 +1247,31 @@ public IIndexerSetupCallbackBuilder OnGet(Action callbac return this; } - /// - public IIndexerSetupCallbackBuilder OnGet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerGetterSetup.Do( + Action callback) { - Callback> currentCallback = new((_, p1, p2, p3, p4, _) => callback(p1, p2, p3, p4)); + Callback> currentCallback = + new((_, p1, p2, p3, p4, _) => callback(p1, p2, p3, p4)); _currentCallback = currentCallback; _getterCallbacks.Add(currentCallback); return this; } - /// - public IIndexerSetupCallbackBuilder OnGet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerGetterSetup.Do( + Action callback) { - Callback> currentCallback = new((_, p1, p2, p3, p4, v) => callback(p1, p2, p3, p4, v)); + Callback> currentCallback = + new((_, p1, p2, p3, p4, v) => callback(p1, p2, p3, p4, v)); _currentCallback = currentCallback; _getterCallbacks.Add(currentCallback); return this; } - /// - public IIndexerSetupCallbackBuilder OnGet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerGetterSetup.Do( + Action callback) { Callback> currentCallback = new(callback); _currentCallback = currentCallback; @@ -1270,8 +1279,8 @@ public IIndexerSetupCallbackBuilder OnGet(Action - public IIndexerSetupCallbackBuilder OnSet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerSetterSetup.Do(Action callback) { Callback> currentCallback = new((_, _, _, _, _, _) => callback()); _currentCallback = currentCallback; @@ -1279,8 +1288,9 @@ public IIndexerSetupCallbackBuilder OnSet(Action callbac return this; } - /// - public IIndexerSetupCallbackBuilder OnSet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerSetterSetup.Do( + Action callback) { Callback> currentCallback = new((_, _, _, _, _, v) => callback(v)); _currentCallback = currentCallback; @@ -1288,8 +1298,9 @@ public IIndexerSetupCallbackBuilder OnSet(Action return this; } - /// - public IIndexerSetupCallbackBuilder OnSet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerSetterSetup.Do( + Action callback) { Callback> currentCallback = new((_, p1, p2, p3, p4, v) => callback(p1, p2, p3, p4, v)); @@ -1298,8 +1309,9 @@ public IIndexerSetupCallbackBuilder OnSet(Action - public IIndexerSetupCallbackBuilder OnSet(Action callback) + /// + IIndexerSetupCallbackBuilder IIndexerSetterSetup.Do( + Action callback) { Callback> currentCallback = new(callback); _currentCallback = currentCallback; @@ -1307,6 +1319,45 @@ public IIndexerSetupCallbackBuilder OnSet(Action + public IIndexerSetup CallingBaseClass(bool callBaseClass = true) + { + _callBaseClass = callBaseClass; + return this; + } + + /// + public IIndexerSetup InitializeWith(TValue value) + { + if (_initialization is not null) + { + throw new MockException("The indexer is already initialized. You cannot initialize it twice."); + } + + _initialization = (_, _, _, _) => value; + return this; + } + + /// + public IIndexerSetup InitializeWith(Func valueGenerator) + { + if (_initialization is not null) + { + throw new MockException("The indexer is already initialized. You cannot initialize it twice."); + } + + _initialization = valueGenerator; + return this; + } + + /// + public IIndexerGetterSetup OnGet + => this; + + /// + public IIndexerSetterSetup OnSet + => this; + /// public IIndexerSetupReturnBuilder Returns(TValue returnValue) { diff --git a/Source/Mockolate/Setup/Interfaces.IndexerSetup.cs b/Source/Mockolate/Setup/Interfaces.IndexerSetup.cs index c1cbb758..96366484 100644 --- a/Source/Mockolate/Setup/Interfaces.IndexerSetup.cs +++ b/Source/Mockolate/Setup/Interfaces.IndexerSetup.cs @@ -34,32 +34,14 @@ bool TryGetInitialValue(MockBehavior behavior, Func defaultValue } /// -/// Sets up a indexer for . +/// Sets up a indexer getter for . /// -public interface IIndexerSetup +public interface IIndexerGetterSetup { - /// - /// Flag indicating if the base class implementation should be called, and its return values used as default values. - /// - /// - /// If not specified, use . - /// - IIndexerSetup CallingBaseClass(bool callBaseClass = true); - - /// - /// Initializes the indexer with the given . - /// - IIndexerSetup InitializeWith(TValue value); - - /// - /// Initializes the indexer according to the given . - /// - IIndexerSetup InitializeWith(Func valueGenerator); - /// /// Registers a callback to be invoked whenever the indexer's getter is accessed. /// - IIndexerSetupCallbackBuilder OnGet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the indexer's getter is accessed. @@ -67,7 +49,7 @@ public interface IIndexerSetup /// /// The callback receives the parameter of the indexer. /// - IIndexerSetupCallbackBuilder OnGet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the indexer's getter is accessed. @@ -75,7 +57,7 @@ public interface IIndexerSetup /// /// The callback receives the parameter of the indexer and the value of the indexer as last parameter. /// - IIndexerSetupCallbackBuilder OnGet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the indexer's getter is accessed. @@ -83,12 +65,18 @@ public interface IIndexerSetup /// /// The callback receives an incrementing access counter as first parameter, the parameter of the indexer and the value of the indexer as last parameter. /// - IIndexerSetupCallbackBuilder OnGet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); +} +/// +/// Sets up a indexer setter for . +/// +public interface IIndexerSetterSetup +{ /// /// Registers a callback to be invoked whenever the indexer's setter is accessed. /// - IIndexerSetupCallbackBuilder OnSet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the indexer's setter is accessed. @@ -96,7 +84,7 @@ public interface IIndexerSetup /// /// The callback receives the value the indexer is set to as single parameter. /// - IIndexerSetupCallbackBuilder OnSet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the indexer's setter is accessed. @@ -104,7 +92,7 @@ public interface IIndexerSetup /// /// The callback receives the parameter of the indexer and the value the indexer is set to as last parameter. /// - IIndexerSetupCallbackBuilder OnSet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the indexer's setter is accessed. @@ -112,7 +100,41 @@ public interface IIndexerSetup /// /// The callback receives an incrementing access counter as first parameter, the parameter of the indexer and the value the indexer is set to as last parameter. /// - IIndexerSetupCallbackBuilder OnSet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); +} + +/// +/// Sets up a indexer for . +/// +public interface IIndexerSetup +{ + /// + /// Sets up callbacks on the getter. + /// + IIndexerGetterSetup OnGet { get; } + + /// + /// Sets up callbacks on the setter. + /// + IIndexerSetterSetup OnSet { get; } + + /// + /// Flag indicating if the base class implementation should be called, and its return values used as default values. + /// + /// + /// If not specified, use . + /// + IIndexerSetup CallingBaseClass(bool callBaseClass = true); + + /// + /// Initializes the indexer with the given . + /// + IIndexerSetup InitializeWith(TValue value); + + /// + /// Initializes the indexer according to the given . + /// + IIndexerSetup InitializeWith(Func valueGenerator); /// /// Registers the for this indexer. @@ -261,32 +283,14 @@ public interface IIndexerSetupReturnWhenBuilder } /// -/// Sets up a indexer for and . +/// Sets up a indexer getter for and . /// -public interface IIndexerSetup +public interface IIndexerGetterSetup { - /// - /// Flag indicating if the base class implementation should be called, and its return values used as default values. - /// - /// - /// If not specified, use . - /// - IIndexerSetup CallingBaseClass(bool callBaseClass = true); - - /// - /// Initializes the indexer with the given . - /// - IIndexerSetup InitializeWith(TValue value); - - /// - /// Initializes the indexer according to the given . - /// - IIndexerSetup InitializeWith(Func valueGenerator); - /// /// Registers a callback to be invoked whenever the indexer's getter is accessed. /// - IIndexerSetupCallbackBuilder OnGet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the indexer's getter is accessed. @@ -294,7 +298,7 @@ public interface IIndexerSetup /// /// The callback receives the parameters of the indexer. /// - IIndexerSetupCallbackBuilder OnGet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the indexer's getter is accessed. @@ -302,7 +306,7 @@ public interface IIndexerSetup /// /// The callback receives the parameters of the indexer and the value of the indexer as last parameter. /// - IIndexerSetupCallbackBuilder OnGet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the indexer's getter is accessed. @@ -310,12 +314,19 @@ public interface IIndexerSetup /// /// The callback receives an incrementing access counter as first parameter, the parameters of the indexer and the value of the indexer as last parameter. /// - IIndexerSetupCallbackBuilder OnGet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); +} + +/// +/// Sets up a indexer setter for and . +/// +public interface IIndexerSetterSetup +{ /// /// Registers a callback to be invoked whenever the indexer's setter is accessed. /// - IIndexerSetupCallbackBuilder OnSet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the indexer's setter is accessed. @@ -323,7 +334,7 @@ public interface IIndexerSetup /// /// The callback receives the value the indexer is set to as single parameter. /// - IIndexerSetupCallbackBuilder OnSet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the indexer's setter is accessed. @@ -331,7 +342,7 @@ public interface IIndexerSetup /// /// The callback receives the parameters of the indexer and the value the indexer is set to as last parameter. /// - IIndexerSetupCallbackBuilder OnSet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the indexer's setter is accessed. @@ -339,7 +350,41 @@ public interface IIndexerSetup /// /// The callback receives an incrementing access counter as first parameter, the parameters of the indexer and the value the indexer is set to as last parameter. /// - IIndexerSetupCallbackBuilder OnSet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); +} + +/// +/// Sets up a indexer for and . +/// +public interface IIndexerSetup +{ + /// + /// Sets up callbacks on the getter. + /// + IIndexerGetterSetup OnGet { get; } + + /// + /// Sets up callbacks on the setter. + /// + IIndexerSetterSetup OnSet { get; } + + /// + /// Flag indicating if the base class implementation should be called, and its return values used as default values. + /// + /// + /// If not specified, use . + /// + IIndexerSetup CallingBaseClass(bool callBaseClass = true); + + /// + /// Initializes the indexer with the given . + /// + IIndexerSetup InitializeWith(TValue value); + + /// + /// Initializes the indexer according to the given . + /// + IIndexerSetup InitializeWith(Func valueGenerator); /// /// Registers the for this indexer. @@ -495,33 +540,15 @@ public interface IIndexerSetupReturnWhenBuilder } /// -/// Sets up a indexer for , and +/// Sets up a indexer getter for , and /// . /// -public interface IIndexerSetup +public interface IIndexerGetterSetup { - /// - /// Flag indicating if the base class implementation should be called, and its return values used as default values. - /// - /// - /// If not specified, use . - /// - IIndexerSetup CallingBaseClass(bool callBaseClass = true); - - /// - /// Initializes the indexer with the given . - /// - IIndexerSetup InitializeWith(TValue value); - - /// - /// Initializes the indexer according to the given . - /// - IIndexerSetup InitializeWith(Func valueGenerator); - /// /// Registers a callback to be invoked whenever the indexer's getter is accessed. /// - IIndexerSetupCallbackBuilder OnGet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the indexer's getter is accessed. @@ -529,7 +556,7 @@ public interface IIndexerSetup /// /// The callback receives the parameters of the indexer. /// - IIndexerSetupCallbackBuilder OnGet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the indexer's getter is accessed. @@ -537,7 +564,7 @@ public interface IIndexerSetup /// /// The callback receives the parameters of the indexer and the value of the indexer as last parameter. /// - IIndexerSetupCallbackBuilder OnGet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the indexer's getter is accessed. @@ -545,12 +572,19 @@ public interface IIndexerSetup /// /// The callback receives an incrementing access counter as first parameter, the parameters of the indexer and the value of the indexer as last parameter. /// - IIndexerSetupCallbackBuilder OnGet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); +} +/// +/// Sets up a indexer setter for , and +/// . +/// +public interface IIndexerSetterSetup +{ /// /// Registers a callback to be invoked whenever the indexer's setter is accessed. /// - IIndexerSetupCallbackBuilder OnSet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the indexer's setter is accessed. @@ -558,7 +592,7 @@ public interface IIndexerSetup /// /// The callback receives the value the indexer is set to as single parameter. /// - IIndexerSetupCallbackBuilder OnSet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the indexer's setter is accessed. @@ -566,7 +600,7 @@ public interface IIndexerSetup /// /// The callback receives the parameters of the indexer and the value the indexer is set to as last parameter. /// - IIndexerSetupCallbackBuilder OnSet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the indexer's setter is accessed. @@ -574,7 +608,42 @@ public interface IIndexerSetup /// /// The callback receives an incrementing access counter as first parameter, the parameters of the indexer and the value the indexer is set to as last parameter. /// - IIndexerSetupCallbackBuilder OnSet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); +} + +/// +/// Sets up a indexer for , and +/// . +/// +public interface IIndexerSetup +{ + /// + /// Sets up callbacks on the getter. + /// + IIndexerGetterSetup OnGet { get; } + + /// + /// Sets up callbacks on the setter. + /// + IIndexerSetterSetup OnSet { get; } + + /// + /// Flag indicating if the base class implementation should be called, and its return values used as default values. + /// + /// + /// If not specified, use . + /// + IIndexerSetup CallingBaseClass(bool callBaseClass = true); + + /// + /// Initializes the indexer with the given . + /// + IIndexerSetup InitializeWith(TValue value); + + /// + /// Initializes the indexer according to the given . + /// + IIndexerSetup InitializeWith(Func valueGenerator); /// /// Registers the for this indexer. @@ -732,33 +801,15 @@ public interface IIndexerSetupReturnWhenBuilder #pragma warning disable S2436 // Types and methods should not have too many generic parameters /// -/// Sets up a indexer for , , +/// Sets up a indexer getter for , , /// and . /// -public interface IIndexerSetup +public interface IIndexerGetterSetup { - /// - /// Flag indicating if the base class implementation should be called, and its return values used as default values. - /// - /// - /// If not specified, use . - /// - IIndexerSetup CallingBaseClass(bool callBaseClass = true); - - /// - /// Initializes the indexer with the given . - /// - IIndexerSetup InitializeWith(TValue value); - - /// - /// Initializes the indexer according to the given . - /// - IIndexerSetup InitializeWith(Func valueGenerator); - /// /// Registers a callback to be invoked whenever the indexer's getter is accessed. /// - IIndexerSetupCallbackBuilder OnGet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the indexer's getter is accessed. @@ -766,7 +817,7 @@ public interface IIndexerSetup /// /// The callback receives the parameters of the indexer. /// - IIndexerSetupCallbackBuilder OnGet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the indexer's getter is accessed. @@ -774,7 +825,7 @@ public interface IIndexerSetup /// /// The callback receives the parameters of the indexer and the value of the indexer as last parameter. /// - IIndexerSetupCallbackBuilder OnGet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the indexer's getter is accessed. @@ -782,12 +833,19 @@ public interface IIndexerSetup /// /// The callback receives an incrementing access counter as first parameter, the parameters of the indexer and the value of the indexer as last parameter. /// - IIndexerSetupCallbackBuilder OnGet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); +} +/// +/// Sets up a indexer setter for , , +/// and . +/// +public interface IIndexerSetterSetup +{ /// /// Registers a callback to be invoked whenever the indexer's setter is accessed. /// - IIndexerSetupCallbackBuilder OnSet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the indexer's setter is accessed. @@ -795,7 +853,7 @@ public interface IIndexerSetup /// /// The callback receives the value the indexer is set to as single parameter. /// - IIndexerSetupCallbackBuilder OnSet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the indexer's setter is accessed. @@ -803,7 +861,7 @@ public interface IIndexerSetup /// /// The callback receives the parameters of the indexer and the value the indexer is set to as last parameter. /// - IIndexerSetupCallbackBuilder OnSet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the indexer's setter is accessed. @@ -811,7 +869,42 @@ public interface IIndexerSetup /// /// The callback receives an incrementing access counter as first parameter, the parameters of the indexer and the value the indexer is set to as last parameter. /// - IIndexerSetupCallbackBuilder OnSet(Action callback); + IIndexerSetupCallbackBuilder Do(Action callback); +} + +/// +/// Sets up a indexer for , , +/// and . +/// +public interface IIndexerSetup +{ + /// + /// Sets up callbacks on the getter. + /// + IIndexerGetterSetup OnGet { get; } + + /// + /// Sets up callbacks on the setter. + /// + IIndexerSetterSetup OnSet { get; } + + /// + /// Flag indicating if the base class implementation should be called, and its return values used as default values. + /// + /// + /// If not specified, use . + /// + IIndexerSetup CallingBaseClass(bool callBaseClass = true); + + /// + /// Initializes the indexer with the given . + /// + IIndexerSetup InitializeWith(TValue value); + + /// + /// Initializes the indexer according to the given . + /// + IIndexerSetup InitializeWith(Func valueGenerator); /// /// Registers the for this indexer. diff --git a/Source/Mockolate/Setup/Interfaces.PropertySetup.cs b/Source/Mockolate/Setup/Interfaces.PropertySetup.cs index 47bae6fd..f4db83f0 100644 --- a/Source/Mockolate/Setup/Interfaces.PropertySetup.cs +++ b/Source/Mockolate/Setup/Interfaces.PropertySetup.cs @@ -40,27 +40,14 @@ public interface IInteractivePropertySetup : ISetup } /// -/// Interface for setting up a property with fluent syntax. +/// Interface for setting up a property getter with fluent syntax. /// -public interface IPropertySetup +public interface IPropertyGetterSetup { - /// - /// Flag indicating if the base class implementation should be called, and its return values used as default values. - /// - /// - /// If not specified, use . - /// - IPropertySetup CallingBaseClass(bool callBaseClass = true); - - /// - /// Initializes the property with the given . - /// - IPropertySetup InitializeWith(T value); - /// /// Registers a callback to be invoked whenever the property's getter is accessed. /// - IPropertySetupCallbackBuilder OnGet(Action callback); + IPropertySetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the property's getter is accessed. @@ -68,20 +55,27 @@ public interface IPropertySetup /// /// The callback receives the value of the property as single parameter. /// - IPropertySetupCallbackBuilder OnGet(Action callback); + IPropertySetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the property's getter is accessed. /// /// - /// The callback receives an incrementing access counter as first parameter and the value of the property as second parameter. + /// The callback receives an incrementing access counter as first parameter and the value of the property as second + /// parameter. /// - IPropertySetupCallbackBuilder OnGet(Action callback); + IPropertySetupCallbackBuilder Do(Action callback); +} +/// +/// Interface for setting up a property setter with fluent syntax. +/// +public interface IPropertySetterSetup +{ /// /// Registers a callback to be invoked whenever the property's value is set. /// - IPropertySetupCallbackBuilder OnSet(Action callback); + IPropertySetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the property's value is set. @@ -89,15 +83,45 @@ public interface IPropertySetup /// /// The callback receives the value the property is set to as single parameter. /// - IPropertySetupCallbackBuilder OnSet(Action callback); + IPropertySetupCallbackBuilder Do(Action callback); /// /// Registers a callback to be invoked whenever the property's value is set. /// /// - /// The callback receives an incrementing access counter as first parameter and the value the property is set to as second parameter. + /// The callback receives an incrementing access counter as first parameter and the value the property is set to as + /// second parameter. + /// + IPropertySetupCallbackBuilder Do(Action callback); +} + +/// +/// Interface for setting up a property with fluent syntax. +/// +public interface IPropertySetup +{ + /// + /// Sets up callbacks on the getter. + /// + IPropertyGetterSetup OnGet { get; } + + /// + /// Sets up callbacks on the setter. + /// + IPropertySetterSetup OnSet { get; } + + /// + /// Flag indicating if the base class implementation should be called, and its return values used as default values. + /// + /// + /// If not specified, use . /// - IPropertySetupCallbackBuilder OnSet(Action callback); + IPropertySetup CallingBaseClass(bool callBaseClass = true); + + /// + /// Initializes the property with the given . + /// + IPropertySetup InitializeWith(T value); /// /// Registers the for this property. diff --git a/Source/Mockolate/Setup/PropertySetup.cs b/Source/Mockolate/Setup/PropertySetup.cs index 06444902..f769eda2 100644 --- a/Source/Mockolate/Setup/PropertySetup.cs +++ b/Source/Mockolate/Setup/PropertySetup.cs @@ -120,8 +120,9 @@ protected override TResult InvokeGetter(MockBehavior behavior, Func /// Sets up a property. /// -public class PropertySetup(string name) - : PropertySetup, IPropertySetupCallbackBuilder, IPropertySetupReturnBuilder +public class PropertySetup(string name) : PropertySetup, + IPropertySetupCallbackBuilder, IPropertySetupReturnBuilder, + IPropertyGetterSetup, IPropertySetterSetup { private readonly List>> _getterCallbacks = []; private readonly List>> _returnCallbacks = []; @@ -326,8 +327,12 @@ public IPropertySetup InitializeWith(T value) return this; } - /// - public IPropertySetupCallbackBuilder OnGet(Action callback) + /// + public IPropertyGetterSetup OnGet + => this; + + /// + IPropertySetupCallbackBuilder IPropertyGetterSetup.Do(Action callback) { Callback> item = new((_, _) => callback()); _currentCallback = item; @@ -335,8 +340,8 @@ public IPropertySetupCallbackBuilder OnGet(Action callback) return this; } - /// - public IPropertySetupCallbackBuilder OnGet(Action callback) + /// + IPropertySetupCallbackBuilder IPropertyGetterSetup.Do(Action callback) { Callback> item = new((_, v) => callback(v)); _currentCallback = item; @@ -344,8 +349,8 @@ public IPropertySetupCallbackBuilder OnGet(Action callback) return this; } - /// - public IPropertySetupCallbackBuilder OnGet(Action callback) + /// + IPropertySetupCallbackBuilder IPropertyGetterSetup.Do(Action callback) { Callback> item = new(callback); _currentCallback = item; @@ -353,8 +358,12 @@ public IPropertySetupCallbackBuilder OnGet(Action callback) return this; } - /// - public IPropertySetupCallbackBuilder OnSet(Action callback) + /// + public IPropertySetterSetup OnSet + => this; + + /// + IPropertySetupCallbackBuilder IPropertySetterSetup.Do(Action callback) { Callback> item = new((_, _) => callback()); _currentCallback = item; @@ -362,8 +371,8 @@ public IPropertySetupCallbackBuilder OnSet(Action callback) return this; } - /// - public IPropertySetupCallbackBuilder OnSet(Action callback) + /// + IPropertySetupCallbackBuilder IPropertySetterSetup.Do(Action callback) { Callback> item = new((_, newValue) => callback(newValue)); _currentCallback = item; @@ -371,8 +380,8 @@ public IPropertySetupCallbackBuilder OnSet(Action callback) return this; } - /// - public IPropertySetupCallbackBuilder OnSet(Action callback) + /// + IPropertySetupCallbackBuilder IPropertySetterSetup.Do(Action callback) { Callback> item = new(callback); _currentCallback = item; diff --git a/Tests/Mockolate.Api.Tests/Expected/Mockolate_net10.0.txt b/Tests/Mockolate.Api.Tests/Expected/Mockolate_net10.0.txt index 11044324..17de5ccb 100644 --- a/Tests/Mockolate.Api.Tests/Expected/Mockolate_net10.0.txt +++ b/Tests/Mockolate.Api.Tests/Expected/Mockolate_net10.0.txt @@ -589,6 +589,62 @@ namespace Mockolate.Setup public bool Invoke(bool wasInvoked, ref int index, System.Action callback) { } public bool Invoke(ref int index, System.Func callback, out TReturn? returnValue) { } } + public interface IIndexerGetterSetup + { + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + } + public interface IIndexerGetterSetup + { + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + } + public interface IIndexerGetterSetup + { + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + } + public interface IIndexerGetterSetup + { + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + } + public interface IIndexerSetterSetup + { + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + } + public interface IIndexerSetterSetup + { + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + } + public interface IIndexerSetterSetup + { + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + } + public interface IIndexerSetterSetup + { + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + } public interface IIndexerSetupCallbackBuilder : Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetup { Mockolate.Setup.IIndexerSetupCallbackBuilder InParallel(); @@ -667,17 +723,11 @@ namespace Mockolate.Setup } public interface IIndexerSetup { + Mockolate.Setup.IIndexerGetterSetup OnGet { get; } + Mockolate.Setup.IIndexerSetterSetup OnSet { get; } Mockolate.Setup.IIndexerSetup CallingBaseClass(bool callBaseClass = true); Mockolate.Setup.IIndexerSetup InitializeWith(System.Func valueGenerator); Mockolate.Setup.IIndexerSetup InitializeWith(TValue value); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); @@ -691,17 +741,11 @@ namespace Mockolate.Setup } public interface IIndexerSetup { + Mockolate.Setup.IIndexerGetterSetup OnGet { get; } + Mockolate.Setup.IIndexerSetterSetup OnSet { get; } Mockolate.Setup.IIndexerSetup CallingBaseClass(bool callBaseClass = true); Mockolate.Setup.IIndexerSetup InitializeWith(System.Func valueGenerator); Mockolate.Setup.IIndexerSetup InitializeWith(TValue value); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); @@ -715,17 +759,11 @@ namespace Mockolate.Setup } public interface IIndexerSetup { + Mockolate.Setup.IIndexerGetterSetup OnGet { get; } + Mockolate.Setup.IIndexerSetterSetup OnSet { get; } Mockolate.Setup.IIndexerSetup CallingBaseClass(bool callBaseClass = true); Mockolate.Setup.IIndexerSetup InitializeWith(System.Func valueGenerator); Mockolate.Setup.IIndexerSetup InitializeWith(TValue value); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); @@ -739,17 +777,11 @@ namespace Mockolate.Setup } public interface IIndexerSetup { + Mockolate.Setup.IIndexerGetterSetup OnGet { get; } + Mockolate.Setup.IIndexerSetterSetup OnSet { get; } Mockolate.Setup.IIndexerSetup CallingBaseClass(bool callBaseClass = true); Mockolate.Setup.IIndexerSetup InitializeWith(System.Func valueGenerator); Mockolate.Setup.IIndexerSetup InitializeWith(TValue value); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); @@ -809,6 +841,18 @@ namespace Mockolate.Setup { T Subject { get; } } + public interface IPropertyGetterSetup + { + Mockolate.Setup.IPropertySetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IPropertySetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IPropertySetupCallbackBuilder Do(System.Action callback); + } + public interface IPropertySetterSetup + { + Mockolate.Setup.IPropertySetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IPropertySetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IPropertySetupCallbackBuilder Do(System.Action callback); + } public interface IPropertySetupCallbackBuilder : Mockolate.Setup.IPropertySetupWhenBuilder, Mockolate.Setup.IPropertySetup { Mockolate.Setup.IPropertySetupWhenBuilder InParallel(); @@ -830,14 +874,10 @@ namespace Mockolate.Setup } public interface IPropertySetup { + Mockolate.Setup.IPropertyGetterSetup OnGet { get; } + Mockolate.Setup.IPropertySetterSetup OnSet { get; } Mockolate.Setup.IPropertySetup CallingBaseClass(bool callBaseClass = true); Mockolate.Setup.IPropertySetup InitializeWith(T value); - Mockolate.Setup.IPropertySetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IPropertySetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IPropertySetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IPropertySetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IPropertySetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IPropertySetupCallbackBuilder OnSet(System.Action callback); Mockolate.Setup.IPropertySetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IPropertySetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IPropertySetupReturnBuilder Returns(T returnValue); @@ -1199,9 +1239,11 @@ namespace Mockolate.Setup public TResult GetResult(System.Func defaultValueGenerator) { } public TResult GetResult(TResult baseValue, System.Func defaultValueGenerator) { } } - public class IndexerSetup : Mockolate.Setup.IndexerSetup, Mockolate.Setup.IIndexerSetupCallbackBuilder, Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetupReturnBuilder, Mockolate.Setup.IIndexerSetupReturnWhenBuilder, Mockolate.Setup.IIndexerSetup + public class IndexerSetup : Mockolate.Setup.IndexerSetup, Mockolate.Setup.IIndexerGetterSetup, Mockolate.Setup.IIndexerSetterSetup, Mockolate.Setup.IIndexerSetupCallbackBuilder, Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetupReturnBuilder, Mockolate.Setup.IIndexerSetupReturnWhenBuilder, Mockolate.Setup.IIndexerSetup { public IndexerSetup(Mockolate.Parameters.IParameter match1) { } + public Mockolate.Setup.IIndexerGetterSetup OnGet { get; } + public Mockolate.Setup.IIndexerSetterSetup OnSet { get; } public Mockolate.Setup.IIndexerSetup CallingBaseClass(bool callBaseClass = true) { } protected override T ExecuteGetterCallback(Mockolate.Interactions.IndexerGetterAccess indexerGetterAccess, T value, Mockolate.MockBehavior behavior) { } protected override void ExecuteSetterCallback(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior) { } @@ -1210,14 +1252,6 @@ namespace Mockolate.Setup public Mockolate.Setup.IIndexerSetup InitializeWith(System.Func valueGenerator) { } public Mockolate.Setup.IIndexerSetup InitializeWith(TValue value) { } protected override bool IsMatch(object?[] parameters) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } @@ -1230,9 +1264,11 @@ namespace Mockolate.Setup where TException : System.Exception, new () { } protected override bool TryGetInitialValue(Mockolate.MockBehavior behavior, System.Func defaultValueGenerator, object?[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T value) { } } - public class IndexerSetup : Mockolate.Setup.IndexerSetup, Mockolate.Setup.IIndexerSetupCallbackBuilder, Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetupReturnBuilder, Mockolate.Setup.IIndexerSetupReturnWhenBuilder, Mockolate.Setup.IIndexerSetup + public class IndexerSetup : Mockolate.Setup.IndexerSetup, Mockolate.Setup.IIndexerGetterSetup, Mockolate.Setup.IIndexerSetterSetup, Mockolate.Setup.IIndexerSetupCallbackBuilder, Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetupReturnBuilder, Mockolate.Setup.IIndexerSetupReturnWhenBuilder, Mockolate.Setup.IIndexerSetup { public IndexerSetup(Mockolate.Parameters.IParameter match1, Mockolate.Parameters.IParameter match2) { } + public Mockolate.Setup.IIndexerGetterSetup OnGet { get; } + public Mockolate.Setup.IIndexerSetterSetup OnSet { get; } public Mockolate.Setup.IIndexerSetup CallingBaseClass(bool callBaseClass = true) { } protected override T ExecuteGetterCallback(Mockolate.Interactions.IndexerGetterAccess indexerGetterAccess, T value, Mockolate.MockBehavior behavior) { } protected override void ExecuteSetterCallback(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior) { } @@ -1241,14 +1277,6 @@ namespace Mockolate.Setup public Mockolate.Setup.IIndexerSetup InitializeWith(System.Func valueGenerator) { } public Mockolate.Setup.IIndexerSetup InitializeWith(TValue value) { } protected override bool IsMatch(object?[] parameters) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } @@ -1261,9 +1289,11 @@ namespace Mockolate.Setup where TException : System.Exception, new () { } protected override bool TryGetInitialValue(Mockolate.MockBehavior behavior, System.Func defaultValueGenerator, object?[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T value) { } } - public class IndexerSetup : Mockolate.Setup.IndexerSetup, Mockolate.Setup.IIndexerSetupCallbackBuilder, Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetupReturnBuilder, Mockolate.Setup.IIndexerSetupReturnWhenBuilder, Mockolate.Setup.IIndexerSetup + public class IndexerSetup : Mockolate.Setup.IndexerSetup, Mockolate.Setup.IIndexerGetterSetup, Mockolate.Setup.IIndexerSetterSetup, Mockolate.Setup.IIndexerSetupCallbackBuilder, Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetupReturnBuilder, Mockolate.Setup.IIndexerSetupReturnWhenBuilder, Mockolate.Setup.IIndexerSetup { public IndexerSetup(Mockolate.Parameters.IParameter match1, Mockolate.Parameters.IParameter match2, Mockolate.Parameters.IParameter match3) { } + public Mockolate.Setup.IIndexerGetterSetup OnGet { get; } + public Mockolate.Setup.IIndexerSetterSetup OnSet { get; } public Mockolate.Setup.IIndexerSetup CallingBaseClass(bool callBaseClass = true) { } protected override T ExecuteGetterCallback(Mockolate.Interactions.IndexerGetterAccess indexerGetterAccess, T value, Mockolate.MockBehavior behavior) { } protected override void ExecuteSetterCallback(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior) { } @@ -1272,14 +1302,6 @@ namespace Mockolate.Setup public Mockolate.Setup.IIndexerSetup InitializeWith(System.Func valueGenerator) { } public Mockolate.Setup.IIndexerSetup InitializeWith(TValue value) { } protected override bool IsMatch(object?[] parameters) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } @@ -1292,9 +1314,11 @@ namespace Mockolate.Setup where TException : System.Exception, new () { } protected override bool TryGetInitialValue(Mockolate.MockBehavior behavior, System.Func defaultValueGenerator, object?[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T value) { } } - public class IndexerSetup : Mockolate.Setup.IndexerSetup, Mockolate.Setup.IIndexerSetupCallbackBuilder, Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetupReturnBuilder, Mockolate.Setup.IIndexerSetupReturnWhenBuilder, Mockolate.Setup.IIndexerSetup + public class IndexerSetup : Mockolate.Setup.IndexerSetup, Mockolate.Setup.IIndexerGetterSetup, Mockolate.Setup.IIndexerSetterSetup, Mockolate.Setup.IIndexerSetupCallbackBuilder, Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetupReturnBuilder, Mockolate.Setup.IIndexerSetupReturnWhenBuilder, Mockolate.Setup.IIndexerSetup { public IndexerSetup(Mockolate.Parameters.IParameter match1, Mockolate.Parameters.IParameter match2, Mockolate.Parameters.IParameter match3, Mockolate.Parameters.IParameter match4) { } + public Mockolate.Setup.IIndexerGetterSetup OnGet { get; } + public Mockolate.Setup.IIndexerSetterSetup OnSet { get; } public Mockolate.Setup.IIndexerSetup CallingBaseClass(bool callBaseClass = true) { } protected override T ExecuteGetterCallback(Mockolate.Interactions.IndexerGetterAccess indexerGetterAccess, T value, Mockolate.MockBehavior behavior) { } protected override void ExecuteSetterCallback(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior) { } @@ -1303,14 +1327,6 @@ namespace Mockolate.Setup public Mockolate.Setup.IIndexerSetup InitializeWith(System.Func valueGenerator) { } public Mockolate.Setup.IIndexerSetup InitializeWith(TValue value) { } protected override bool IsMatch(object?[] parameters) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } @@ -1366,10 +1382,12 @@ namespace Mockolate.Setup protected abstract void InvokeSetter(object? value, Mockolate.MockBehavior behavior); protected abstract bool Matches(Mockolate.Interactions.PropertyAccess propertyAccess); } - public class PropertySetup : Mockolate.Setup.PropertySetup, Mockolate.Setup.IPropertySetupCallbackBuilder, Mockolate.Setup.IPropertySetupReturnBuilder, Mockolate.Setup.IPropertySetupReturnWhenBuilder, Mockolate.Setup.IPropertySetupWhenBuilder, Mockolate.Setup.IPropertySetup + public class PropertySetup : Mockolate.Setup.PropertySetup, Mockolate.Setup.IPropertyGetterSetup, Mockolate.Setup.IPropertySetterSetup, Mockolate.Setup.IPropertySetupCallbackBuilder, Mockolate.Setup.IPropertySetupReturnBuilder, Mockolate.Setup.IPropertySetupReturnWhenBuilder, Mockolate.Setup.IPropertySetupWhenBuilder, Mockolate.Setup.IPropertySetup { public PropertySetup(string name) { } public override string Name { get; } + public Mockolate.Setup.IPropertyGetterSetup OnGet { get; } + public Mockolate.Setup.IPropertySetterSetup OnSet { get; } public Mockolate.Setup.IPropertySetup CallingBaseClass(bool callBaseClass = true) { } protected override bool? GetCallBaseClass() { } protected override void InitializeValue(object? value) { } @@ -1377,12 +1395,6 @@ namespace Mockolate.Setup protected override TResult InvokeGetter(Mockolate.MockBehavior behavior, System.Func? defaultValueGenerator) { } protected override void InvokeSetter(object? value, Mockolate.MockBehavior behavior) { } protected override bool Matches(Mockolate.Interactions.PropertyAccess propertyAccess) { } - public Mockolate.Setup.IPropertySetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IPropertySetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IPropertySetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IPropertySetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IPropertySetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IPropertySetupCallbackBuilder OnSet(System.Action callback) { } public Mockolate.Setup.IPropertySetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IPropertySetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IPropertySetupReturnBuilder Returns(T returnValue) { } diff --git a/Tests/Mockolate.Api.Tests/Expected/Mockolate_net8.0.txt b/Tests/Mockolate.Api.Tests/Expected/Mockolate_net8.0.txt index 15681869..469abd31 100644 --- a/Tests/Mockolate.Api.Tests/Expected/Mockolate_net8.0.txt +++ b/Tests/Mockolate.Api.Tests/Expected/Mockolate_net8.0.txt @@ -588,6 +588,62 @@ namespace Mockolate.Setup public bool Invoke(bool wasInvoked, ref int index, System.Action callback) { } public bool Invoke(ref int index, System.Func callback, out TReturn? returnValue) { } } + public interface IIndexerGetterSetup + { + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + } + public interface IIndexerGetterSetup + { + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + } + public interface IIndexerGetterSetup + { + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + } + public interface IIndexerGetterSetup + { + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + } + public interface IIndexerSetterSetup + { + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + } + public interface IIndexerSetterSetup + { + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + } + public interface IIndexerSetterSetup + { + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + } + public interface IIndexerSetterSetup + { + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + } public interface IIndexerSetupCallbackBuilder : Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetup { Mockolate.Setup.IIndexerSetupCallbackBuilder InParallel(); @@ -666,17 +722,11 @@ namespace Mockolate.Setup } public interface IIndexerSetup { + Mockolate.Setup.IIndexerGetterSetup OnGet { get; } + Mockolate.Setup.IIndexerSetterSetup OnSet { get; } Mockolate.Setup.IIndexerSetup CallingBaseClass(bool callBaseClass = true); Mockolate.Setup.IIndexerSetup InitializeWith(System.Func valueGenerator); Mockolate.Setup.IIndexerSetup InitializeWith(TValue value); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); @@ -690,17 +740,11 @@ namespace Mockolate.Setup } public interface IIndexerSetup { + Mockolate.Setup.IIndexerGetterSetup OnGet { get; } + Mockolate.Setup.IIndexerSetterSetup OnSet { get; } Mockolate.Setup.IIndexerSetup CallingBaseClass(bool callBaseClass = true); Mockolate.Setup.IIndexerSetup InitializeWith(System.Func valueGenerator); Mockolate.Setup.IIndexerSetup InitializeWith(TValue value); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); @@ -714,17 +758,11 @@ namespace Mockolate.Setup } public interface IIndexerSetup { + Mockolate.Setup.IIndexerGetterSetup OnGet { get; } + Mockolate.Setup.IIndexerSetterSetup OnSet { get; } Mockolate.Setup.IIndexerSetup CallingBaseClass(bool callBaseClass = true); Mockolate.Setup.IIndexerSetup InitializeWith(System.Func valueGenerator); Mockolate.Setup.IIndexerSetup InitializeWith(TValue value); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); @@ -738,17 +776,11 @@ namespace Mockolate.Setup } public interface IIndexerSetup { + Mockolate.Setup.IIndexerGetterSetup OnGet { get; } + Mockolate.Setup.IIndexerSetterSetup OnSet { get; } Mockolate.Setup.IIndexerSetup CallingBaseClass(bool callBaseClass = true); Mockolate.Setup.IIndexerSetup InitializeWith(System.Func valueGenerator); Mockolate.Setup.IIndexerSetup InitializeWith(TValue value); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); @@ -808,6 +840,18 @@ namespace Mockolate.Setup { T Subject { get; } } + public interface IPropertyGetterSetup + { + Mockolate.Setup.IPropertySetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IPropertySetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IPropertySetupCallbackBuilder Do(System.Action callback); + } + public interface IPropertySetterSetup + { + Mockolate.Setup.IPropertySetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IPropertySetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IPropertySetupCallbackBuilder Do(System.Action callback); + } public interface IPropertySetupCallbackBuilder : Mockolate.Setup.IPropertySetupWhenBuilder, Mockolate.Setup.IPropertySetup { Mockolate.Setup.IPropertySetupWhenBuilder InParallel(); @@ -829,14 +873,10 @@ namespace Mockolate.Setup } public interface IPropertySetup { + Mockolate.Setup.IPropertyGetterSetup OnGet { get; } + Mockolate.Setup.IPropertySetterSetup OnSet { get; } Mockolate.Setup.IPropertySetup CallingBaseClass(bool callBaseClass = true); Mockolate.Setup.IPropertySetup InitializeWith(T value); - Mockolate.Setup.IPropertySetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IPropertySetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IPropertySetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IPropertySetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IPropertySetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IPropertySetupCallbackBuilder OnSet(System.Action callback); Mockolate.Setup.IPropertySetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IPropertySetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IPropertySetupReturnBuilder Returns(T returnValue); @@ -1198,9 +1238,11 @@ namespace Mockolate.Setup public TResult GetResult(System.Func defaultValueGenerator) { } public TResult GetResult(TResult baseValue, System.Func defaultValueGenerator) { } } - public class IndexerSetup : Mockolate.Setup.IndexerSetup, Mockolate.Setup.IIndexerSetupCallbackBuilder, Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetupReturnBuilder, Mockolate.Setup.IIndexerSetupReturnWhenBuilder, Mockolate.Setup.IIndexerSetup + public class IndexerSetup : Mockolate.Setup.IndexerSetup, Mockolate.Setup.IIndexerGetterSetup, Mockolate.Setup.IIndexerSetterSetup, Mockolate.Setup.IIndexerSetupCallbackBuilder, Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetupReturnBuilder, Mockolate.Setup.IIndexerSetupReturnWhenBuilder, Mockolate.Setup.IIndexerSetup { public IndexerSetup(Mockolate.Parameters.IParameter match1) { } + public Mockolate.Setup.IIndexerGetterSetup OnGet { get; } + public Mockolate.Setup.IIndexerSetterSetup OnSet { get; } public Mockolate.Setup.IIndexerSetup CallingBaseClass(bool callBaseClass = true) { } protected override T ExecuteGetterCallback(Mockolate.Interactions.IndexerGetterAccess indexerGetterAccess, T value, Mockolate.MockBehavior behavior) { } protected override void ExecuteSetterCallback(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior) { } @@ -1209,14 +1251,6 @@ namespace Mockolate.Setup public Mockolate.Setup.IIndexerSetup InitializeWith(System.Func valueGenerator) { } public Mockolate.Setup.IIndexerSetup InitializeWith(TValue value) { } protected override bool IsMatch(object?[] parameters) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } @@ -1229,9 +1263,11 @@ namespace Mockolate.Setup where TException : System.Exception, new () { } protected override bool TryGetInitialValue(Mockolate.MockBehavior behavior, System.Func defaultValueGenerator, object?[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T value) { } } - public class IndexerSetup : Mockolate.Setup.IndexerSetup, Mockolate.Setup.IIndexerSetupCallbackBuilder, Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetupReturnBuilder, Mockolate.Setup.IIndexerSetupReturnWhenBuilder, Mockolate.Setup.IIndexerSetup + public class IndexerSetup : Mockolate.Setup.IndexerSetup, Mockolate.Setup.IIndexerGetterSetup, Mockolate.Setup.IIndexerSetterSetup, Mockolate.Setup.IIndexerSetupCallbackBuilder, Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetupReturnBuilder, Mockolate.Setup.IIndexerSetupReturnWhenBuilder, Mockolate.Setup.IIndexerSetup { public IndexerSetup(Mockolate.Parameters.IParameter match1, Mockolate.Parameters.IParameter match2) { } + public Mockolate.Setup.IIndexerGetterSetup OnGet { get; } + public Mockolate.Setup.IIndexerSetterSetup OnSet { get; } public Mockolate.Setup.IIndexerSetup CallingBaseClass(bool callBaseClass = true) { } protected override T ExecuteGetterCallback(Mockolate.Interactions.IndexerGetterAccess indexerGetterAccess, T value, Mockolate.MockBehavior behavior) { } protected override void ExecuteSetterCallback(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior) { } @@ -1240,14 +1276,6 @@ namespace Mockolate.Setup public Mockolate.Setup.IIndexerSetup InitializeWith(System.Func valueGenerator) { } public Mockolate.Setup.IIndexerSetup InitializeWith(TValue value) { } protected override bool IsMatch(object?[] parameters) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } @@ -1260,9 +1288,11 @@ namespace Mockolate.Setup where TException : System.Exception, new () { } protected override bool TryGetInitialValue(Mockolate.MockBehavior behavior, System.Func defaultValueGenerator, object?[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T value) { } } - public class IndexerSetup : Mockolate.Setup.IndexerSetup, Mockolate.Setup.IIndexerSetupCallbackBuilder, Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetupReturnBuilder, Mockolate.Setup.IIndexerSetupReturnWhenBuilder, Mockolate.Setup.IIndexerSetup + public class IndexerSetup : Mockolate.Setup.IndexerSetup, Mockolate.Setup.IIndexerGetterSetup, Mockolate.Setup.IIndexerSetterSetup, Mockolate.Setup.IIndexerSetupCallbackBuilder, Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetupReturnBuilder, Mockolate.Setup.IIndexerSetupReturnWhenBuilder, Mockolate.Setup.IIndexerSetup { public IndexerSetup(Mockolate.Parameters.IParameter match1, Mockolate.Parameters.IParameter match2, Mockolate.Parameters.IParameter match3) { } + public Mockolate.Setup.IIndexerGetterSetup OnGet { get; } + public Mockolate.Setup.IIndexerSetterSetup OnSet { get; } public Mockolate.Setup.IIndexerSetup CallingBaseClass(bool callBaseClass = true) { } protected override T ExecuteGetterCallback(Mockolate.Interactions.IndexerGetterAccess indexerGetterAccess, T value, Mockolate.MockBehavior behavior) { } protected override void ExecuteSetterCallback(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior) { } @@ -1271,14 +1301,6 @@ namespace Mockolate.Setup public Mockolate.Setup.IIndexerSetup InitializeWith(System.Func valueGenerator) { } public Mockolate.Setup.IIndexerSetup InitializeWith(TValue value) { } protected override bool IsMatch(object?[] parameters) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } @@ -1291,9 +1313,11 @@ namespace Mockolate.Setup where TException : System.Exception, new () { } protected override bool TryGetInitialValue(Mockolate.MockBehavior behavior, System.Func defaultValueGenerator, object?[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T value) { } } - public class IndexerSetup : Mockolate.Setup.IndexerSetup, Mockolate.Setup.IIndexerSetupCallbackBuilder, Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetupReturnBuilder, Mockolate.Setup.IIndexerSetupReturnWhenBuilder, Mockolate.Setup.IIndexerSetup + public class IndexerSetup : Mockolate.Setup.IndexerSetup, Mockolate.Setup.IIndexerGetterSetup, Mockolate.Setup.IIndexerSetterSetup, Mockolate.Setup.IIndexerSetupCallbackBuilder, Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetupReturnBuilder, Mockolate.Setup.IIndexerSetupReturnWhenBuilder, Mockolate.Setup.IIndexerSetup { public IndexerSetup(Mockolate.Parameters.IParameter match1, Mockolate.Parameters.IParameter match2, Mockolate.Parameters.IParameter match3, Mockolate.Parameters.IParameter match4) { } + public Mockolate.Setup.IIndexerGetterSetup OnGet { get; } + public Mockolate.Setup.IIndexerSetterSetup OnSet { get; } public Mockolate.Setup.IIndexerSetup CallingBaseClass(bool callBaseClass = true) { } protected override T ExecuteGetterCallback(Mockolate.Interactions.IndexerGetterAccess indexerGetterAccess, T value, Mockolate.MockBehavior behavior) { } protected override void ExecuteSetterCallback(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior) { } @@ -1302,14 +1326,6 @@ namespace Mockolate.Setup public Mockolate.Setup.IIndexerSetup InitializeWith(System.Func valueGenerator) { } public Mockolate.Setup.IIndexerSetup InitializeWith(TValue value) { } protected override bool IsMatch(object?[] parameters) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } @@ -1365,10 +1381,12 @@ namespace Mockolate.Setup protected abstract void InvokeSetter(object? value, Mockolate.MockBehavior behavior); protected abstract bool Matches(Mockolate.Interactions.PropertyAccess propertyAccess); } - public class PropertySetup : Mockolate.Setup.PropertySetup, Mockolate.Setup.IPropertySetupCallbackBuilder, Mockolate.Setup.IPropertySetupReturnBuilder, Mockolate.Setup.IPropertySetupReturnWhenBuilder, Mockolate.Setup.IPropertySetupWhenBuilder, Mockolate.Setup.IPropertySetup + public class PropertySetup : Mockolate.Setup.PropertySetup, Mockolate.Setup.IPropertyGetterSetup, Mockolate.Setup.IPropertySetterSetup, Mockolate.Setup.IPropertySetupCallbackBuilder, Mockolate.Setup.IPropertySetupReturnBuilder, Mockolate.Setup.IPropertySetupReturnWhenBuilder, Mockolate.Setup.IPropertySetupWhenBuilder, Mockolate.Setup.IPropertySetup { public PropertySetup(string name) { } public override string Name { get; } + public Mockolate.Setup.IPropertyGetterSetup OnGet { get; } + public Mockolate.Setup.IPropertySetterSetup OnSet { get; } public Mockolate.Setup.IPropertySetup CallingBaseClass(bool callBaseClass = true) { } protected override bool? GetCallBaseClass() { } protected override void InitializeValue(object? value) { } @@ -1376,12 +1394,6 @@ namespace Mockolate.Setup protected override TResult InvokeGetter(Mockolate.MockBehavior behavior, System.Func? defaultValueGenerator) { } protected override void InvokeSetter(object? value, Mockolate.MockBehavior behavior) { } protected override bool Matches(Mockolate.Interactions.PropertyAccess propertyAccess) { } - public Mockolate.Setup.IPropertySetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IPropertySetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IPropertySetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IPropertySetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IPropertySetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IPropertySetupCallbackBuilder OnSet(System.Action callback) { } public Mockolate.Setup.IPropertySetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IPropertySetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IPropertySetupReturnBuilder Returns(T returnValue) { } diff --git a/Tests/Mockolate.Api.Tests/Expected/Mockolate_netstandard2.0.txt b/Tests/Mockolate.Api.Tests/Expected/Mockolate_netstandard2.0.txt index 7d2f9bdf..101e888d 100644 --- a/Tests/Mockolate.Api.Tests/Expected/Mockolate_netstandard2.0.txt +++ b/Tests/Mockolate.Api.Tests/Expected/Mockolate_netstandard2.0.txt @@ -565,6 +565,62 @@ namespace Mockolate.Setup public bool Invoke(bool wasInvoked, ref int index, System.Action callback) { } public bool Invoke(ref int index, System.Func callback, out TReturn? returnValue) { } } + public interface IIndexerGetterSetup + { + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + } + public interface IIndexerGetterSetup + { + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + } + public interface IIndexerGetterSetup + { + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + } + public interface IIndexerGetterSetup + { + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + } + public interface IIndexerSetterSetup + { + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + } + public interface IIndexerSetterSetup + { + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + } + public interface IIndexerSetterSetup + { + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + } + public interface IIndexerSetterSetup + { + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IIndexerSetupCallbackBuilder Do(System.Action callback); + } public interface IIndexerSetupCallbackBuilder : Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetup { Mockolate.Setup.IIndexerSetupCallbackBuilder InParallel(); @@ -643,17 +699,11 @@ namespace Mockolate.Setup } public interface IIndexerSetup { + Mockolate.Setup.IIndexerGetterSetup OnGet { get; } + Mockolate.Setup.IIndexerSetterSetup OnSet { get; } Mockolate.Setup.IIndexerSetup CallingBaseClass(bool callBaseClass = true); Mockolate.Setup.IIndexerSetup InitializeWith(System.Func valueGenerator); Mockolate.Setup.IIndexerSetup InitializeWith(TValue value); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); @@ -667,17 +717,11 @@ namespace Mockolate.Setup } public interface IIndexerSetup { + Mockolate.Setup.IIndexerGetterSetup OnGet { get; } + Mockolate.Setup.IIndexerSetterSetup OnSet { get; } Mockolate.Setup.IIndexerSetup CallingBaseClass(bool callBaseClass = true); Mockolate.Setup.IIndexerSetup InitializeWith(System.Func valueGenerator); Mockolate.Setup.IIndexerSetup InitializeWith(TValue value); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); @@ -691,17 +735,11 @@ namespace Mockolate.Setup } public interface IIndexerSetup { + Mockolate.Setup.IIndexerGetterSetup OnGet { get; } + Mockolate.Setup.IIndexerSetterSetup OnSet { get; } Mockolate.Setup.IIndexerSetup CallingBaseClass(bool callBaseClass = true); Mockolate.Setup.IIndexerSetup InitializeWith(System.Func valueGenerator); Mockolate.Setup.IIndexerSetup InitializeWith(TValue value); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); @@ -715,17 +753,11 @@ namespace Mockolate.Setup } public interface IIndexerSetup { + Mockolate.Setup.IIndexerGetterSetup OnGet { get; } + Mockolate.Setup.IIndexerSetterSetup OnSet { get; } Mockolate.Setup.IIndexerSetup CallingBaseClass(bool callBaseClass = true); Mockolate.Setup.IIndexerSetup InitializeWith(System.Func valueGenerator); Mockolate.Setup.IIndexerSetup InitializeWith(TValue value); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback); @@ -785,6 +817,18 @@ namespace Mockolate.Setup { T Subject { get; } } + public interface IPropertyGetterSetup + { + Mockolate.Setup.IPropertySetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IPropertySetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IPropertySetupCallbackBuilder Do(System.Action callback); + } + public interface IPropertySetterSetup + { + Mockolate.Setup.IPropertySetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IPropertySetupCallbackBuilder Do(System.Action callback); + Mockolate.Setup.IPropertySetupCallbackBuilder Do(System.Action callback); + } public interface IPropertySetupCallbackBuilder : Mockolate.Setup.IPropertySetupWhenBuilder, Mockolate.Setup.IPropertySetup { Mockolate.Setup.IPropertySetupWhenBuilder InParallel(); @@ -806,14 +850,10 @@ namespace Mockolate.Setup } public interface IPropertySetup { + Mockolate.Setup.IPropertyGetterSetup OnGet { get; } + Mockolate.Setup.IPropertySetterSetup OnSet { get; } Mockolate.Setup.IPropertySetup CallingBaseClass(bool callBaseClass = true); Mockolate.Setup.IPropertySetup InitializeWith(T value); - Mockolate.Setup.IPropertySetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IPropertySetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IPropertySetupCallbackBuilder OnGet(System.Action callback); - Mockolate.Setup.IPropertySetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IPropertySetupCallbackBuilder OnSet(System.Action callback); - Mockolate.Setup.IPropertySetupCallbackBuilder OnSet(System.Action callback); Mockolate.Setup.IPropertySetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IPropertySetupReturnBuilder Returns(System.Func callback); Mockolate.Setup.IPropertySetupReturnBuilder Returns(T returnValue); @@ -1175,9 +1215,11 @@ namespace Mockolate.Setup public TResult GetResult(System.Func defaultValueGenerator) { } public TResult GetResult(TResult baseValue, System.Func defaultValueGenerator) { } } - public class IndexerSetup : Mockolate.Setup.IndexerSetup, Mockolate.Setup.IIndexerSetupCallbackBuilder, Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetupReturnBuilder, Mockolate.Setup.IIndexerSetupReturnWhenBuilder, Mockolate.Setup.IIndexerSetup + public class IndexerSetup : Mockolate.Setup.IndexerSetup, Mockolate.Setup.IIndexerGetterSetup, Mockolate.Setup.IIndexerSetterSetup, Mockolate.Setup.IIndexerSetupCallbackBuilder, Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetupReturnBuilder, Mockolate.Setup.IIndexerSetupReturnWhenBuilder, Mockolate.Setup.IIndexerSetup { public IndexerSetup(Mockolate.Parameters.IParameter match1) { } + public Mockolate.Setup.IIndexerGetterSetup OnGet { get; } + public Mockolate.Setup.IIndexerSetterSetup OnSet { get; } public Mockolate.Setup.IIndexerSetup CallingBaseClass(bool callBaseClass = true) { } protected override T ExecuteGetterCallback(Mockolate.Interactions.IndexerGetterAccess indexerGetterAccess, T value, Mockolate.MockBehavior behavior) { } protected override void ExecuteSetterCallback(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior) { } @@ -1186,14 +1228,6 @@ namespace Mockolate.Setup public Mockolate.Setup.IIndexerSetup InitializeWith(System.Func valueGenerator) { } public Mockolate.Setup.IIndexerSetup InitializeWith(TValue value) { } protected override bool IsMatch(object?[] parameters) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } @@ -1206,9 +1240,11 @@ namespace Mockolate.Setup where TException : System.Exception, new () { } protected override bool TryGetInitialValue(Mockolate.MockBehavior behavior, System.Func defaultValueGenerator, object?[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T value) { } } - public class IndexerSetup : Mockolate.Setup.IndexerSetup, Mockolate.Setup.IIndexerSetupCallbackBuilder, Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetupReturnBuilder, Mockolate.Setup.IIndexerSetupReturnWhenBuilder, Mockolate.Setup.IIndexerSetup + public class IndexerSetup : Mockolate.Setup.IndexerSetup, Mockolate.Setup.IIndexerGetterSetup, Mockolate.Setup.IIndexerSetterSetup, Mockolate.Setup.IIndexerSetupCallbackBuilder, Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetupReturnBuilder, Mockolate.Setup.IIndexerSetupReturnWhenBuilder, Mockolate.Setup.IIndexerSetup { public IndexerSetup(Mockolate.Parameters.IParameter match1, Mockolate.Parameters.IParameter match2) { } + public Mockolate.Setup.IIndexerGetterSetup OnGet { get; } + public Mockolate.Setup.IIndexerSetterSetup OnSet { get; } public Mockolate.Setup.IIndexerSetup CallingBaseClass(bool callBaseClass = true) { } protected override T ExecuteGetterCallback(Mockolate.Interactions.IndexerGetterAccess indexerGetterAccess, T value, Mockolate.MockBehavior behavior) { } protected override void ExecuteSetterCallback(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior) { } @@ -1217,14 +1253,6 @@ namespace Mockolate.Setup public Mockolate.Setup.IIndexerSetup InitializeWith(System.Func valueGenerator) { } public Mockolate.Setup.IIndexerSetup InitializeWith(TValue value) { } protected override bool IsMatch(object?[] parameters) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } @@ -1237,9 +1265,11 @@ namespace Mockolate.Setup where TException : System.Exception, new () { } protected override bool TryGetInitialValue(Mockolate.MockBehavior behavior, System.Func defaultValueGenerator, object?[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T value) { } } - public class IndexerSetup : Mockolate.Setup.IndexerSetup, Mockolate.Setup.IIndexerSetupCallbackBuilder, Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetupReturnBuilder, Mockolate.Setup.IIndexerSetupReturnWhenBuilder, Mockolate.Setup.IIndexerSetup + public class IndexerSetup : Mockolate.Setup.IndexerSetup, Mockolate.Setup.IIndexerGetterSetup, Mockolate.Setup.IIndexerSetterSetup, Mockolate.Setup.IIndexerSetupCallbackBuilder, Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetupReturnBuilder, Mockolate.Setup.IIndexerSetupReturnWhenBuilder, Mockolate.Setup.IIndexerSetup { public IndexerSetup(Mockolate.Parameters.IParameter match1, Mockolate.Parameters.IParameter match2, Mockolate.Parameters.IParameter match3) { } + public Mockolate.Setup.IIndexerGetterSetup OnGet { get; } + public Mockolate.Setup.IIndexerSetterSetup OnSet { get; } public Mockolate.Setup.IIndexerSetup CallingBaseClass(bool callBaseClass = true) { } protected override T ExecuteGetterCallback(Mockolate.Interactions.IndexerGetterAccess indexerGetterAccess, T value, Mockolate.MockBehavior behavior) { } protected override void ExecuteSetterCallback(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior) { } @@ -1248,14 +1278,6 @@ namespace Mockolate.Setup public Mockolate.Setup.IIndexerSetup InitializeWith(System.Func valueGenerator) { } public Mockolate.Setup.IIndexerSetup InitializeWith(TValue value) { } protected override bool IsMatch(object?[] parameters) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } @@ -1268,9 +1290,11 @@ namespace Mockolate.Setup where TException : System.Exception, new () { } protected override bool TryGetInitialValue(Mockolate.MockBehavior behavior, System.Func defaultValueGenerator, object?[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T value) { } } - public class IndexerSetup : Mockolate.Setup.IndexerSetup, Mockolate.Setup.IIndexerSetupCallbackBuilder, Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetupReturnBuilder, Mockolate.Setup.IIndexerSetupReturnWhenBuilder, Mockolate.Setup.IIndexerSetup + public class IndexerSetup : Mockolate.Setup.IndexerSetup, Mockolate.Setup.IIndexerGetterSetup, Mockolate.Setup.IIndexerSetterSetup, Mockolate.Setup.IIndexerSetupCallbackBuilder, Mockolate.Setup.IIndexerSetupCallbackWhenBuilder, Mockolate.Setup.IIndexerSetupReturnBuilder, Mockolate.Setup.IIndexerSetupReturnWhenBuilder, Mockolate.Setup.IIndexerSetup { public IndexerSetup(Mockolate.Parameters.IParameter match1, Mockolate.Parameters.IParameter match2, Mockolate.Parameters.IParameter match3, Mockolate.Parameters.IParameter match4) { } + public Mockolate.Setup.IIndexerGetterSetup OnGet { get; } + public Mockolate.Setup.IIndexerSetterSetup OnSet { get; } public Mockolate.Setup.IIndexerSetup CallingBaseClass(bool callBaseClass = true) { } protected override T ExecuteGetterCallback(Mockolate.Interactions.IndexerGetterAccess indexerGetterAccess, T value, Mockolate.MockBehavior behavior) { } protected override void ExecuteSetterCallback(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior) { } @@ -1279,14 +1303,6 @@ namespace Mockolate.Setup public Mockolate.Setup.IIndexerSetup InitializeWith(System.Func valueGenerator) { } public Mockolate.Setup.IIndexerSetup InitializeWith(TValue value) { } protected override bool IsMatch(object?[] parameters) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IIndexerSetupCallbackBuilder OnSet(System.Action callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IIndexerSetupReturnBuilder Returns(System.Func callback) { } @@ -1342,10 +1358,12 @@ namespace Mockolate.Setup protected abstract void InvokeSetter(object? value, Mockolate.MockBehavior behavior); protected abstract bool Matches(Mockolate.Interactions.PropertyAccess propertyAccess); } - public class PropertySetup : Mockolate.Setup.PropertySetup, Mockolate.Setup.IPropertySetupCallbackBuilder, Mockolate.Setup.IPropertySetupReturnBuilder, Mockolate.Setup.IPropertySetupReturnWhenBuilder, Mockolate.Setup.IPropertySetupWhenBuilder, Mockolate.Setup.IPropertySetup + public class PropertySetup : Mockolate.Setup.PropertySetup, Mockolate.Setup.IPropertyGetterSetup, Mockolate.Setup.IPropertySetterSetup, Mockolate.Setup.IPropertySetupCallbackBuilder, Mockolate.Setup.IPropertySetupReturnBuilder, Mockolate.Setup.IPropertySetupReturnWhenBuilder, Mockolate.Setup.IPropertySetupWhenBuilder, Mockolate.Setup.IPropertySetup { public PropertySetup(string name) { } public override string Name { get; } + public Mockolate.Setup.IPropertyGetterSetup OnGet { get; } + public Mockolate.Setup.IPropertySetterSetup OnSet { get; } public Mockolate.Setup.IPropertySetup CallingBaseClass(bool callBaseClass = true) { } protected override bool? GetCallBaseClass() { } protected override void InitializeValue(object? value) { } @@ -1353,12 +1371,6 @@ namespace Mockolate.Setup protected override TResult InvokeGetter(Mockolate.MockBehavior behavior, System.Func? defaultValueGenerator) { } protected override void InvokeSetter(object? value, Mockolate.MockBehavior behavior) { } protected override bool Matches(Mockolate.Interactions.PropertyAccess propertyAccess) { } - public Mockolate.Setup.IPropertySetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IPropertySetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IPropertySetupCallbackBuilder OnGet(System.Action callback) { } - public Mockolate.Setup.IPropertySetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IPropertySetupCallbackBuilder OnSet(System.Action callback) { } - public Mockolate.Setup.IPropertySetupCallbackBuilder OnSet(System.Action callback) { } public Mockolate.Setup.IPropertySetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IPropertySetupReturnBuilder Returns(System.Func callback) { } public Mockolate.Setup.IPropertySetupReturnBuilder Returns(T returnValue) { } diff --git a/Tests/Mockolate.Tests/MockIndexers/SetupIndexerTests.OnGetTests.cs b/Tests/Mockolate.Tests/MockIndexers/SetupIndexerTests.OnGetTests.cs index c796e7bf..9ccad7db 100644 --- a/Tests/Mockolate.Tests/MockIndexers/SetupIndexerTests.OnGetTests.cs +++ b/Tests/Mockolate.Tests/MockIndexers/SetupIndexerTests.OnGetTests.cs @@ -12,7 +12,7 @@ public async Task For_ShouldStopExecutingCallbackAfterTheGivenTimes() List invocations = []; IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny()) - .OnGet((i, _) => { invocations.Add(i); }) + .OnGet.Do((i, _) => { invocations.Add(i); }) .For(4); for (int i = 0; i < 20; i++) @@ -29,7 +29,7 @@ public async Task For_WithWhen_ShouldStopExecutingCallbackAfterTheGivenTimes() List invocations = []; IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny()) - .OnGet((i, _) => { invocations.Add(i); }) + .OnGet.Do((i, _) => { invocations.Add(i); }) .When(x => x > 2) .For(4); @@ -50,9 +50,9 @@ public async Task InParallel_ShouldInvokeParallelCallbacksAlways() IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny()) - .OnGet(() => { callCount1++; }) - .OnGet(v => { callCount2 += v; }).InParallel() - .OnGet(v => { callCount3 += v; }); + .OnGet.Do(() => { callCount1++; }) + .OnGet.Do(v => { callCount2 += v; }).InParallel() + .OnGet.Do(v => { callCount3 += v; }); _ = sut[1]; _ = sut[2]; @@ -74,7 +74,7 @@ public async Task Only_ShouldInvokeCallbacksOnlyTheGivenNumberOfTimes(int times, IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny()) - .OnGet(v => { sum += v; }).Only(times); + .OnGet.Do(v => { sum += v; }).Only(times); _ = sut[1]; _ = sut[2]; @@ -92,8 +92,8 @@ public async Task OnlyOnce_ShouldDeactivateCallbackAfterFirstExecution() IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny()) - .OnGet(() => { callCount1++; }) - .OnGet(v => { callCount2 += v; }).OnlyOnce(); + .OnGet.Do(() => { callCount1++; }) + .OnGet.Do(v => { callCount2 += v; }).OnlyOnce(); _ = sut[1]; _ = sut[2]; @@ -110,7 +110,7 @@ public async Task ShouldExecuteGetterCallbacks() int callCount = 0; IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.Is(i => i < 4)) - .OnGet(() => { callCount++; }); + .OnGet.Do(() => { callCount++; }); _ = mock[1]; _ = mock[2]; @@ -128,7 +128,7 @@ public async Task ShouldExecuteGetterCallbacksWithValue() int callCount = 0; IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.Is(i => i < 4)) - .OnGet(v => { callCount += v; }); + .OnGet.Do(v => { callCount += v; }); _ = mock[1]; _ = mock[2]; @@ -147,8 +147,8 @@ public async Task ShouldInvokeCallbacksInSequence() IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny()) - .OnGet(() => { callCount1++; }) - .OnGet(v => { callCount2 += v; }); + .OnGet.Do(() => { callCount1++; }) + .OnGet.Do(v => { callCount2 += v; }); _ = sut[1]; _ = sut[2]; @@ -165,7 +165,7 @@ public async Task When_ShouldOnlyExecuteCallbackWhenInvocationCountMatches() List invocations = []; IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny()) - .OnGet((i, _) => { invocations.Add(i); }) + .OnGet.Do((i, _) => { invocations.Add(i); }) .When(x => x is > 3 and < 9); for (int i = 0; i < 20; i++) @@ -182,7 +182,7 @@ public async Task WhenLengthDoesNotMatch_ShouldIgnore() int callCount = 0; IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.IsAny()) - .OnGet(() => { callCount++; }); + .OnGet.Do(() => { callCount++; }); _ = mock[1]; _ = mock[2, 2]; @@ -199,7 +199,7 @@ public async Task Callback_WhenLengthDoesNotMatch_ShouldIgnore() int callCount = 0; IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.IsAny(), It.IsAny()) - .OnGet(() => { callCount++; }); + .OnGet.Do(() => { callCount++; }); _ = mock[1]; _ = mock[2, 2]; @@ -214,7 +214,7 @@ public async Task For_ShouldStopExecutingCallbackAfterTheGivenTimes() List invocations = []; IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny()) - .OnGet((i, _, _) => { invocations.Add(i); }) + .OnGet.Do((i, _, _) => { invocations.Add(i); }) .For(4); for (int i = 0; i < 20; i++) @@ -231,7 +231,7 @@ public async Task For_WithWhen_ShouldStopExecutingCallbackAfterTheGivenTimes() List invocations = []; IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny()) - .OnGet((i, _, _) => { invocations.Add(i); }) + .OnGet.Do((i, _, _) => { invocations.Add(i); }) .When(x => x > 2) .For(4); @@ -252,9 +252,9 @@ public async Task InParallel_ShouldInvokeParallelCallbacksAlways() IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny()) - .OnGet(() => { callCount1++; }) - .OnGet((p1, _) => { callCount2 += p1; }).InParallel() - .OnGet((p1, _) => { callCount3 += p1; }); + .OnGet.Do(() => { callCount1++; }) + .OnGet.Do((p1, _) => { callCount2 += p1; }).InParallel() + .OnGet.Do((p1, _) => { callCount3 += p1; }); _ = sut[1, 2]; _ = sut[2, 2]; @@ -276,7 +276,7 @@ public async Task Only_ShouldInvokeCallbacksOnlyTheGivenNumberOfTimes(int times, IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny()) - .OnGet((p1, _) => { sum += p1; }).Only(times); + .OnGet.Do((p1, _) => { sum += p1; }).Only(times); _ = sut[1, 2]; _ = sut[2, 2]; @@ -294,8 +294,8 @@ public async Task OnlyOnce_ShouldDeactivateCallbackAfterFirstExecution() IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny()) - .OnGet(() => { callCount1++; }) - .OnGet((p1, _) => { callCount2 += p1; }).OnlyOnce(); + .OnGet.Do(() => { callCount1++; }) + .OnGet.Do((p1, _) => { callCount2 += p1; }).OnlyOnce(); _ = sut[1, 2]; _ = sut[2, 2]; @@ -312,7 +312,7 @@ public async Task ShouldExecuteGetterCallbacks() int callCount = 0; IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.Is(i => i < 4), It.Is(i => i < 4)) - .OnGet(() => { callCount++; }); + .OnGet.Do(() => { callCount++; }); _ = mock[5, 1]; // no _ = mock[3, 2]; // yes @@ -330,7 +330,7 @@ public async Task ShouldExecuteGetterCallbacksWithValue() int callCount = 0; IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.Is(i => i < 4), It.Is(i => i < 4)) - .OnGet((v1, v2) => { callCount += v1 * v2; }); + .OnGet.Do((v1, v2) => { callCount += v1 * v2; }); _ = mock[5, 1]; // no _ = mock[3, 2]; // yes (6) @@ -350,8 +350,8 @@ public async Task ShouldInvokeCallbacksInSequence() IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny()) - .OnGet(() => { callCount1++; }) - .OnGet((p1, _) => { callCount2 += p1; }); + .OnGet.Do(() => { callCount1++; }) + .OnGet.Do((p1, _) => { callCount2 += p1; }); _ = sut[1, 2]; _ = sut[2, 2]; @@ -368,7 +368,7 @@ public async Task When_ShouldOnlyExecuteCallbackWhenInvocationCountMatches() List invocations = []; IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny()) - .OnGet((i, _, _) => { invocations.Add(i); }) + .OnGet.Do((i, _, _) => { invocations.Add(i); }) .When(x => x is > 3 and < 9); for (int i = 0; i < 20; i++) @@ -388,7 +388,7 @@ public async Task Callback_WhenLengthDoesNotMatch_ShouldIgnore() int callCount = 0; IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny()) - .OnGet(() => { callCount++; }); + .OnGet.Do(() => { callCount++; }); _ = mock[1]; _ = mock[2, 2]; @@ -404,7 +404,7 @@ public async Task For_ShouldStopExecutingCallbackAfterTheGivenTimes() List invocations = []; IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny()) - .OnGet((i, _, _, _) => { invocations.Add(i); }) + .OnGet.Do((i, _, _, _) => { invocations.Add(i); }) .For(4); for (int i = 0; i < 20; i++) @@ -421,7 +421,7 @@ public async Task For_WithWhen_ShouldStopExecutingCallbackAfterTheGivenTimes() List invocations = []; IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny()) - .OnGet((i, _, _, _) => { invocations.Add(i); }) + .OnGet.Do((i, _, _, _) => { invocations.Add(i); }) .When(x => x > 2) .For(4); @@ -442,9 +442,9 @@ public async Task InParallel_ShouldInvokeParallelCallbacksAlways() IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny()) - .OnGet(() => { callCount1++; }) - .OnGet((p1, _, _) => { callCount2 += p1; }).InParallel() - .OnGet((p1, _, _) => { callCount3 += p1; }); + .OnGet.Do(() => { callCount1++; }) + .OnGet.Do((p1, _, _) => { callCount2 += p1; }).InParallel() + .OnGet.Do((p1, _, _) => { callCount3 += p1; }); _ = sut[1, 2, 3]; _ = sut[2, 2, 3]; @@ -466,7 +466,7 @@ public async Task Only_ShouldInvokeCallbacksOnlyTheGivenNumberOfTimes(int times, IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny()) - .OnGet((p1, _, _) => { sum += p1; }).Only(times); + .OnGet.Do((p1, _, _) => { sum += p1; }).Only(times); _ = sut[1, 2, 3]; _ = sut[2, 2, 3]; @@ -484,8 +484,8 @@ public async Task OnlyOnce_ShouldDeactivateCallbackAfterFirstExecution() IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny()) - .OnGet(() => { callCount1++; }) - .OnGet((p1, _, _) => { callCount2 += p1; }).OnlyOnce(); + .OnGet.Do(() => { callCount1++; }) + .OnGet.Do((p1, _, _) => { callCount2 += p1; }).OnlyOnce(); _ = sut[1, 2, 3]; _ = sut[2, 2, 3]; @@ -503,7 +503,7 @@ public async Task ShouldExecuteGetterCallbacks() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.Is(i => i < 4), It.Is(i => i < 4), It.Is(i => i < 4)) - .OnGet(() => { callCount++; }); + .OnGet.Do(() => { callCount++; }); _ = mock[1, 5, 1]; // no _ = mock[3, 1, 2]; // yes @@ -523,7 +523,7 @@ public async Task ShouldExecuteGetterCallbacksWithValue() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.Is(i => i < 4), It.Is(i => i < 4), It.Is(i => i < 4)) - .OnGet((v1, v2, v3) => { callCount += v1 * v2 * v3; }); + .OnGet.Do((v1, v2, v3) => { callCount += v1 * v2 * v3; }); _ = mock[1, 5, 1]; // no _ = mock[3, 1, 2]; // yes (6) @@ -544,8 +544,8 @@ public async Task ShouldInvokeCallbacksInSequence() IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny()) - .OnGet(() => { callCount1++; }) - .OnGet((p1, _, _) => { callCount2 += p1; }); + .OnGet.Do(() => { callCount1++; }) + .OnGet.Do((p1, _, _) => { callCount2 += p1; }); _ = sut[1, 2, 3]; _ = sut[2, 2, 3]; @@ -562,7 +562,7 @@ public async Task When_ShouldOnlyExecuteCallbackWhenInvocationCountMatches() List invocations = []; IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny()) - .OnGet((i, _, _, _) => { invocations.Add(i); }) + .OnGet.Do((i, _, _, _) => { invocations.Add(i); }) .When(x => x is > 3 and < 9); for (int i = 0; i < 20; i++) @@ -582,7 +582,7 @@ public async Task Callback_WhenLengthDoesNotMatch_ShouldIgnore() int callCount = 0; IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnGet(() => { callCount++; }); + .OnGet.Do(() => { callCount++; }); _ = mock[1]; _ = mock[2, 2]; @@ -598,7 +598,7 @@ public async Task For_ShouldStopExecutingCallbackAfterTheGivenTimes() List invocations = []; IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnGet((i, _, _, _, _) => { invocations.Add(i); }) + .OnGet.Do((i, _, _, _, _) => { invocations.Add(i); }) .For(4); for (int i = 0; i < 20; i++) @@ -615,7 +615,7 @@ public async Task For_WithWhen_ShouldStopExecutingCallbackAfterTheGivenTimes() List invocations = []; IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnGet((i, _, _, _, _) => { invocations.Add(i); }) + .OnGet.Do((i, _, _, _, _) => { invocations.Add(i); }) .When(x => x > 2) .For(4); @@ -636,9 +636,9 @@ public async Task InParallel_ShouldInvokeParallelCallbacksAlways() IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnGet(() => { callCount1++; }) - .OnGet((p1, _, _, _) => { callCount2 += p1; }).InParallel() - .OnGet((p1, _, _, _) => { callCount3 += p1; }); + .OnGet.Do(() => { callCount1++; }) + .OnGet.Do((p1, _, _, _) => { callCount2 += p1; }).InParallel() + .OnGet.Do((p1, _, _, _) => { callCount3 += p1; }); _ = sut[1, 2, 3, 4]; _ = sut[2, 2, 3, 4]; @@ -660,7 +660,7 @@ public async Task Only_ShouldInvokeCallbacksOnlyTheGivenNumberOfTimes(int times, IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnGet((p1, _, _, _) => { sum += p1; }).Only(times); + .OnGet.Do((p1, _, _, _) => { sum += p1; }).Only(times); _ = sut[1, 2, 3, 4]; _ = sut[2, 2, 3, 4]; @@ -678,8 +678,8 @@ public async Task OnlyOnce_ShouldDeactivateCallbackAfterFirstExecution() IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnGet(() => { callCount1++; }) - .OnGet((p1, _, _, _) => { callCount2 += p1; }).OnlyOnce(); + .OnGet.Do(() => { callCount1++; }) + .OnGet.Do((p1, _, _, _) => { callCount2 += p1; }).OnlyOnce(); _ = sut[1, 2, 3, 4]; _ = sut[2, 2, 3, 4]; @@ -697,7 +697,7 @@ public async Task ShouldExecuteGetterCallbacks() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.Is(i => i < 5), It.Is(i => i < 5), It.Is(i => i < 5), It.Is(i => i < 5)) - .OnGet(() => { callCount++; }); + .OnGet.Do(() => { callCount++; }); _ = mock[1, 1, 5, 1]; // no _ = mock[3, 1, 2, 4]; // yes @@ -718,7 +718,7 @@ public async Task ShouldExecuteGetterCallbacksWithValue() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.Is(i => i < 5), It.Is(i => i < 5), It.Is(i => i < 5), It.Is(i => i < 5)) - .OnGet((v1, v2, v3, v4) => { callCount += v1 * v2 * v3 * v4; }); + .OnGet.Do((v1, v2, v3, v4) => { callCount += v1 * v2 * v3 * v4; }); _ = mock[1, 5, 1, 3]; // no _ = mock[3, 1, 2, 4]; // yes (24) @@ -739,8 +739,8 @@ public async Task ShouldInvokeCallbacksInSequence() IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnGet(() => { callCount1++; }) - .OnGet((p1, _, _, _) => { callCount2 += p1; }); + .OnGet.Do(() => { callCount1++; }) + .OnGet.Do((p1, _, _, _) => { callCount2 += p1; }); _ = sut[1, 2, 3, 4]; _ = sut[2, 2, 3, 4]; @@ -757,7 +757,7 @@ public async Task When_ShouldOnlyExecuteCallbackWhenInvocationCountMatches() List invocations = []; IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnGet((i, _, _, _, _) => { invocations.Add(i); }) + .OnGet.Do((i, _, _, _, _) => { invocations.Add(i); }) .When(x => x is > 3 and < 9); for (int i = 0; i < 20; i++) @@ -778,7 +778,7 @@ public async Task Callback_WhenLengthDoesNotMatch_ShouldIgnore() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnGet(() => { callCount++; }); + .OnGet.Do(() => { callCount++; }); _ = mock[1]; _ = mock[2, 2]; @@ -796,7 +796,7 @@ public async Task For_ShouldStopExecutingCallbackAfterTheGivenTimes() IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnGet((i, _, _, _, _, _) => { invocations.Add(i); }) + .OnGet.Do((i, _, _, _, _, _) => { invocations.Add(i); }) .For(4); for (int i = 0; i < 20; i++) @@ -814,7 +814,7 @@ public async Task For_WithWhen_ShouldStopExecutingCallbackAfterTheGivenTimes() IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnGet((i, _, _, _, _, _) => { invocations.Add(i); }) + .OnGet.Do((i, _, _, _, _, _) => { invocations.Add(i); }) .When(x => x > 2) .For(4); @@ -836,9 +836,9 @@ public async Task InParallel_ShouldInvokeParallelCallbacksAlways() sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnGet(() => { callCount1++; }) - .OnGet((p1, _, _, _, _) => { callCount2 += p1; }).InParallel() - .OnGet((p1, _, _, _, _) => { callCount3 += p1; }); + .OnGet.Do(() => { callCount1++; }) + .OnGet.Do((p1, _, _, _, _) => { callCount2 += p1; }).InParallel() + .OnGet.Do((p1, _, _, _, _) => { callCount3 += p1; }); _ = sut[1, 2, 3, 4, 5]; _ = sut[2, 2, 3, 4, 5]; @@ -861,7 +861,7 @@ public async Task Only_ShouldInvokeCallbacksOnlyTheGivenNumberOfTimes(int times, sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnGet((p1, _, _, _, _) => { sum += p1; }).Only(times); + .OnGet.Do((p1, _, _, _, _) => { sum += p1; }).Only(times); _ = sut[1, 2, 3, 4, 5]; _ = sut[2, 2, 3, 4, 5]; @@ -880,8 +880,8 @@ public async Task OnlyOnce_ShouldDeactivateCallbackAfterFirstExecution() sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnGet(() => { callCount1++; }) - .OnGet((p1, _, _, _, _) => { callCount2 += p1; }).OnlyOnce(); + .OnGet.Do(() => { callCount1++; }) + .OnGet.Do((p1, _, _, _, _) => { callCount2 += p1; }).OnlyOnce(); _ = sut[1, 2, 3, 4, 5]; _ = sut[2, 2, 3, 4, 5]; @@ -899,7 +899,7 @@ public async Task ShouldExecuteGetterCallbacks() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.Is(i => i < 6), It.Is(i => i < 6), It.Is(i => i < 6), It.Is(i => i < 6), It.Is(i => i < 6)) - .OnGet(() => { callCount++; }); + .OnGet.Do(() => { callCount++; }); _ = mock[1, 1, 1, 6, 1]; // no _ = mock[1, 3, 1, 2, 4]; // yes @@ -920,7 +920,7 @@ public async Task ShouldExecuteGetterCallbacksWithValue() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.Is(i => i < 6), It.Is(i => i < 6), It.Is(i => i < 6), It.Is(i => i < 6), It.Is(i => i < 6)) - .OnGet((v1, v2, v3, v4, v5) => { callCount += v1 * v2 * v3 * v4 * v5; }); + .OnGet.Do((v1, v2, v3, v4, v5) => { callCount += v1 * v2 * v3 * v4 * v5; }); _ = mock[1, 1, 1, 7, 1]; // no _ = mock[1, 3, 1, 2, 4]; // yes (24) @@ -943,8 +943,8 @@ public async Task ShouldInvokeCallbacksInSequence() sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnGet(() => { callCount1++; }) - .OnGet((p1, _, _, _, _) => { callCount2 += p1; }); + .OnGet.Do(() => { callCount1++; }) + .OnGet.Do((p1, _, _, _, _) => { callCount2 += p1; }); _ = sut[1, 2, 3, 4, 5]; _ = sut[2, 2, 3, 4, 5]; @@ -962,7 +962,7 @@ public async Task When_ShouldOnlyExecuteCallbackWhenInvocationCountMatches() IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnGet((i, _, _, _, _, _) => { invocations.Add(i); }) + .OnGet.Do((i, _, _, _, _, _) => { invocations.Add(i); }) .When(x => x is > 3 and < 9); for (int i = 0; i < 20; i++) diff --git a/Tests/Mockolate.Tests/MockIndexers/SetupIndexerTests.OnSetTests.cs b/Tests/Mockolate.Tests/MockIndexers/SetupIndexerTests.OnSetTests.cs index 38422673..098a78ca 100644 --- a/Tests/Mockolate.Tests/MockIndexers/SetupIndexerTests.OnSetTests.cs +++ b/Tests/Mockolate.Tests/MockIndexers/SetupIndexerTests.OnSetTests.cs @@ -12,7 +12,7 @@ public async Task For_ShouldStopExecutingCallbackAfterTheGivenTimes() List invocations = []; IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny()) - .OnSet((i, _, _) => { invocations.Add(i); }) + .OnSet.Do((i, _, _) => { invocations.Add(i); }) .For(4); for (int i = 0; i < 20; i++) @@ -29,7 +29,7 @@ public async Task For_WithWhen_ShouldStopExecutingCallbackAfterTheGivenTimes() List invocations = []; IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny()) - .OnSet((i, _, _) => { invocations.Add(i); }) + .OnSet.Do((i, _, _) => { invocations.Add(i); }) .When(x => x > 2) .For(4); @@ -50,9 +50,9 @@ public async Task InParallel_ShouldInvokeCallbacksInSequence() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.IsAny()) - .OnSet(() => { callCount1++; }) - .OnSet((p1, _) => { callCount2 += p1; }).InParallel() - .OnSet((p1, _) => { callCount3 += p1; }); + .OnSet.Do(() => { callCount1++; }) + .OnSet.Do((p1, _) => { callCount2 += p1; }).InParallel() + .OnSet.Do((p1, _) => { callCount3 += p1; }); mock[4] = "foo"; mock[6] = "foo"; @@ -75,7 +75,7 @@ public async Task Only_ShouldInvokeCallbacksOnlyTheGivenNumberOfTimes(int times, IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.IsAny()) - .OnSet((p1, _) => { sum += p1; }).Only(times); + .OnSet.Do((p1, _) => { sum += p1; }).Only(times); mock[1] = "foo"; mock[2] = "foo"; @@ -94,8 +94,8 @@ public async Task OnlyOnce_ShouldDeactivateCallbackAfterFirstExecution() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.IsAny()) - .OnSet(() => { callCount++; }) - .OnSet((p1, _) => { sum += p1; }).OnlyOnce(); + .OnSet.Do(() => { callCount++; }) + .OnSet.Do((p1, _) => { sum += p1; }).OnlyOnce(); mock[1] = "foo"; mock[2] = "foo"; @@ -112,7 +112,7 @@ public async Task ShouldExecuteSetterCallbacks() int callCount = 0; IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.Is(i => i < 4)) - .OnSet(_ => { callCount++; }); + .OnSet.Do(_ => { callCount++; }); mock[1] = ""; mock[2] = ""; @@ -130,7 +130,7 @@ public async Task ShouldExecuteSetterCallbacksWithoutAnyValue() int callCount = 0; IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.Is(i => i < 4)) - .OnSet(() => { callCount++; }); + .OnSet.Do(() => { callCount++; }); mock[1] = ""; mock[2] = ""; @@ -149,8 +149,8 @@ public async Task ShouldInvokeCallbacksInSequence() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.IsAny()) - .OnSet(() => { callCount1++; }) - .OnSet((p1, _) => { callCount2 += p1; }); + .OnSet.Do(() => { callCount1++; }) + .OnSet.Do((p1, _) => { callCount2 += p1; }); mock[4] = "foo"; mock[6] = "foo"; @@ -167,7 +167,7 @@ public async Task When_ShouldOnlyExecuteCallbackWhenInvocationCountMatches() List invocations = []; IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny()) - .OnSet((i, _, _) => { invocations.Add(i); }) + .OnSet.Do((i, _, _) => { invocations.Add(i); }) .When(x => x is > 3 and < 9); for (int i = 0; i < 20; i++) @@ -186,7 +186,7 @@ public async Task For_ShouldStopExecutingCallbackAfterTheGivenTimes() List invocations = []; IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny()) - .OnSet((i, _, _, _) => { invocations.Add(i); }) + .OnSet.Do((i, _, _, _) => { invocations.Add(i); }) .For(4); for (int i = 0; i < 20; i++) @@ -203,7 +203,7 @@ public async Task For_WithWhen_ShouldStopExecutingCallbackAfterTheGivenTimes() List invocations = []; IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny()) - .OnSet((i, _, _, _) => { invocations.Add(i); }) + .OnSet.Do((i, _, _, _) => { invocations.Add(i); }) .When(x => x > 2) .For(4); @@ -224,9 +224,9 @@ public async Task InParallel_ShouldInvokeCallbacksInSequence() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.IsAny(), It.IsAny()) - .OnSet(() => { callCount1++; }) - .OnSet((p1, _, _) => { callCount2 += p1; }).InParallel() - .OnSet((p1, _, _) => { callCount3 += p1; }); + .OnSet.Do(() => { callCount1++; }) + .OnSet.Do((p1, _, _) => { callCount2 += p1; }).InParallel() + .OnSet.Do((p1, _, _) => { callCount3 += p1; }); mock[4, 2] = "foo"; mock[6, 2] = "foo"; @@ -249,7 +249,7 @@ public async Task Only_ShouldInvokeCallbacksOnlyTheGivenNumberOfTimes(int times, IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.IsAny(), It.IsAny()) - .OnSet((p1, _, _) => { sum += p1; }).Only(times); + .OnSet.Do((p1, _, _) => { sum += p1; }).Only(times); mock[1, 2] = "foo"; mock[2, 2] = "foo"; @@ -268,8 +268,8 @@ public async Task OnlyOnce_ShouldDeactivateCallbackAfterFirstExecution() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.IsAny(), It.IsAny()) - .OnSet(() => { callCount++; }) - .OnSet((p1, _, _) => { sum += p1; }).OnlyOnce(); + .OnSet.Do(() => { callCount++; }) + .OnSet.Do((p1, _, _) => { sum += p1; }).OnlyOnce(); mock[1, 2] = "foo"; mock[2, 2] = "foo"; @@ -286,7 +286,7 @@ public async Task ShouldExecuteSetterCallbacks() int callCount = 0; IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.Is(i => i < 4), It.Is(i => i < 4)) - .OnSet(v => { callCount += v.Length; }); + .OnSet.Do(v => { callCount += v.Length; }); mock[1, 1] = "a"; // yes (1) mock[1, 2] = "bb"; // yes (2) @@ -307,7 +307,7 @@ public async Task ShouldExecuteSetterCallbacksWithoutAnyValue() int callCount = 0; IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.Is(i => i < 4), It.Is(i => i < 4)) - .OnSet(() => { callCount++; }); + .OnSet.Do(() => { callCount++; }); mock[1, 1] = ""; // yes mock[1, 2] = ""; // yes @@ -327,8 +327,8 @@ public async Task ShouldInvokeCallbacksInSequence() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.IsAny(), It.IsAny()) - .OnSet(() => { callCount1++; }) - .OnSet((p1, _, _) => { callCount2 += p1; }); + .OnSet.Do(() => { callCount1++; }) + .OnSet.Do((p1, _, _) => { callCount2 += p1; }); mock[4, 2] = "foo"; mock[6, 2] = "foo"; @@ -345,7 +345,7 @@ public async Task When_ShouldOnlyExecuteCallbackWhenInvocationCountMatches() List invocations = []; IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny()) - .OnSet((i, _, _, _) => { invocations.Add(i); }) + .OnSet.Do((i, _, _, _) => { invocations.Add(i); }) .When(x => x is > 3 and < 9); for (int i = 0; i < 20; i++) @@ -365,7 +365,7 @@ public async Task For_ShouldStopExecutingCallbackAfterTheGivenTimes() List invocations = []; IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny()) - .OnSet((i, _, _, _, _) => { invocations.Add(i); }) + .OnSet.Do((i, _, _, _, _) => { invocations.Add(i); }) .For(4); for (int i = 0; i < 20; i++) @@ -382,7 +382,7 @@ public async Task For_WithWhen_ShouldStopExecutingCallbackAfterTheGivenTimes() List invocations = []; IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny()) - .OnSet((i, _, _, _, _) => { invocations.Add(i); }) + .OnSet.Do((i, _, _, _, _) => { invocations.Add(i); }) .When(x => x > 2) .For(4); @@ -403,9 +403,9 @@ public async Task InParallel_ShouldInvokeCallbacksInSequence() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny()) - .OnSet(() => { callCount1++; }) - .OnSet((p1, _, _, _) => { callCount2 += p1; }).InParallel() - .OnSet((p1, _, _, _) => { callCount3 += p1; }); + .OnSet.Do(() => { callCount1++; }) + .OnSet.Do((p1, _, _, _) => { callCount2 += p1; }).InParallel() + .OnSet.Do((p1, _, _, _) => { callCount3 += p1; }); mock[4, 2, 3] = "foo"; mock[6, 2, 3] = "foo"; @@ -428,7 +428,7 @@ public async Task Only_ShouldInvokeCallbacksOnlyTheGivenNumberOfTimes(int times, IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny()) - .OnSet((p1, _, _, _) => { sum += p1; }).Only(times); + .OnSet.Do((p1, _, _, _) => { sum += p1; }).Only(times); mock[1, 2, 3] = "foo"; mock[2, 2, 3] = "foo"; @@ -447,8 +447,8 @@ public async Task OnlyOnce_ShouldDeactivateCallbackAfterFirstExecution() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny()) - .OnSet(() => { callCount++; }) - .OnSet((p1, _, _, _) => { sum += p1; }).OnlyOnce(); + .OnSet.Do(() => { callCount++; }) + .OnSet.Do((p1, _, _, _) => { sum += p1; }).OnlyOnce(); mock[1, 2, 3] = "foo"; mock[2, 2, 3] = "foo"; @@ -466,7 +466,7 @@ public async Task ShouldExecuteSetterCallbacks() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.Is(i => i < 4), It.Is(i => i < 4), It.Is(i => i < 4)) - .OnSet(v => { callCount += v.Length; }); + .OnSet.Do(v => { callCount += v.Length; }); mock[1, 1, 1] = "a"; // yes (1) mock[1, 2, 1] = "bb"; // yes (2) @@ -488,7 +488,7 @@ public async Task ShouldExecuteSetterCallbacksWithoutAnyValue() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.Is(i => i < 4), It.Is(i => i < 4), It.Is(i => i < 4)) - .OnSet(() => { callCount++; }); + .OnSet.Do(() => { callCount++; }); mock[1, 1, 1] = ""; // yes mock[1, 1, 2] = ""; // yes @@ -509,8 +509,8 @@ public async Task ShouldInvokeCallbacksInSequence() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny()) - .OnSet(() => { callCount1++; }) - .OnSet((p1, _, _, _) => { callCount2 += p1; }); + .OnSet.Do(() => { callCount1++; }) + .OnSet.Do((p1, _, _, _) => { callCount2 += p1; }); mock[4, 2, 3] = "foo"; mock[6, 2, 3] = "foo"; @@ -527,7 +527,7 @@ public async Task When_ShouldOnlyExecuteCallbackWhenInvocationCountMatches() List invocations = []; IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny()) - .OnSet((i, _, _, _, _) => { invocations.Add(i); }) + .OnSet.Do((i, _, _, _, _) => { invocations.Add(i); }) .When(x => x is > 3 and < 9); for (int i = 0; i < 20; i++) @@ -547,7 +547,7 @@ public async Task For_ShouldStopExecutingCallbackAfterTheGivenTimes() List invocations = []; IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnSet((i, _, _, _, _, _) => { invocations.Add(i); }) + .OnSet.Do((i, _, _, _, _, _) => { invocations.Add(i); }) .For(4); for (int i = 0; i < 20; i++) @@ -564,7 +564,7 @@ public async Task For_WithWhen_ShouldStopExecutingCallbackAfterTheGivenTimes() List invocations = []; IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnSet((i, _, _, _, _, _) => { invocations.Add(i); }) + .OnSet.Do((i, _, _, _, _, _) => { invocations.Add(i); }) .When(x => x > 2) .For(4); @@ -585,9 +585,9 @@ public async Task InParallel_ShouldInvokeCallbacksInSequence() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnSet(() => { callCount1++; }) - .OnSet((p1, _, _, _, _) => { callCount2 += p1; }).InParallel() - .OnSet((p1, _, _, _, _) => { callCount3 += p1; }); + .OnSet.Do(() => { callCount1++; }) + .OnSet.Do((p1, _, _, _, _) => { callCount2 += p1; }).InParallel() + .OnSet.Do((p1, _, _, _, _) => { callCount3 += p1; }); mock[4, 2, 3, 4] = "foo"; mock[6, 2, 3, 4] = "foo"; @@ -610,7 +610,7 @@ public async Task Only_ShouldInvokeCallbacksOnlyTheGivenNumberOfTimes(int times, IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnSet((p1, _, _, _, _) => { sum += p1; }).Only(times); + .OnSet.Do((p1, _, _, _, _) => { sum += p1; }).Only(times); mock[1, 2, 3, 4] = "foo"; mock[2, 2, 3, 4] = "foo"; @@ -629,8 +629,8 @@ public async Task OnlyOnce_ShouldDeactivateCallbackAfterFirstExecution() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnSet(() => { callCount++; }) - .OnSet((p1, _, _, _, _) => { sum += p1; }).OnlyOnce(); + .OnSet.Do(() => { callCount++; }) + .OnSet.Do((p1, _, _, _, _) => { sum += p1; }).OnlyOnce(); mock[1, 2, 3, 4] = "foo"; mock[2, 2, 3, 4] = "foo"; @@ -648,7 +648,7 @@ public async Task ShouldExecuteSetterCallbacks() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.Is(i => i < 5), It.Is(i => i < 5), It.Is(i => i < 5), It.Is(i => i < 5)) - .OnSet(v => { callCount += v.Length; }); + .OnSet.Do(v => { callCount += v.Length; }); mock[1, 1, 1, 1] = "a"; // yes (1) mock[1, 2, 1, 3] = "bb"; // yes (2) @@ -670,7 +670,7 @@ public async Task ShouldExecuteSetterCallbacksWithoutAnyValue() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.Is(i => i < 5), It.Is(i => i < 5), It.Is(i => i < 5), It.Is(i => i < 5)) - .OnSet(() => { callCount++; }); + .OnSet.Do(() => { callCount++; }); mock[1, 1, 1, 1] = ""; // yes mock[1, 1, 2, 2] = ""; // yes @@ -691,8 +691,8 @@ public async Task ShouldInvokeCallbacksInSequence() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnSet(() => { callCount1++; }) - .OnSet((p1, _, _, _, _) => { callCount2 += p1; }); + .OnSet.Do(() => { callCount1++; }) + .OnSet.Do((p1, _, _, _, _) => { callCount2 += p1; }); mock[4, 2, 3, 4] = "foo"; mock[6, 2, 3, 4] = "foo"; @@ -709,7 +709,7 @@ public async Task When_ShouldOnlyExecuteCallbackWhenInvocationCountMatches() List invocations = []; IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnSet((i, _, _, _, _, _) => { invocations.Add(i); }) + .OnSet.Do((i, _, _, _, _, _) => { invocations.Add(i); }) .When(x => x is > 3 and < 9); for (int i = 0; i < 20; i++) @@ -730,7 +730,7 @@ public async Task For_ShouldStopExecutingCallbackAfterTheGivenTimes() IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnSet((i, _, _, _, _, _, _) => { invocations.Add(i); }) + .OnSet.Do((i, _, _, _, _, _, _) => { invocations.Add(i); }) .For(4); for (int i = 0; i < 20; i++) @@ -748,7 +748,7 @@ public async Task For_WithWhen_ShouldStopExecutingCallbackAfterTheGivenTimes() IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnSet((i, _, _, _, _, _, _) => { invocations.Add(i); }) + .OnSet.Do((i, _, _, _, _, _, _) => { invocations.Add(i); }) .When(x => x > 2) .For(4); @@ -770,9 +770,9 @@ public async Task InParallel_ShouldInvokeCallbacksInSequence() mock.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnSet(() => { callCount1++; }) - .OnSet((p1, _, _, _, _, _) => { callCount2 += p1; }).InParallel() - .OnSet((p1, _, _, _, _, _) => { callCount3 += p1; }); + .OnSet.Do(() => { callCount1++; }) + .OnSet.Do((p1, _, _, _, _, _) => { callCount2 += p1; }).InParallel() + .OnSet.Do((p1, _, _, _, _, _) => { callCount3 += p1; }); mock[4, 2, 3, 4, 5] = "foo"; mock[6, 2, 3, 4, 5] = "foo"; @@ -796,7 +796,7 @@ public async Task Only_ShouldInvokeCallbacksOnlyTheGivenNumberOfTimes(int times, mock.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnSet((p1, _, _, _, _, _) => { sum += p1; }).Only(times); + .OnSet.Do((p1, _, _, _, _, _) => { sum += p1; }).Only(times); mock[1, 2, 3, 4, 5] = "foo"; mock[2, 2, 3, 4, 5] = "foo"; @@ -816,8 +816,8 @@ public async Task OnlyOnce_ShouldDeactivateCallbackAfterFirstExecution() mock.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnSet(() => { callCount++; }) - .OnSet((p1, _, _, _, _, _) => { sum += p1; }).OnlyOnce(); + .OnSet.Do(() => { callCount++; }) + .OnSet.Do((p1, _, _, _, _, _) => { sum += p1; }).OnlyOnce(); mock[1, 2, 3, 4, 5] = "foo"; mock[2, 2, 3, 4, 5] = "foo"; @@ -835,7 +835,7 @@ public async Task ShouldExecuteSetterCallbacks() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.Is(i => i < 6), It.Is(i => i < 6), It.Is(i => i < 6), It.Is(i => i < 6), It.Is(i => i < 6)) - .OnSet(v => { callCount += v.Length; }); + .OnSet.Do(v => { callCount += v.Length; }); mock[1, 1, 1, 1, 1] = "a"; // yes (1) mock[4, 1, 2, 1, 3] = "bb"; // yes (2) @@ -857,7 +857,7 @@ public async Task ShouldExecuteSetterCallbacksWithoutAnyValue() IIndexerService mock = Mock.Create(); mock.SetupMock.Indexer(It.Is(i => i < 6), It.Is(i => i < 6), It.Is(i => i < 6), It.Is(i => i < 6), It.Is(i => i < 6)) - .OnSet(() => { callCount++; }); + .OnSet.Do(() => { callCount++; }); mock[1, 1, 1, 1, 1] = ""; // yes mock[1, 1, 1, 2, 2] = ""; // yes @@ -879,8 +879,8 @@ public async Task ShouldInvokeCallbacksInSequence() mock.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnSet(() => { callCount1++; }) - .OnSet((p1, _, _, _, _, _) => { callCount2 += p1; }); + .OnSet.Do(() => { callCount1++; }) + .OnSet.Do((p1, _, _, _, _, _) => { callCount2 += p1; }); mock[4, 2, 3, 4, 5] = "foo"; mock[6, 2, 3, 4, 5] = "foo"; @@ -898,7 +898,7 @@ public async Task When_ShouldOnlyExecuteCallbackWhenInvocationCountMatches() IIndexerService sut = Mock.Create(); sut.SetupMock.Indexer(It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny(), It.IsAny()) - .OnSet((i, _, _, _, _, _, _) => { invocations.Add(i); }) + .OnSet.Do((i, _, _, _, _, _, _) => { invocations.Add(i); }) .When(x => x is > 3 and < 9); for (int i = 0; i < 20; i++) diff --git a/Tests/Mockolate.Tests/MockProperties/SetupPropertyTests.OnGetTests.cs b/Tests/Mockolate.Tests/MockProperties/SetupPropertyTests.OnGetTests.cs index 403d976d..e9c75f76 100644 --- a/Tests/Mockolate.Tests/MockProperties/SetupPropertyTests.OnGetTests.cs +++ b/Tests/Mockolate.Tests/MockProperties/SetupPropertyTests.OnGetTests.cs @@ -12,7 +12,7 @@ public async Task For_ShouldStopExecutingCallbackAfterTheGivenTimes() List invocations = []; IPropertyService sut = Mock.Create(); sut.SetupMock.Property.MyProperty - .OnGet((i, _) => { invocations.Add(i); }) + .OnGet.Do((i, _) => { invocations.Add(i); }) .For(4); for (int i = 0; i < 20; i++) @@ -29,7 +29,7 @@ public async Task For_WithWhen_ShouldStopExecutingCallbackAfterTheGivenTimes() List invocations = []; IPropertyService sut = Mock.Create(); sut.SetupMock.Property.MyProperty - .OnGet((i, _) => { invocations.Add(i); }) + .OnGet.Do((i, _) => { invocations.Add(i); }) .When(x => x > 2) .For(4); @@ -50,9 +50,9 @@ public async Task MultipleOnGet_InParallel_ShouldInvokeParallelCallbacksAlways() IPropertyService sut = Mock.Create(); sut.SetupMock.Property.MyProperty - .OnGet(() => { callCount1++; }) - .OnGet(v => { callCount2 += v; }).InParallel() - .OnGet(v => { callCount3 += v; }); + .OnGet.Do(() => { callCount1++; }) + .OnGet.Do(v => { callCount2 += v; }).InParallel() + .OnGet.Do(v => { callCount3 += v; }); sut.MyProperty = 1; _ = sut.MyProperty; @@ -79,7 +79,7 @@ public async Task MultipleOnGet_Only_ShouldInvokeCallbacksOnlyTheGivenNumberOfTi IPropertyService sut = Mock.Create(); sut.SetupMock.Property.MyProperty - .OnGet(v => { sum += v; }).Only(times); + .OnGet.Do(v => { sum += v; }).Only(times); sut.MyProperty = 1; _ = sut.MyProperty; @@ -103,8 +103,8 @@ public async Task MultipleOnGet_OnlyOnce_ShouldDeactivateCallbackAfterFirstExecu IPropertyService sut = Mock.Create(); sut.SetupMock.Property.MyProperty - .OnGet(() => { callCount1++; }) - .OnGet(v => { callCount2 += v; }).OnlyOnce(); + .OnGet.Do(() => { callCount1++; }) + .OnGet.Do(v => { callCount2 += v; }).OnlyOnce(); sut.MyProperty = 1; _ = sut.MyProperty; @@ -127,8 +127,8 @@ public async Task MultipleOnGet_ShouldInvokeCallbacksInSequence() IPropertyService sut = Mock.Create(); sut.SetupMock.Property.MyProperty - .OnGet(() => { callCount1++; }) - .OnGet(v => { callCount2 += v; }); + .OnGet.Do(() => { callCount1++; }) + .OnGet.Do(v => { callCount2 += v; }); sut.MyProperty = 1; _ = sut.MyProperty; @@ -150,7 +150,7 @@ public async Task ShouldExecuteWhenPropertyIsRead() IPropertyService sut = Mock.Create(); sut.SetupMock.Property.MyProperty - .OnGet(() => { callCount++; }); + .OnGet.Do(() => { callCount++; }); _ = sut.MyProperty; @@ -164,7 +164,7 @@ public async Task ShouldNotExecuteWhenPropertyIsWrittenToOrOtherPropertyIsRead() IPropertyService sut = Mock.Create(); sut.SetupMock.Property.MyProperty - .OnGet(() => { callCount++; }); + .OnGet.Do(() => { callCount++; }); _ = sut.MyOtherProperty; sut.MyProperty = 1; @@ -178,7 +178,7 @@ public async Task When_ShouldOnlyExecuteCallbackWhenInvocationCountMatches() List invocations = []; IPropertyService sut = Mock.Create(); sut.SetupMock.Property.MyProperty - .OnGet((i, _) => { invocations.Add(i); }) + .OnGet.Do((i, _) => { invocations.Add(i); }) .When(x => x is > 3 and < 9); for (int i = 0; i < 20; i++) @@ -198,7 +198,7 @@ public async Task WithValue_ShouldExecuteWhenPropertyIsRead() sut.SetupMock.Property.MyProperty .InitializeWith(4) - .OnGet(v => + .OnGet.Do(v => { callCount++; receivedValue = v; @@ -217,7 +217,7 @@ public async Task WithValue_ShouldNotExecuteWhenPropertyIsWrittenToOrOtherProper IPropertyService sut = Mock.Create(); sut.SetupMock.Property.MyProperty - .OnGet(_ => { callCount++; }); + .OnGet.Do(_ => { callCount++; }); _ = sut.MyOtherProperty; sut.MyProperty = 1; diff --git a/Tests/Mockolate.Tests/MockProperties/SetupPropertyTests.OnSetTests.cs b/Tests/Mockolate.Tests/MockProperties/SetupPropertyTests.OnSetTests.cs index 2b0fa835..8be896b0 100644 --- a/Tests/Mockolate.Tests/MockProperties/SetupPropertyTests.OnSetTests.cs +++ b/Tests/Mockolate.Tests/MockProperties/SetupPropertyTests.OnSetTests.cs @@ -12,7 +12,7 @@ public async Task For_ShouldStopExecutingCallbackAfterTheGivenTimes() List invocations = []; IPropertyService sut = Mock.Create(); sut.SetupMock.Property.MyProperty - .OnSet((i, _) => { invocations.Add(i); }) + .OnSet.Do((i, _) => { invocations.Add(i); }) .For(4); for (int i = 0; i < 20; i++) @@ -29,7 +29,7 @@ public async Task For_WithWhen_ShouldStopExecutingCallbackAfterTheGivenTimes() List invocations = []; IPropertyService sut = Mock.Create(); sut.SetupMock.Property.MyProperty - .OnSet((i, _) => { invocations.Add(i); }) + .OnSet.Do((i, _) => { invocations.Add(i); }) .When(x => x > 2) .For(4); @@ -51,9 +51,9 @@ public async Task MultipleOnSet_InParallel_ShouldInvokeCallbacksInSequence() sut.SetupMock.Property.MyProperty .InitializeWith(2) - .OnSet(() => { callCount1++; }) - .OnSet((_, v) => { callCount2 += v; }).InParallel() - .OnSet((_, v) => { callCount3 += v; }); + .OnSet.Do(() => { callCount1++; }) + .OnSet.Do((_, v) => { callCount2 += v; }).InParallel() + .OnSet.Do((_, v) => { callCount3 += v; }); sut.MyProperty = 4; sut.MyProperty = 6; @@ -76,7 +76,7 @@ public async Task MultipleOnSet_Only_ShouldInvokeCallbacksOnlyTheGivenNumberOfTi IPropertyService sut = Mock.Create(); sut.SetupMock.Property.MyProperty - .OnSet((_, v) => { sum += v; }).Only(times); + .OnSet.Do((_, v) => { sum += v; }).Only(times); sut.MyProperty = 1; sut.MyProperty = 2; @@ -95,8 +95,8 @@ public async Task MultipleOnSet_OnlyOnce_ShouldDeactivateCallbackAfterFirstExecu IPropertyService sut = Mock.Create(); sut.SetupMock.Property.MyProperty - .OnSet(() => { callCount1++; }) - .OnSet((_, v) => { callCount2 += v; }).OnlyOnce(); + .OnSet.Do(() => { callCount1++; }) + .OnSet.Do((_, v) => { callCount2 += v; }).OnlyOnce(); sut.MyProperty = 1; sut.MyProperty = 2; @@ -116,8 +116,8 @@ public async Task MultipleOnSet_ShouldInvokeCallbacksInSequence() sut.SetupMock.Property.MyProperty .InitializeWith(2) - .OnSet(() => { callCount1++; }) - .OnSet((_, v) => { callCount2 += v; }); + .OnSet.Do(() => { callCount1++; }) + .OnSet.Do((_, v) => { callCount2 += v; }); sut.MyProperty = 4; sut.MyProperty = 6; @@ -135,7 +135,7 @@ public async Task ShouldExecuteWhenPropertyIsWrittenTo() IPropertyService sut = Mock.Create(); sut.SetupMock.Property.MyProperty - .OnSet(() => { callCount++; }); + .OnSet.Do(() => { callCount++; }); sut.MyProperty = 5; @@ -149,7 +149,7 @@ public async Task ShouldNotExecuteWhenPropertyIsReadOrOtherPropertyIsWrittenTo() IPropertyService sut = Mock.Create(); sut.SetupMock.Property.MyProperty - .OnSet(() => { callCount++; }); + .OnSet.Do(() => { callCount++; }); sut.MyOtherProperty = 1; _ = sut.MyProperty; @@ -163,7 +163,7 @@ public async Task When_ShouldOnlyExecuteCallbackWhenInvocationCountMatches() List invocations = []; IPropertyService sut = Mock.Create(); sut.SetupMock.Property.MyProperty - .OnSet((i, _) => { invocations.Add(i); }) + .OnSet.Do((i, _) => { invocations.Add(i); }) .When(x => x is > 3 and < 9); for (int i = 0; i < 20; i++) @@ -183,7 +183,7 @@ public async Task WithValue_ShouldExecuteWhenPropertyIsWrittenTo() sut.SetupMock.Property.MyProperty .InitializeWith(4) - .OnSet((_, v) => + .OnSet.Do((_, v) => { callCount++; receivedNewValue = v; @@ -202,7 +202,7 @@ public async Task WithValue_ShouldNotExecuteWhenPropertyIsReadOrOtherPropertyIsW IPropertyService sut = Mock.Create(); sut.SetupMock.Property.MyProperty - .OnSet((_, _) => { callCount++; }); + .OnSet.Do((_, _) => { callCount++; }); sut.MyOtherProperty = 1; _ = sut.MyProperty; diff --git a/Tests/Mockolate.Tests/Protected/ProtectedMockTests.cs b/Tests/Mockolate.Tests/Protected/ProtectedMockTests.cs index d7181630..6f992620 100644 --- a/Tests/Mockolate.Tests/Protected/ProtectedMockTests.cs +++ b/Tests/Mockolate.Tests/Protected/ProtectedMockTests.cs @@ -52,7 +52,7 @@ public async Task CanReadProtectedIndexers() int callCount = 0; MyProtectedClass mock = Mock.Create(); - mock.SetupMock.Protected.Indexer(It.IsAny()).InitializeWith(42).OnGet(() => callCount++); + mock.SetupMock.Protected.Indexer(It.IsAny()).InitializeWith(42).OnGet.Do(() => callCount++); int result = mock.GetMyProtectedIndexer(3); @@ -67,7 +67,7 @@ public async Task CanWriteProtectedIndexers() int callCount = 0; MyProtectedClass mock = Mock.Create(); - mock.SetupMock.Protected.Indexer(It.IsAny()).OnSet(() => callCount++); + mock.SetupMock.Protected.Indexer(It.IsAny()).OnSet.Do(() => callCount++); mock.SetMyProtectedIndexer(3, 4);