public RazorDocumentInfoProviderTest()
        {
            var serviceProviderFactory          = new DefaultRazorDocumentServiceProviderFactory();
            var lspEditorEnabledFeatureDetector = Mock.Of <LSPEditorFeatureDetector>(detector => detector.IsLSPEditorFeatureEnabled() == true, MockBehavior.Strict);

            InnerDynamicDocumentInfoProvider = new DefaultRazorDynamicFileInfoProvider(serviceProviderFactory, lspEditorEnabledFeatureDetector);
            ProjectSnapshotManager           = new TestProjectSnapshotManager(Workspace);

            var hostProject = new HostProject("C:/path/to/project.csproj", RazorConfiguration.Default, "RootNamespace");

            ProjectSnapshotManager.ProjectAdded(hostProject);

            var hostDocument   = new HostDocument("C:/path/to/document.cshtml", "/C:/path/to/document.cshtml");
            var sourceText     = SourceText.From("Hello World");
            var textAndVersion = TextAndVersion.Create(sourceText, VersionStamp.Default, hostDocument.FilePath);

            ProjectSnapshotManager.DocumentAdded(hostProject, hostDocument, TextLoader.From(textAndVersion));

            ProjectSnapshot  = ProjectSnapshotManager.Projects[0];
            DocumentSnapshot = ProjectSnapshot.GetDocument(hostDocument.FilePath);
            var factory = new Mock <VisualStudioMacDocumentInfoFactory>(MockBehavior.Strict);

            factory.Setup(f => f.CreateEmpty(It.IsAny <string>(), It.IsAny <ProjectId>()))
            .Returns <string, ProjectId>((razorFilePath, projectId) =>
            {
                var documentId   = DocumentId.CreateNewId(projectId);
                var documentInfo = DocumentInfo.Create(documentId, "testDoc", filePath: razorFilePath);
                return(documentInfo);
            });
            Factory = factory.Object;
        }
        public DefaultRazorDynamicFileInfoProviderTest()
        {
            DocumentServiceFactory = new DefaultRazorDocumentServiceProviderFactory();
            EditorFeatureDetector  = Mock.Of <LSPEditorFeatureDetector>(MockBehavior.Strict);
            ProjectSnapshotManager = new TestProjectSnapshotManager(Workspace)
            {
                AllowNotifyListeners = true
            };
            var hostProject = new HostProject("C:\\project.csproj", RazorConfiguration.Default, rootNamespace: "TestNamespace");

            ProjectSnapshotManager.ProjectAdded(hostProject);
            var hostDocument1 = new HostDocument("C:\\document1.razor", "document1.razor", FileKinds.Component);

            ProjectSnapshotManager.DocumentAdded(hostProject, hostDocument1, new EmptyTextLoader(hostDocument1.FilePath));
            var hostDocument2 = new HostDocument("C:\\document2.razor", "document2.razor", FileKinds.Component);

            ProjectSnapshotManager.DocumentAdded(hostProject, hostDocument2, new EmptyTextLoader(hostDocument2.FilePath));
            Project   = ProjectSnapshotManager.GetSnapshot(hostProject);
            Document1 = (DefaultDocumentSnapshot)Project.GetDocument(hostDocument1.FilePath);
            Document2 = (DefaultDocumentSnapshot)Project.GetDocument(hostDocument2.FilePath);

            Provider     = new DefaultRazorDynamicFileInfoProvider(DocumentServiceFactory, EditorFeatureDetector);
            TestAccessor = Provider.GetTestAccessor();
            Provider.Initialize(ProjectSnapshotManager);

            var lspDocumentContainer = new Mock <DynamicDocumentContainer>(MockBehavior.Strict);

            lspDocumentContainer.SetupSet(c => c.SupportsDiagnostics = true).Verifiable();
            lspDocumentContainer.Setup(container => container.GetTextLoader(It.IsAny <string>())).Returns(new EmptyTextLoader(string.Empty));
            LSPDocumentContainer = lspDocumentContainer.Object;
        }
Ejemplo n.º 3
0
        public BackgroundDocumentGeneratorTest()
        {
            Documents = new HostDocument[]
            {
                TestProjectData.SomeProjectFile1,
                TestProjectData.AnotherProjectFile1,
            };

            HostProject1 = new HostProject(TestProjectData.SomeProject.FilePath, FallbackRazorConfiguration.MVC_1_0, TestProjectData.SomeProject.RootNamespace);
            HostProject2 = new HostProject(TestProjectData.AnotherProject.FilePath, FallbackRazorConfiguration.MVC_1_0, TestProjectData.AnotherProject.RootNamespace);

            var razorDocumentServiceProviderFactory = new DefaultRazorDocumentServiceProviderFactory();
            var testLSPEnabledEditorFeatureDetector = Mock.Of <LSPEditorFeatureDetector>(detector => detector.IsLSPEditorFeatureEnabled() == true, MockBehavior.Strict);

            DynamicFileInfoProvider = new DefaultRazorDynamicFileInfoProvider(razorDocumentServiceProviderFactory, testLSPEnabledEditorFeatureDetector);
        }