/Atlassian.Jira.Test/MoqExtensions.cs
https://bitbucket.org/yyo/atlassian.net-sdk-v2.0 · C# · 33 lines · 31 code · 2 blank · 0 comment · 1 complexity · 284ef24bdbc53da4f6dc683868dbe55e MD5 · raw file
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using Moq.Language.Flow;
- using System.Collections;
-
- namespace Atlassian.Jira.Test
- {
- public static class MoqExtensions
- {
- public static void ReturnsInOrder<T, TResult>(this ISetup<T, TResult> setup,
- params TResult[] results) where T : class
- {
- setup.Returns(new Queue<TResult>(results).Dequeue);
- }
-
- public static void ReturnsInOrder<T, TResult>(this ISetup<T, TResult> setup,
- params object[] results) where T : class
- {
- var queue = new Queue(results);
- setup.Returns(() =>
- {
- var result = queue.Dequeue();
- if (result is Exception)
- {
- throw result as Exception;
- }
- return (TResult)result;
- });
- }
- }
- }