12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- // Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. See License.txt in the project root for license information.
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading;
- namespace ReactiveTests
- {
- #if SILVERLIGHT && !SILVERLIGHTM7
- public class TestBase : Microsoft.Silverlight.Testing.SilverlightTest
- {
- public void RunAsync(Action<Waiter> a)
- {
- EnqueueCallback(() =>
- {
- var w = new Waiter(TestComplete);
- a(w);
- w.Wait();
- });
- }
- public void CompleteAsync()
- {
- EnqueueTestComplete();
- }
- }
- public class Waiter
- {
- private Action _complete;
- public Waiter(Action complete)
- {
- _complete = complete;
- }
- public void Set()
- {
- _complete();
- }
- public void Wait()
- {
- }
- }
- #else
- public class TestBase
- {
- public void RunAsync(Action<Waiter> a)
- {
- var w = new Waiter();
- a(w);
- w.Wait();
- }
- }
- public class Waiter
- {
- private ManualResetEvent _evt = new ManualResetEvent(false);
- public void Set()
- {
- _evt.Set();
- }
- public void Wait()
- {
- _evt.WaitOne();
- }
- }
- [AttributeUsage(AttributeTargets.Method)]
- public class AsynchronousAttribute : Attribute
- {
- }
- #endif
- }
|