public void VerifyThatPopulatedDialogResultIsReturnedWhenOkExecuted()
        {
            var availableSessions = new List <ISession>();

            availableSessions.Add(this.session.Object);

            var siteDirectory = this.session.Object.Assembler.RetrieveSiteDirectory();

            var engineeringModelSetup = new EngineeringModelSetup(Guid.NewGuid(), this.cache, this.uri);

            engineeringModelSetup.Name      = "Test Model";
            engineeringModelSetup.ShortName = "testmodel";

            siteDirectory.Model.Add(engineeringModelSetup);

            var vm = new EngineeringModelSetupSelectionDialogViewModel(availableSessions);

            vm.SelectedSession = this.session.Object;
            vm.SelectedEngineeringModelSetup = engineeringModelSetup;

            vm.OkCommand.Execute(null);

            var dialogResult = (EngineeringModelSetupSelectionResult)vm.DialogResult;

            Assert.IsTrue(dialogResult.Result.Value);
            Assert.AreEqual(this.session.Object, dialogResult.SelectedSession);
            Assert.AreEqual(engineeringModelSetup, dialogResult.SelectedEngineeringModelSetup);
        }
        public void VerifyThatIfOnlyOneSessionExistsItIsSelected()
        {
            var availableSessions = new List <ISession>();

            availableSessions.Add(this.session.Object);

            var vm = new EngineeringModelSetupSelectionDialogViewModel(availableSessions);

            Assert.AreEqual(vm.SelectedSession, this.session.Object);
        }
        public void VerifyThatWhenCancelledIsExecutedEmptyResultIsReturned()
        {
            var availableSessions = new List <ISession>();

            availableSessions.Add(this.session.Object);

            var vm = new EngineeringModelSetupSelectionDialogViewModel(availableSessions);

            vm.CancelCommand.Execute(null);

            Assert.IsFalse(vm.DialogResult.Result.Value);
        }
        public void VerifyThatIfMultipleSessionsExistsNoneAreSelected()
        {
            var availableSessions = new List <ISession>();

            availableSessions.Add(this.session.Object);

            var session = new Mock <ISession>();

            availableSessions.Add(session.Object);

            var vm = new EngineeringModelSetupSelectionDialogViewModel(availableSessions);

            Assert.IsNull(vm.SelectedSession);
        }
        public void VerifyThatEngineeringModelSetupsAreLoaded()
        {
            var availableSessions = new List <ISession>();

            availableSessions.Add(this.session.Object);

            var siteDirectory = this.session.Object.Assembler.RetrieveSiteDirectory();

            var engineeringModelSetup = new EngineeringModelSetup(Guid.NewGuid(), this.cache, this.uri);

            engineeringModelSetup.Name      = "Test Model";
            engineeringModelSetup.ShortName = "testmodel";

            siteDirectory.Model.Add(engineeringModelSetup);

            var vm = new EngineeringModelSetupSelectionDialogViewModel(availableSessions);

            Assert.Contains(engineeringModelSetup, vm.PossibleEngineeringModelSetups);
        }
        public void VerifyThatWhenEngineeringModelSelectedCanOk()
        {
            var availableSessions = new List <ISession>();

            availableSessions.Add(this.session.Object);

            var siteDirectory = this.session.Object.Assembler.RetrieveSiteDirectory();

            var engineeringModelSetup = new EngineeringModelSetup(Guid.NewGuid(), this.cache, this.uri);

            engineeringModelSetup.Name      = "Test Model";
            engineeringModelSetup.ShortName = "testmodel";

            siteDirectory.Model.Add(engineeringModelSetup);

            var vm = new EngineeringModelSetupSelectionDialogViewModel(availableSessions);

            Assert.IsFalse(vm.OkCommand.CanExecute(null));

            vm.SelectedEngineeringModelSetup = engineeringModelSetup;

            Assert.IsTrue(vm.OkCommand.CanExecute(null));
        }