Пример #1
0
        public void GetProjects_SolutionHasTwoProjectsAndNoProjectSelectedInProjectsBrowser_ReturnsAllProjectsInSolutionForPackage()
        {
            CreateFakeSolution();
            List <IProject> projectsAddedToSolution = AddSolutionWithTwoProjectsToProjectService();

            projectsAddedToSolution[0].Name = "Project A";
            projectsAddedToSolution[1].Name = "Project B";
            fakeSolution.FakeActiveProject  = null;

            fakeSolution.AddFakeProjectToReturnFromGetProject("Project A");
            fakeSolution.AddFakeProjectToReturnFromGetProject("Project B");
            CreateSelectedProjects();

            var fakePackage = new FakePackage();
            var projects    = new List <IPackageManagementSelectedProject>();

            projects.AddRange(selectedProjects.GetProjects(fakePackage));

            var expectedProjects = new List <IPackageManagementSelectedProject>();

            expectedProjects.Add(new FakeSelectedProject("Project A", selected: false, enabled: true));
            expectedProjects.Add(new FakeSelectedProject("Project B", selected: false, enabled: true));

            SelectedProjectCollectionAssert.AreEqual(expectedProjects, projects);
        }
Пример #2
0
        public void GetProjects_SolutionHasTwoProjectsAndOneProjectSelectedInProjectsBrowser_ReturnsProjectSelectedInProjects()
        {
            CreateFakeSolution();
            List <IProject> projectsAddedToSolution = AddSolutionWithTwoProjectsToProjectService();
            IProject        project = projectsAddedToSolution[1];

            project.Name = "MyProject";
            fakeSolution.FakeActiveMSBuildProject = project;

            var fakeProject = fakeSolution.AddFakeProjectToReturnFromGetProject("MyProject");

            CreateSelectedProjects();

            var fakePackage = new FakePackage();
            var projects    = new List <IPackageManagementSelectedProject>();

            projects.AddRange(selectedProjects.GetProjects(fakePackage));

            var expectedProject  = new FakeSelectedProject("MyProject", selected: false, enabled: true);
            var expectedProjects = new List <IPackageManagementSelectedProject>();

            expectedProjects.Add(expectedProject);

            SelectedProjectCollectionAssert.AreEqual(expectedProjects, projects);
        }
Пример #3
0
        public void GetProjects_SolutionHasTwoProjectsAndOneProjectSelectedInProjectsBrowserAndPackageIsInstalledInProject_ReturnsProjectAndIsSelectedIsTrue()
        {
            CreateFakeSolution();
            List <IProject> projectsAddedToSolution = AddSolutionWithTwoProjectsToProjectService();

            projectsAddedToSolution[0].Name = "Aaa";
            IProject msbuildProject = projectsAddedToSolution[1];

            msbuildProject.Name = "MyProject";
            fakeSolution.FakeActiveMSBuildProject = msbuildProject;

            var fakePackage = new FakePackage();
            var fakeProject = fakeSolution.AddFakeProjectToReturnFromGetProject("MyProject");

            fakeProject.FakePackages.Add(fakePackage);
            fakeSolution.AddFakeProjectToReturnFromGetProject("Aaa");

            CreateSelectedProjects();

            List <IPackageManagementSelectedProject> projects =
                selectedProjects.GetProjects(fakePackage).ToList();

            var expectedProject  = new FakeSelectedProject("MyProject", selected: true);
            var expectedProjects = new List <IPackageManagementSelectedProject>();

            expectedProjects.Add(expectedProject);

            SelectedProjectCollectionAssert.AreEqual(expectedProjects, projects);
            Assert.AreEqual(fakePackage.FakePackageRepository, fakeSolution.RepositoryPassedToGetProject);
            Assert.AreEqual(msbuildProject, fakeSolution.ProjectPassedToGetProject);
        }
Пример #4
0
        public void GetProjects_SolutionHasTwoProjectsAndNoProjectSelectedInProjectsBrowserAndPackageIsInstalledInFirstProject_ReturnsAllProjectsInSolutionWithIsSelectedIsTrue()
        {
            CreateFakeSolution();
            List <IProject> projectsAddedToSolution = AddSolutionWithTwoProjectsToProjectService();

            projectsAddedToSolution[0].Name = "Project A";
            projectsAddedToSolution[1].Name = "Project B";
            fakeSolution.FakeActiveProject  = null;

            var fakePackage = new FakePackage("Test");
            var fakeProject = fakeSolution.AddFakeProjectToReturnFromGetProject("Project A");

            fakeProject.FakePackages.Add(fakePackage);
            fakeSolution.AddFakeProjectToReturnFromGetProject("Project B");

            CreateSelectedProjects();

            List <IPackageManagementSelectedProject> projects =
                selectedProjects.GetProjects(fakePackage).ToList();

            var expectedProjects = new List <IPackageManagementSelectedProject>();

            expectedProjects.Add(new FakeSelectedProject("Project A", selected: true));
            expectedProjects.Add(new FakeSelectedProject("Project B", selected: false));

            SelectedProjectCollectionAssert.AreEqual(expectedProjects, projects);
            Assert.AreEqual(fakePackage.FakePackageRepository, fakeSolution.RepositoryPassedToGetProject);
            Assert.AreEqual(projectsAddedToSolution, fakeSolution.ProjectsPassedToGetProject);
        }
