diff options
Diffstat (limited to 'Xamarin.Forms.Core.UnitTests/MockPlatformServices.cs')
-rw-r--r-- | Xamarin.Forms.Core.UnitTests/MockPlatformServices.cs | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/Xamarin.Forms.Core.UnitTests/MockPlatformServices.cs b/Xamarin.Forms.Core.UnitTests/MockPlatformServices.cs index 7d2317b3..5109cbb4 100644 --- a/Xamarin.Forms.Core.UnitTests/MockPlatformServices.cs +++ b/Xamarin.Forms.Core.UnitTests/MockPlatformServices.cs @@ -9,6 +9,8 @@ using Xamarin.Forms; using Xamarin.Forms.Core.UnitTests; using System.Security.Cryptography; using System.Text; +using Xamarin.Forms.Internals; + #if WINDOWS_PHONE using Xamarin.Forms.Platform.WinPhone; #endif @@ -88,6 +90,11 @@ namespace Xamarin.Forms.Core.UnitTests invokeOnMainThread (action); } + public Ticker CreateTicker() + { + return new MockTicker(); + } + public void StartTimer (TimeSpan interval, Func<bool> callback) { Timer timer = null; @@ -267,4 +274,24 @@ namespace Xamarin.Forms.Core.UnitTests { } } + + internal class MockTicker : Ticker + { + bool _enabled; + + protected override void EnableTimer() + { + _enabled = true; + + while (_enabled) + { + SendSignals(16); + } + } + + protected override void DisableTimer() + { + _enabled = false; + } + } }
\ No newline at end of file |