示例#1
0
        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);
        }
示例#2
0
 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);
 }
示例#3
0
 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);
 }
示例#4
0
        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);
        }
示例#5
0
 protected ViewModelBase(IProgressAggregator progress)
 {
     Progress = progress;
     UiDispatcher = App.Kernel.Get<CoreDispatcher>();
 }