Пример #5
0
        public void GetProjects_SolutionHasTwoProjectsAndOneProjectSelectedInitiallyAndGetProjectsCalledAgainAfterNoProjectsAreSelected_ReturnsProjectSelectedInProjects()
        {
            CreateFakeSolution();
            List <FakeDotNetProject> projectsAddedToSolution = AddSolutionWithTwoProjectsToProjectService();
            FakeDotNetProject        project = projectsAddedToSolution [1];

            project.Name = "MyProject";
            fakeSolution.FakeActiveDotNetProject = project;

            fakeSolution.AddFakeProjectToReturnFromGetProject("MyProject");
            CreateSelectedProjects();

            var fakePackage = new FakePackage();
            var projects    = new List <IPackageManagementSelectedProject> ();

            projects.AddRange(selectedProjects.GetProjects(fakePackage));

            projects.Clear();

            NoProjectsSelected();
            projects.AddRange(selectedProjects.GetProjects(fakePackage));

            var expectedProject  = new PackageManagementSelectedProject("MyProject", selected: false, enabled: true);
            var expectedProjects = new List <IPackageManagementSelectedProject> ();

            expectedProjects.Add(expectedProject);

            SelectedProjectCollectionAssert.AreEqual(expectedProjects, projects);
        }
        public void ManagePackageCommand_TwoProjectsSelectedAndCommandExecuted_UserPromptedToSelectTwoProjects()
        {
            CreateViewModelWithTwoProjectsSelected("Project A", "Project B");
            UserCancelsProjectSelection();
            viewModel.ManagePackageCommand.Execute(null);

            IEnumerable <IPackageManagementSelectedProject> selectedProjects =
                fakePackageManagementEvents.SelectedProjectsPassedToOnSelectProjects;

            var expectedSelectedProjects = new List <IPackageManagementSelectedProject>();

            expectedSelectedProjects.Add(new FakeSelectedProject("Project A"));
            expectedSelectedProjects.Add(new FakeSelectedProject("Project B"));

            SelectedProjectCollectionAssert.AreEqual(expectedSelectedProjects, selectedProjects);
        }
Пример #7
0
        public void GetProjects_TwoProjectsAndPackageNotInstalledInAnyProject_IsEnabledIsFalseForAllSelectedProjects()
        {
            CreateFakeSolution();
            AddSolutionWithTwoProjectsToProjectService("Project A", "Project B");
            fakeSolution.NoProjectsSelected();
            CreateSelectedProjects();

            var fakePackage = new FakePackage("Test");
            List <IPackageManagementSelectedProject> projects =
                selectedProjects.GetProjects(fakePackage).ToList();

            var expectedProjects = new List <IPackageManagementSelectedProject>();

            expectedProjects.Add(new FakeSelectedProject("Project A", selected: false, enabled: false));
            expectedProjects.Add(new FakeSelectedProject("Project B", selected: false, enabled: false));

            SelectedProjectCollectionAssert.AreEqual(expectedProjects, projects);
        }
Пример #8
0
        public void GetProjects_TwoProjectsAndOlderPackageInstalledInFirstProject_IsEnabledIsTrueForFirstSelectedProjectButFalseForSecond()
        {
            CreateFakeSolution();
            AddSolutionWithTwoProjectsToProjectService("Project A", "Project B");
            fakeSolution.NoProjectsSelected();
            CreateSelectedProjects();

            var olderFakePackage = new FakePackage("Test", "1.0");
            FakePackageManagementProject projectA = GetProject("Project A");

            projectA.FakePackages.Add(olderFakePackage);

            var fakePackage = new FakePackage("Test", "1.2");
            List <IPackageManagementSelectedProject> projects =
                selectedProjects.GetProjects(fakePackage).ToList();

            var expectedProjects = new List <IPackageManagementSelectedProject>();

            expectedProjects.Add(new FakeSelectedProject("Project A", selected: true, enabled: true));
            expectedProjects.Add(new FakeSelectedProject("Project B", selected: false, enabled: false));

            SelectedProjectCollectionAssert.AreEqual(expectedProjects, projects);
        }
        public void ManagePackage_TwoProjectsSelectedAndPackageIsInstalledInFirstProject_UserPromptedToSelectTwoProjectsAndBothProjectsHaveIsSelectedSetToTrue()
        {
            CreateViewModel();
            AddTwoProjectsSelected("Project A", "Project B");
            SetPackageIdAndVersion("MyPackage", "1.1.3.44");

            FakePackageManagementProject fakeProject = fakeSolution.FakeProjectsToReturnFromGetProject["Project A"];

            fakeProject.FakePackages.Add(fakePackage);

            viewModel.FakePackageManagementEvents.OnSelectProjectsReturnValue = false;

            viewModel.ManagePackage();

            IEnumerable <IPackageManagementSelectedProject> selectedProjects =
                fakePackageManagementEvents.SelectedProjectsPassedToOnSelectProjects;

            var expectedSelectedProjects = new List <IPackageManagementSelectedProject>();

            expectedSelectedProjects.Add(new FakeSelectedProject("Project A", selected: true, enabled: true));
            expectedSelectedProjects.Add(new FakeSelectedProject("Project B", selected: false, enabled: true));

            SelectedProjectCollectionAssert.AreEqual(expectedSelectedProjects, selectedProjects);
        }