mirror of
https://github.com/nsnail/Ocelot.git
synced 2025-04-22 13:22:50 +08:00

* hacked together load balancing reroutes in fileconfig * some renaming and refactoring * more renames * hacked away the old config json * test for issue 213 * renamed key * dont share ports * oops * updated docs * mvoed docs around * port being used
55 lines
1.3 KiB
C#
55 lines
1.3 KiB
C#
using System;
|
|
using System.Diagnostics;
|
|
|
|
namespace Ocelot.UnitTests
|
|
{
|
|
public class Wait
|
|
{
|
|
public static Waiter WaitFor(int milliSeconds)
|
|
{
|
|
return new Waiter(milliSeconds);
|
|
}
|
|
}
|
|
|
|
public class Waiter
|
|
{
|
|
private readonly int _milliSeconds;
|
|
|
|
public Waiter(int milliSeconds)
|
|
{
|
|
_milliSeconds = milliSeconds;
|
|
}
|
|
|
|
public bool Until(Func<bool> condition)
|
|
{
|
|
var stopwatch = Stopwatch.StartNew();
|
|
var passed = false;
|
|
while (stopwatch.ElapsedMilliseconds < _milliSeconds)
|
|
{
|
|
if (condition.Invoke())
|
|
{
|
|
passed = true;
|
|
break;
|
|
}
|
|
}
|
|
|
|
return passed;
|
|
}
|
|
|
|
public bool Until<T>(Func<bool> condition)
|
|
{
|
|
var stopwatch = Stopwatch.StartNew();
|
|
var passed = false;
|
|
while (stopwatch.ElapsedMilliseconds < _milliSeconds)
|
|
{
|
|
if (condition.Invoke())
|
|
{
|
|
passed = true;
|
|
break;
|
|
}
|
|
}
|
|
|
|
return passed;
|
|
}
|
|
}
|
|
} |