protected override void Context() { _heavyWorkPresenterFactory = A.Fake <IHeavyWorkPresenterFactory>(); _heavyWorkPresenter = A.Fake <IHeavyWorkPresenter>(); A.CallTo(() => _heavyWorkPresenterFactory.Create()).Returns(_heavyWorkPresenter); _exceptionManager = A.Fake <IExceptionManager>(); sut = new HeavyWorkManager(_heavyWorkPresenterFactory, _exceptionManager); }
public bool Start(Action heavyWorkAction, string caption) { _success = true; using (var presenter = _heavyWorkPresenterFactory.Create()) { _presenter = presenter; StartAsync(heavyWorkAction); //action will block the current thread presenter.Start(caption); return(_success); } }
private void actionCompleted(RunWorkerCompletedEventArgs runWorkerCompletedEventArgs) { //close the presenter when the action is completed if (_presenter != null) { _presenter.Close(); } _action = null; _presenter = null; if (runWorkerCompletedEventArgs.Error != null) { _success = false; _exceptionManager.LogException(runWorkerCompletedEventArgs.Error); } else { _success = !runWorkerCompletedEventArgs.Cancelled; } HeavyWorkedFinished(this, new HeavyWorkEventArgs(_success)); }
public void AttachPresenter(IHeavyWorkPresenter presenter) { }