Exemple #1
0
        public void ProjectRepositoryBasics()
        {
            var entryPoint = new RepositoryEntryPoint("fake project folder path", _fileIOMock.Object);
            var serializer = new Mock <IProjectSerializer>();

            var loader = new ProjectTreeLoader(entryPoint, serializer.Object, _fileIOMock.Object);
        }
Exemple #2
0
        public void ProjectRepositoryLoadAllFoldersTest()
        {
            var entryPoint = new RepositoryEntryPoint(_topFolder, _fileIOMock.Object);

            var loader   = new ProjectTreeLoader(entryPoint, _serializer, _fileIOMock.Object);
            var projects = loader.LoadProjects().ToList();

            Assert.That(projects.Count, Is.EqualTo(2));
        }
Exemple #3
0
        public void ProjectRepositoryLoadViaModulesJustOneTest()
        {
            var entryPoint = new RepositoryEntryPoint(_topProjectPath, _fileIOMock.Object);

            var loader   = new ProjectTreeLoader(entryPoint, _serializer, _fileIOMock.Object);
            var projects = loader.LoadProjects().ToList();

            Assert.That(projects.Count, Is.EqualTo(1));
        }
Exemple #4
0
        public void SingleProjectLoadTest()
        {
            string projectPath = "fake project path";
            var    entryPoint  = new RepositoryEntryPoint(projectPath, _fileIOMock.Object);

            var loader = new ProjectTreeLoader(entryPoint, _serializer, _fileIOMock.Object);

            var container = loader.LoadProjectFile(_topProjectPath);

            Assert.That(container.Project, Is.Not.Null);
            Assert.That(container.Project.ArtifactId, Is.EqualTo(_topProject.ArtifactId));
        }
Exemple #5
0
        public void SimpleTreeSetup()
        {
            _topProject = new Project
            {
                GroupId    = "a",
                ArtifactId = "a"
            };
            _secondProject = new Project
            {
                GroupId    = "b",
                ArtifactId = "b"
            };

            _serializerMock = new Mock <IProjectSerializerWithUpdate>();
            _readerMock     = new Mock <IProjectReader>();
            _writerMock     = new Mock <IProjectWriter>();

            var realSerializer = new ProjectSerializer(new DataFactory());

            _topProjectContent = realSerializer.Serialize(_topProject);

            _serializerMock.Setup(s => s.Deserialize(_topProjectContent)).Returns(_topProject);

            _topFolder         = "top";
            _secondFolderName  = "second";
            _topProjectPath    = "top\\pom.xml";
            _secondProjectPath = "top\\second\\pom.xml";

            _fileIOMock = new Mock <IFileSystemAccess>();
            _fileIOMock.Setup(io => io.GetFullPath(It.IsAny <string>())).Returns((string s) => s);

            // load tree
            _fileIOMock.Setup(io => io.ReadAllText(_topProjectPath)).Returns(_topProjectContent);
            _fileIOMock.Setup(io => io.IsFileExist(_topProjectPath)).Returns(true);
            _fileIOMock.Setup(io => io.IsFileExist(_secondProjectPath)).Returns(true);

            // scan for files
            _fileIOMock.Setup(io => io.IsDirectoryExist(_topFolder)).Returns(true);
            _fileIOMock.Setup(io => io.GetFiles(_topFolder, "pom.xml", SearchOption.AllDirectories))
            .Returns(new[] { _topProjectPath, _secondProjectPath });

            Mock <IPathCalculator> path = new Mock <IPathCalculator>();
            FullPath topFullPath        = new FullPath(_topProjectPath);
            FullPath seconFullPath      = new FullPath(_secondProjectPath);

            path.Setup(p => p.TryResolveModulePath(topFullPath, _secondFolderName, out seconFullPath)).Returns(true);

            _readerMock.Setup(l => l.ReadProject(_topProjectPath)).Returns(_topProject);
            _readerMock.Setup(l => l.ReadProject(_secondProjectPath)).Returns(_secondProject);

            _loader = new ProjectTreeLoader(_fileIOMock.Object, _readerMock.Object, _writerMock.Object, path.Object, new NoLog());
        }
Exemple #6
0
        public void ProjectRepositoryLoadViaModulesAllTest()
        {
            _topProject.Modules.Add(new Module {
                Path = _secondFolderName
            });
            var content = _serializer.Serialize(_topProject);

            _fileIOMock.Setup(io => io.ReadAllText(_topProjectPath)).Returns(content);

            var entryPoint = new RepositoryEntryPoint(_topProjectPath, _fileIOMock.Object);

            var loader   = new ProjectTreeLoader(entryPoint, _serializer, _fileIOMock.Object);
            var projects = loader.LoadProjects().ToList();

            Assert.That(projects.Count, Is.EqualTo(2));
        }
Exemple #7
0
        public ISolution OpenSolution(string fileOrFolderName, bool loadDisconnectedProjects)
        {
            IFileSystemAccess            fileIo        = new FileSystemAccess();
            IDataFactory                 factory       = new DataFactory();
            IProjectSerializerWithUpdate serializer    = new ProjectSerializer(factory);
            IProjectLoader               projectLoader = new ProjectLoader(fileIo, serializer, Log);

            var pathCalculator = new PathCalculator(fileIo);
            var loader         = new ProjectTreeLoader(fileIo, projectLoader, projectLoader, pathCalculator, Log);

            IExternalModulesLoader externalModulesLoader = new ExternalModulesLoader(fileIo);

            var solution = new Solution(fileIo, loader, externalModulesLoader);

            solution.Open(fileOrFolderName, loadDisconnectedProjects);
            return(solution);
        }
Exemple #8
0
        public void LoadProjects()
        {
            var loader = new ProjectTreeLoader(_entryPoint, _projectSerializer, _fileIo);

            _projects = loader.LoadProjects().ToList();
        }