/// <summary> /// Unloads the current project. /// </summary> public void UnloadProject() { if (!CanUnloadProject()) { throw new CannotUnloadProjectException(); } var context = new UnloadProjectContext(); Debug.Assert(m_Service.Contains(UnloadProjectCommand.CommandId), "A command has gone missing."); m_Service.Invoke(UnloadProjectCommand.CommandId, context); m_Facade = null; RaiseOnProjectUnloaded(); }
public void Invoke() { bool wasInvoked = false; Action action = () => { wasInvoked = true; }; var command = new UnloadProjectCommand(action); var context = new UnloadProjectContext(); command.Invoke(context); context.Result.Wait(); Assert.IsTrue(wasInvoked); }