static IOutEvents MakeOutEventsMock(IProgressAggregator agg) { var outEvents = Substitute.For <IOutEvents>(); agg.ProgressStarted += (s, e) => outEvents.ProgressStarted(s, e); agg.ProgressChanged += (s, e) => outEvents.ProgressChanged(s, e); agg.ProgressEnded += (s, e) => outEvents.ProgressEnded(s, e); return(outEvents); }
public void Init() { timer = Substitute.For <IHeartBeatTimer>(); invoke = Substitute.For <ISynchronizationContext>(); invoke.When(x => x.Post(Arg.Any <Action>())).Do(callInfo => { Assert.IsNull(lastInvokedAction); lastInvokedAction = callInfo.Arg <Action>(); }); agg = ((IProgressAggregatorFactory) new ProgressAggregator.Factory(timer, invoke)).CreateProgressAggregator(); outEvents = MakeOutEventsMock(agg); }
public void Init() { timer = Substitute.For <IHeartBeatTimer>(); invoke = Substitute.For <IInvokeSynchronization>(); invoke.Invoke(null).ReturnsForAnyArgs(callInfo => { Assert.IsNull(lastInvokedAction); lastInvokedAction = callInfo.Arg <Action>(); lastActionCompletion = new TaskCompletionSource <int>(); return(lastActionCompletion.Task); }); agg = ((IProgressAggregatorFactory) new ProgressAggregator.Factory(timer, invoke)).CreateProgressAggregator(); outEvents = MakeOutEventsMock(agg); }
public MainViewModel(IProgressAggregator progress) : base(progress) { _sceneRenderer = new SceneRenderer(); RenderWidth = 400; RenderHeight = 300; RenderCommand = new AsyncDelegateCommand(Render); AnimateCommand = new AsyncDelegateCommand(Animate); RenderParameters = new ParameterBinding(UiDispatcher); AnimationParameters = new ParameterBinding(UiDispatcher); }
protected ViewModelBase(IProgressAggregator progress) { Progress = progress; UiDispatcher = App.Kernel.Get<CoreDispatcher>(); }