Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -774,11 +774,6 @@ private static void AppendIndexerSetup(StringBuilder sb, int numberOfParameters)
sb.Append("\t\t\t=> _skipBaseClass;").AppendLine();
sb.AppendLine();

sb.Append("\t\t/// <inheritdoc cref=\"IndexerSetup.HasReturnCalls()\" />").AppendLine();
sb.Append("\t\tprotected override bool HasReturnCalls()").AppendLine();
sb.Append("\t\t\t=> _returnCallbacks.Count > 0;").AppendLine();
sb.AppendLine();

sb.Append(
"\t\t/// <inheritdoc cref=\"ExecuteSetterCallback{TValue}(IndexerSetterAccess, TValue, MockBehavior)\" />")
.AppendLine();
Expand Down
25 changes: 0 additions & 25 deletions Source/Mockolate/Setup/IndexerSetup.cs
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,6 @@ namespace Mockolate.Setup;
/// </summary>
public abstract class IndexerSetup : IInteractiveIndexerSetup
{
/// <inheritdoc cref="IInteractiveIndexerSetup.HasReturnCalls()" />
bool IInteractiveIndexerSetup.HasReturnCalls()
=> HasReturnCalls();

/// <inheritdoc cref="IInteractiveIndexerSetup.Matches(IndexerAccess)" />
bool IInteractiveIndexerSetup.Matches(IndexerAccess indexerAccess)
=> IsMatch(indexerAccess.Parameters);
Expand Down Expand Up @@ -111,11 +107,6 @@ protected static bool Matches(NamedParameter[] namedParameters, NamedParameterVa
/// </summary>
protected abstract bool? GetSkipBaseClass();

/// <summary>
/// Gets a value indicating whether this setup has return calls configured.
/// </summary>
protected abstract bool HasReturnCalls();

/// <summary>
/// Attempts to retrieve the initial <paramref name="value" /> for the <paramref name="parameters" />, if an
/// initialization is set up.
Expand Down Expand Up @@ -390,10 +381,6 @@ IIndexerSetup<TValue, T1> IIndexerSetupReturnWhenBuilder<TValue, T1>.Only(int ti
protected override bool? GetSkipBaseClass()
=> _skipBaseClass;

/// <inheritdoc cref="IndexerSetup.HasReturnCalls()" />
protected override bool HasReturnCalls()
=> _returnCallbacks.Count > 0;

/// <inheritdoc cref="ExecuteGetterCallback{TValue}(IndexerGetterAccess, TValue, MockBehavior)" />
protected override T ExecuteGetterCallback<T>(IndexerGetterAccess indexerGetterAccess, T value,
MockBehavior behavior)
Expand Down Expand Up @@ -746,10 +733,6 @@ IIndexerSetup<TValue, T1, T2> IIndexerSetupReturnWhenBuilder<TValue, T1, T2>.Onl
protected override bool? GetSkipBaseClass()
=> _skipBaseClass;

/// <inheritdoc cref="IndexerSetup.HasReturnCalls()" />
protected override bool HasReturnCalls()
=> _returnCallbacks.Count > 0;

/// <inheritdoc cref="ExecuteGetterCallback{TValue}(IndexerGetterAccess, TValue, MockBehavior)" />
protected override T ExecuteGetterCallback<T>(IndexerGetterAccess indexerGetterAccess, T value,
MockBehavior behavior)
Expand Down Expand Up @@ -1117,10 +1100,6 @@ IIndexerSetup<TValue, T1, T2, T3> IIndexerSetupReturnWhenBuilder<TValue, T1, T2,
protected override bool? GetSkipBaseClass()
=> _skipBaseClass;

/// <inheritdoc cref="IndexerSetup.HasReturnCalls()" />
protected override bool HasReturnCalls()
=> _returnCallbacks.Count > 0;

/// <inheritdoc cref="ExecuteGetterCallback{TValue}(IndexerGetterAccess, TValue, MockBehavior)" />
protected override T ExecuteGetterCallback<T>(IndexerGetterAccess indexerGetterAccess, T value,
MockBehavior behavior)
Expand Down Expand Up @@ -1503,10 +1482,6 @@ IIndexerSetup<TValue, T1, T2, T3, T4> IIndexerSetupReturnWhenBuilder<TValue, T1,
protected override bool? GetSkipBaseClass()
=> _skipBaseClass;

/// <inheritdoc cref="IndexerSetup.HasReturnCalls()" />
protected override bool HasReturnCalls()
=> _returnCallbacks.Count > 0;

/// <inheritdoc cref="ExecuteGetterCallback{TValue}(IndexerGetterAccess, TValue, MockBehavior)" />
protected override T ExecuteGetterCallback<T>(IndexerGetterAccess indexerGetterAccess, T value,
MockBehavior behavior)
Expand Down
16 changes: 9 additions & 7 deletions Source/Mockolate/Setup/IndexerSetupResult.cs
Original file line number Diff line number Diff line change
Expand Up @@ -59,14 +59,16 @@ public TResult GetResult(Func<TResult> defaultValueGenerator)
TResult value;
if (_setup is IndexerSetup indexerSetup)
{
_setup.GetInitialValue(_behavior, defaultValueGenerator, indexerAccess.Parameters, out value);
value = getIndexerValue(_setup,
() =>
{
_setup.GetInitialValue(_behavior, defaultValueGenerator, indexerAccess.Parameters,
out var v);
return v;
}, indexerAccess.Parameters);
value = indexerSetup.InvokeGetter(indexerAccess, value, _behavior);

if (_setup.HasReturnCalls())
{
setIndexerValue(indexerAccess.Parameters, value);
return value;
}
setIndexerValue(indexerAccess.Parameters, value);
return value;
}
else if (_behavior.ThrowWhenNotSetup)
{
Expand Down
5 changes: 0 additions & 5 deletions Source/Mockolate/Setup/Interfaces.IndexerSetup.cs
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,6 @@ public interface IInteractiveIndexerSetup : ISetup
/// </summary>
bool? SkipBaseClass();

/// <summary>
/// Gets a value indicating whether this setup has return calls configured.
/// </summary>
bool HasReturnCalls();

/// <summary>
/// Checks if the <paramref name="indexerAccess" /> matches the setup.
/// </summary>
Expand Down
6 changes: 0 additions & 6 deletions Tests/Mockolate.Api.Tests/Expected/Mockolate_net10.0.txt
Original file line number Diff line number Diff line change
Expand Up @@ -858,7 +858,6 @@ namespace Mockolate.Setup
public interface IInteractiveIndexerSetup : Mockolate.Setup.ISetup
{
void GetInitialValue<TValue>(Mockolate.MockBehavior behavior, System.Func<TValue> defaultValueGenerator, Mockolate.Parameters.NamedParameterValue[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out TValue value);
bool HasReturnCalls();
bool Matches(Mockolate.Interactions.IndexerAccess indexerAccess);
bool? SkipBaseClass();
}
Expand Down Expand Up @@ -1286,7 +1285,6 @@ namespace Mockolate.Setup
protected abstract void ExecuteSetterCallback<T>(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior);
protected abstract void GetInitialValue<T>(Mockolate.MockBehavior behavior, System.Func<T> defaultValueGenerator, Mockolate.Parameters.NamedParameterValue[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T value);
protected abstract bool? GetSkipBaseClass();
protected abstract bool HasReturnCalls();
protected abstract bool IsMatch(Mockolate.Parameters.NamedParameterValue[] parameters);
protected static bool Matches(Mockolate.Parameters.NamedParameter[] namedParameters, Mockolate.Parameters.NamedParameterValue[] values) { }
protected static bool TryCast<T>([System.Diagnostics.CodeAnalysis.NotNullWhen(false)] object? value, out T result, Mockolate.MockBehavior behavior) { }
Expand All @@ -1311,7 +1309,6 @@ namespace Mockolate.Setup
protected override void ExecuteSetterCallback<T>(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior) { }
protected override void GetInitialValue<T>(Mockolate.MockBehavior behavior, System.Func<T> defaultValueGenerator, Mockolate.Parameters.NamedParameterValue[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T value) { }
protected override bool? GetSkipBaseClass() { }
protected override bool HasReturnCalls() { }
public Mockolate.Setup.IIndexerSetup<TValue, T1> InitializeWith(System.Func<T1, TValue> valueGenerator) { }
public Mockolate.Setup.IIndexerSetup<TValue, T1> InitializeWith(TValue value) { }
protected override bool IsMatch(Mockolate.Parameters.NamedParameterValue[] parameters) { }
Expand All @@ -1336,7 +1333,6 @@ namespace Mockolate.Setup
protected override void ExecuteSetterCallback<T>(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior) { }
protected override void GetInitialValue<T>(Mockolate.MockBehavior behavior, System.Func<T> defaultValueGenerator, Mockolate.Parameters.NamedParameterValue[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T value) { }
protected override bool? GetSkipBaseClass() { }
protected override bool HasReturnCalls() { }
public Mockolate.Setup.IIndexerSetup<TValue, T1, T2> InitializeWith(System.Func<T1, T2, TValue> valueGenerator) { }
public Mockolate.Setup.IIndexerSetup<TValue, T1, T2> InitializeWith(TValue value) { }
protected override bool IsMatch(Mockolate.Parameters.NamedParameterValue[] parameters) { }
Expand All @@ -1361,7 +1357,6 @@ namespace Mockolate.Setup
protected override void ExecuteSetterCallback<T>(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior) { }
protected override void GetInitialValue<T>(Mockolate.MockBehavior behavior, System.Func<T> defaultValueGenerator, Mockolate.Parameters.NamedParameterValue[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T value) { }
protected override bool? GetSkipBaseClass() { }
protected override bool HasReturnCalls() { }
public Mockolate.Setup.IIndexerSetup<TValue, T1, T2, T3> InitializeWith(System.Func<T1, T2, T3, TValue> valueGenerator) { }
public Mockolate.Setup.IIndexerSetup<TValue, T1, T2, T3> InitializeWith(TValue value) { }
protected override bool IsMatch(Mockolate.Parameters.NamedParameterValue[] parameters) { }
Expand All @@ -1386,7 +1381,6 @@ namespace Mockolate.Setup
protected override void ExecuteSetterCallback<T>(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior) { }
protected override void GetInitialValue<T>(Mockolate.MockBehavior behavior, System.Func<T> defaultValueGenerator, Mockolate.Parameters.NamedParameterValue[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T value) { }
protected override bool? GetSkipBaseClass() { }
protected override bool HasReturnCalls() { }
public Mockolate.Setup.IIndexerSetup<TValue, T1, T2, T3, T4> InitializeWith(System.Func<T1, T2, T3, T4, TValue> valueGenerator) { }
public Mockolate.Setup.IIndexerSetup<TValue, T1, T2, T3, T4> InitializeWith(TValue value) { }
protected override bool IsMatch(Mockolate.Parameters.NamedParameterValue[] parameters) { }
Expand Down
6 changes: 0 additions & 6 deletions Tests/Mockolate.Api.Tests/Expected/Mockolate_net8.0.txt
Original file line number Diff line number Diff line change
Expand Up @@ -857,7 +857,6 @@ namespace Mockolate.Setup
public interface IInteractiveIndexerSetup : Mockolate.Setup.ISetup
{
void GetInitialValue<TValue>(Mockolate.MockBehavior behavior, System.Func<TValue> defaultValueGenerator, Mockolate.Parameters.NamedParameterValue[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out TValue value);
bool HasReturnCalls();
bool Matches(Mockolate.Interactions.IndexerAccess indexerAccess);
bool? SkipBaseClass();
}
Expand Down Expand Up @@ -1285,7 +1284,6 @@ namespace Mockolate.Setup
protected abstract void ExecuteSetterCallback<T>(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior);
protected abstract void GetInitialValue<T>(Mockolate.MockBehavior behavior, System.Func<T> defaultValueGenerator, Mockolate.Parameters.NamedParameterValue[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T value);
protected abstract bool? GetSkipBaseClass();
protected abstract bool HasReturnCalls();
protected abstract bool IsMatch(Mockolate.Parameters.NamedParameterValue[] parameters);
protected static bool Matches(Mockolate.Parameters.NamedParameter[] namedParameters, Mockolate.Parameters.NamedParameterValue[] values) { }
protected static bool TryCast<T>([System.Diagnostics.CodeAnalysis.NotNullWhen(false)] object? value, out T result, Mockolate.MockBehavior behavior) { }
Expand All @@ -1310,7 +1308,6 @@ namespace Mockolate.Setup
protected override void ExecuteSetterCallback<T>(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior) { }
protected override void GetInitialValue<T>(Mockolate.MockBehavior behavior, System.Func<T> defaultValueGenerator, Mockolate.Parameters.NamedParameterValue[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T value) { }
protected override bool? GetSkipBaseClass() { }
protected override bool HasReturnCalls() { }
public Mockolate.Setup.IIndexerSetup<TValue, T1> InitializeWith(System.Func<T1, TValue> valueGenerator) { }
public Mockolate.Setup.IIndexerSetup<TValue, T1> InitializeWith(TValue value) { }
protected override bool IsMatch(Mockolate.Parameters.NamedParameterValue[] parameters) { }
Expand All @@ -1335,7 +1332,6 @@ namespace Mockolate.Setup
protected override void ExecuteSetterCallback<T>(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior) { }
protected override void GetInitialValue<T>(Mockolate.MockBehavior behavior, System.Func<T> defaultValueGenerator, Mockolate.Parameters.NamedParameterValue[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T value) { }
protected override bool? GetSkipBaseClass() { }
protected override bool HasReturnCalls() { }
public Mockolate.Setup.IIndexerSetup<TValue, T1, T2> InitializeWith(System.Func<T1, T2, TValue> valueGenerator) { }
public Mockolate.Setup.IIndexerSetup<TValue, T1, T2> InitializeWith(TValue value) { }
protected override bool IsMatch(Mockolate.Parameters.NamedParameterValue[] parameters) { }
Expand All @@ -1360,7 +1356,6 @@ namespace Mockolate.Setup
protected override void ExecuteSetterCallback<T>(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior) { }
protected override void GetInitialValue<T>(Mockolate.MockBehavior behavior, System.Func<T> defaultValueGenerator, Mockolate.Parameters.NamedParameterValue[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T value) { }
protected override bool? GetSkipBaseClass() { }
protected override bool HasReturnCalls() { }
public Mockolate.Setup.IIndexerSetup<TValue, T1, T2, T3> InitializeWith(System.Func<T1, T2, T3, TValue> valueGenerator) { }
public Mockolate.Setup.IIndexerSetup<TValue, T1, T2, T3> InitializeWith(TValue value) { }
protected override bool IsMatch(Mockolate.Parameters.NamedParameterValue[] parameters) { }
Expand All @@ -1385,7 +1380,6 @@ namespace Mockolate.Setup
protected override void ExecuteSetterCallback<T>(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior) { }
protected override void GetInitialValue<T>(Mockolate.MockBehavior behavior, System.Func<T> defaultValueGenerator, Mockolate.Parameters.NamedParameterValue[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T value) { }
protected override bool? GetSkipBaseClass() { }
protected override bool HasReturnCalls() { }
public Mockolate.Setup.IIndexerSetup<TValue, T1, T2, T3, T4> InitializeWith(System.Func<T1, T2, T3, T4, TValue> valueGenerator) { }
public Mockolate.Setup.IIndexerSetup<TValue, T1, T2, T3, T4> InitializeWith(TValue value) { }
protected override bool IsMatch(Mockolate.Parameters.NamedParameterValue[] parameters) { }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -820,7 +820,6 @@ namespace Mockolate.Setup
public interface IInteractiveIndexerSetup : Mockolate.Setup.ISetup
{
void GetInitialValue<TValue>(Mockolate.MockBehavior behavior, System.Func<TValue> defaultValueGenerator, Mockolate.Parameters.NamedParameterValue[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out TValue value);
bool HasReturnCalls();
bool Matches(Mockolate.Interactions.IndexerAccess indexerAccess);
bool? SkipBaseClass();
}
Expand Down Expand Up @@ -1248,7 +1247,6 @@ namespace Mockolate.Setup
protected abstract void ExecuteSetterCallback<T>(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior);
protected abstract void GetInitialValue<T>(Mockolate.MockBehavior behavior, System.Func<T> defaultValueGenerator, Mockolate.Parameters.NamedParameterValue[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T value);
protected abstract bool? GetSkipBaseClass();
protected abstract bool HasReturnCalls();
protected abstract bool IsMatch(Mockolate.Parameters.NamedParameterValue[] parameters);
protected static bool Matches(Mockolate.Parameters.NamedParameter[] namedParameters, Mockolate.Parameters.NamedParameterValue[] values) { }
protected static bool TryCast<T>([System.Diagnostics.CodeAnalysis.NotNullWhen(false)] object? value, out T result, Mockolate.MockBehavior behavior) { }
Expand All @@ -1273,7 +1271,6 @@ namespace Mockolate.Setup
protected override void ExecuteSetterCallback<T>(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior) { }
protected override void GetInitialValue<T>(Mockolate.MockBehavior behavior, System.Func<T> defaultValueGenerator, Mockolate.Parameters.NamedParameterValue[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T value) { }
protected override bool? GetSkipBaseClass() { }
protected override bool HasReturnCalls() { }
public Mockolate.Setup.IIndexerSetup<TValue, T1> InitializeWith(System.Func<T1, TValue> valueGenerator) { }
public Mockolate.Setup.IIndexerSetup<TValue, T1> InitializeWith(TValue value) { }
protected override bool IsMatch(Mockolate.Parameters.NamedParameterValue[] parameters) { }
Expand All @@ -1298,7 +1295,6 @@ namespace Mockolate.Setup
protected override void ExecuteSetterCallback<T>(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior) { }
protected override void GetInitialValue<T>(Mockolate.MockBehavior behavior, System.Func<T> defaultValueGenerator, Mockolate.Parameters.NamedParameterValue[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T value) { }
protected override bool? GetSkipBaseClass() { }
protected override bool HasReturnCalls() { }
public Mockolate.Setup.IIndexerSetup<TValue, T1, T2> InitializeWith(System.Func<T1, T2, TValue> valueGenerator) { }
public Mockolate.Setup.IIndexerSetup<TValue, T1, T2> InitializeWith(TValue value) { }
protected override bool IsMatch(Mockolate.Parameters.NamedParameterValue[] parameters) { }
Expand All @@ -1323,7 +1319,6 @@ namespace Mockolate.Setup
protected override void ExecuteSetterCallback<T>(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior) { }
protected override void GetInitialValue<T>(Mockolate.MockBehavior behavior, System.Func<T> defaultValueGenerator, Mockolate.Parameters.NamedParameterValue[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T value) { }
protected override bool? GetSkipBaseClass() { }
protected override bool HasReturnCalls() { }
public Mockolate.Setup.IIndexerSetup<TValue, T1, T2, T3> InitializeWith(System.Func<T1, T2, T3, TValue> valueGenerator) { }
public Mockolate.Setup.IIndexerSetup<TValue, T1, T2, T3> InitializeWith(TValue value) { }
protected override bool IsMatch(Mockolate.Parameters.NamedParameterValue[] parameters) { }
Expand All @@ -1348,7 +1343,6 @@ namespace Mockolate.Setup
protected override void ExecuteSetterCallback<T>(Mockolate.Interactions.IndexerSetterAccess indexerSetterAccess, T value, Mockolate.MockBehavior behavior) { }
protected override void GetInitialValue<T>(Mockolate.MockBehavior behavior, System.Func<T> defaultValueGenerator, Mockolate.Parameters.NamedParameterValue[] parameters, [System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T value) { }
protected override bool? GetSkipBaseClass() { }
protected override bool HasReturnCalls() { }
public Mockolate.Setup.IIndexerSetup<TValue, T1, T2, T3, T4> InitializeWith(System.Func<T1, T2, T3, T4, TValue> valueGenerator) { }
public Mockolate.Setup.IIndexerSetup<TValue, T1, T2, T3, T4> InitializeWith(TValue value) { }
protected override bool IsMatch(Mockolate.Parameters.NamedParameterValue[] parameters) { }
Expand Down
Loading
Loading