public void CanAddUseCases()
        {
            IApplicationModel applicationModel = CreateApplicationModel();
            IActiveAwareUseCaseController mockActiveAwareUseCaseController = new MockUseCase();
            applicationModel.AddMainUseCase(mockActiveAwareUseCaseController);

            Assert.IsTrue(applicationModel.MainUseCases.Contains(mockActiveAwareUseCaseController));
        }
        public void SettingActiveUseCaseWilSetIsActive()
        {
            ApplicationModel applicationModel = CreateApplicationModel();
            IActiveAwareUseCaseController mockUseCase1 = new MockUseCase();

            applicationModel.AddMainUseCase(mockUseCase1);

            Assert.IsFalse(mockUseCase1.IsActive);
            Assert.AreEqual(0, applicationModel.ActiveUseCases.Count());

            applicationModel.ActivateUseCase(mockUseCase1);

            Assert.AreEqual(mockUseCase1, applicationModel.ActiveUseCases.FirstOrDefault());
            Assert.IsTrue(mockUseCase1.IsActive);
        }