public void gracefully_return_a_blank_history_if_the_history_does_not_exist()
        {
            IProjectHistory history = persistor.LoadHistory();

            history.ShouldNotBeNull();
            history.Projects.Length.ShouldEqual(0);
        }
        protected override void beforeEach()
        {
            Services.PartialMockTheClassUnderTest();
            tokens          = new ProjectToken[0];
            _projectHistory = MockFor <IProjectHistory>();
            _projectHistory.Expect(x => x.Projects).Return(tokens);

            var projectToken1 = new ProjectToken
            {
                Filename = theProjectName
            };
            var projectToken2 = new ProjectToken
            {
                Filename = theProjectName,
                Name     = "foo"
            };


            _projectHistory.Stub(x => x.LastAccessed).Return(projectToken1);
            _projectHistory.Expect(x => x.Next(projectToken1)).Return(projectToken2);
            _projectHistory.Expect(x => x.Next(projectToken2)).Return(null);

            ClassUnderTest.Expect(x => x.LoadProject(projectToken1)).Return(false);
            ClassUnderTest.Expect(x => x.LoadProject(projectToken2)).Return(false);

            ClassUnderTest.Start();
        }
        public void gracefully_handles_a_malformed_project_history_file()
        {
            new FileSystem().WriteStringToFile("some junk that will never be deserialized to a ProjectHistory",
                                               ProjectPersistor.HISTORY_FILE);

            IProjectHistory history = persistor.LoadHistory();

            history.ShouldNotBeNull();
            history.Projects.Length.ShouldEqual(0);
        }
Beispiel #4
0
 public ProjectController(IProjectPersistor persistor, IScreenConductor shell, IEventAggregator events,
                          IProjectHistory history, IProjectExplorerView view, IFileDialogPicker filePicker)
 {
     _persistor  = persistor;
     _conductor  = shell;
     _events     = events;
     _history    = history;
     _view       = view;
     _filePicker = filePicker;
 }
        public void save_and_load_history()
        {
            var history        = new ProjectHistory();
            var theLastProject = new ProjectToken
            {
                Filename = "something",
                Name     = "else"
            };

            history.Store(theLastProject);

            persistor.SaveHistory(history);

            IProjectHistory history2 = persistor.LoadHistory();

            history2.LastAccessed.ShouldEqual(theLastProject);
        }
        protected override void beforeEach()
        {
            _shell = new StubShellPresenter();
            Services.Inject <IScreenConductor>(_shell);
            _hierarchy = new Hierarchy("something");
            _project   = MockRepository.GenerateMock <IProject>();
            _project.Stub(x => x.Name).Return(theProjectName);
            _project.Expect(x => x.LoadTests()).Return(_hierarchy);

            MockFor <IProjectPersistor>().Expect(x => x.LoadFromFile(theFileName)).Return(_project);

            _projectHistory = MockFor <IProjectHistory>();
            _projectToken   = new ProjectToken
            {
                Filename = theFileName,
                Name     = _project.Name
            };
            _projectHistory.Stub(x => x.MarkAsLastAccessed(_projectToken)).Throw(new Exception("bad message"));
            ClassUnderTest.LoadProject(_projectToken);
        }
 public void SaveHistory(IProjectHistory history)
 {
     _system.PersistToFile(history, HISTORY_FILE);
 }
Beispiel #8
0
 public void SaveHistory(IProjectHistory history)
 {
     _system.PersistToFile(history, HISTORY_FILE);
 }