public CurrentDirectoryTest() { var sessionProvider = VsAppShell.Current.ExportProvider.GetExportedValue <IRSessionProvider>(); var historyProvider = VsAppShell.Current.ExportProvider.GetExportedValue <IRHistoryProvider>(); var activeTextViewTracker = new ActiveTextViewTrackerMock(string.Empty, string.Empty); var debuggerModeTracker = new TestDebuggerModeTracker(); _interactiveWorkflow = new RInteractiveWorkflow(sessionProvider, historyProvider, activeTextViewTracker, debuggerModeTracker, null, VsAppShell.Current, RToolsSettings.Current, () => {}); }
public CurrentDirectoryTest() { var connectionsProvider = VsAppShell.Current.GetService <IConnectionManagerProvider>(); var historyProvider = VsAppShell.Current.GetService <IRHistoryProvider>(); var packagesProvider = VsAppShell.Current.GetService <IRPackageManagerProvider>(); var plotsProvider = VsAppShell.Current.GetService <IRPlotManagerProvider>(); var activeTextViewTracker = new ActiveTextViewTrackerMock(string.Empty, string.Empty); var debuggerModeTracker = new TestDebuggerModeTracker(); _interactiveWorkflow = UIThreadHelper.Instance.Invoke(() => new RInteractiveWorkflow( connectionsProvider, historyProvider, packagesProvider, plotsProvider, activeTextViewTracker, debuggerModeTracker, VsAppShell.Current)); _sessionProvider = _interactiveWorkflow.RSessions; }
public CurrentDirectoryTest() { _sessionProvider = new RSessionProvider(TestCoreServices.CreateReal()); var connectionsProvider = VsAppShell.Current.ExportProvider.GetExportedValue <IConnectionManagerProvider>(); var historyProvider = VsAppShell.Current.ExportProvider.GetExportedValue <IRHistoryProvider>(); var packagesProvider = VsAppShell.Current.ExportProvider.GetExportedValue <IRPackageManagerProvider>(); var plotsProvider = VsAppShell.Current.ExportProvider.GetExportedValue <IRPlotManagerProvider>(); var activeTextViewTracker = new ActiveTextViewTrackerMock(string.Empty, string.Empty); var debuggerModeTracker = new TestDebuggerModeTracker(); _interactiveWorkflow = UIThreadHelper.Instance.Invoke(() => new RInteractiveWorkflow( _sessionProvider, connectionsProvider, historyProvider, packagesProvider, plotsProvider, activeTextViewTracker, debuggerModeTracker, VsAppShell.Current, RToolsSettings.Current, null, () => { })); }
public CurrentDirectoryTest(BrokerFixture broker) { _broker = broker; _sessionProvider = VsAppShell.Current.ExportProvider.GetExportedValue <IRSessionProvider>(); var connectionsProvider = VsAppShell.Current.ExportProvider.GetExportedValue <IConnectionManagerProvider>(); var historyProvider = VsAppShell.Current.ExportProvider.GetExportedValue <IRHistoryProvider>(); var packagesProvider = VsAppShell.Current.ExportProvider.GetExportedValue <IRPackageManagerProvider>(); var plotsProvider = VsAppShell.Current.ExportProvider.GetExportedValue <IRPlotManagerProvider>(); var activeTextViewTracker = new ActiveTextViewTrackerMock(string.Empty, string.Empty); var debuggerModeTracker = new TestDebuggerModeTracker(); _interactiveWorkflow = new RInteractiveWorkflow( _sessionProvider, connectionsProvider, historyProvider, packagesProvider, plotsProvider, activeTextViewTracker, debuggerModeTracker, _broker.BrokerConnector, VsAppShell.Current, RToolsSettings.Current, null, () => { }); }
public CurrentDirectoryTest() { var sessionProvider = VsAppShell.Current.ExportProvider.GetExportedValue <IRSessionProvider>(); var connectionsProvider = VsAppShell.Current.ExportProvider.GetExportedValue <IConnectionManagerProvider>(); var historyProvider = VsAppShell.Current.ExportProvider.GetExportedValue <IRHistoryProvider>(); var packagesProvider = VsAppShell.Current.ExportProvider.GetExportedValue <IRPackageManagerProvider>(); var plotsProvider = VsAppShell.Current.ExportProvider.GetExportedValue <IRPlotManagerProvider>(); var activeTextViewTracker = new ActiveTextViewTrackerMock(string.Empty, string.Empty); var debuggerModeTracker = new TestDebuggerModeTracker(); var brokerConnector = new RHostBrokerConnector(); brokerConnector.SwitchToLocalBroker(nameof(CurrentDirectoryTest)); _interactiveWorkflow = new RInteractiveWorkflow( sessionProvider, connectionsProvider, historyProvider, packagesProvider, plotsProvider, activeTextViewTracker, debuggerModeTracker, brokerConnector, VsAppShell.Current, RToolsSettings.Current, () => brokerConnector.Dispose()); }
public void HelpTest() { var clientApp = new RHostClientHelpTestApp(); var historyProvider = RHistoryProviderStubFactory.CreateDefault(); using (var hostScript = new VsRHostScript(clientApp)) { using (var script = new ControlTestScript(typeof(HelpWindowVisualComponent))) { DoIdle(100); var activeViewTrackerMock = new ActiveTextViewTrackerMock(" plot", RContentTypeDefinition.ContentType); var activeReplTrackerMock = new ActiveRInteractiveWindowTrackerMock(); var sessionProvider = VsAppShell.Current.ExportProvider.GetExportedValue <IRSessionProvider>(); var interactiveWorkflowProvider = TestRInteractiveWorkflowProviderFactory.Create(sessionProvider, activeTextViewTracker: activeViewTrackerMock); var interactiveWorkflow = interactiveWorkflowProvider.GetOrCreate(); var component = ControlWindow.Component as IHelpWindowVisualComponent; component.Should().NotBeNull(); component.VisualTheme = "Light.css"; clientApp.Component = component; var view = activeViewTrackerMock.GetLastActiveTextView(RContentTypeDefinition.ContentType); var cmd = new ShowHelpOnCurrentCommand(interactiveWorkflow, activeViewTrackerMock, activeReplTrackerMock); cmd.Should().BeVisibleAndDisabled(); view.Caret.MoveTo(new SnapshotPoint(view.TextBuffer.CurrentSnapshot, 3)); cmd.Should().BeVisibleAndEnabled(); cmd.Text.Should().EndWith("plot"); cmd.Invoke(); WaitForAppReady(clientApp); clientApp.Uri.IsLoopback.Should().Be(true); clientApp.Uri.PathAndQuery.Should().Be("/library/graphics/html/plot.html"); DoIdle(500); } } }
public async Task HelpTest() { var clientApp = new RHostClientHelpTestApp(); await HostScript.InitializeAsync(clientApp); using (new ControlTestScript(typeof(HelpVisualComponent))) { DoIdle(100); var activeViewTrackerMock = new ActiveTextViewTrackerMock(" plot", RContentTypeDefinition.ContentType); var activeReplTrackerMock = new ActiveRInteractiveWindowTrackerMock(); var interactiveWorkflow = Substitute.For <IRInteractiveWorkflow>(); interactiveWorkflow.RSession.Returns(HostScript.Session); var component = ControlWindow.Component as IHelpVisualComponent; component.Should().NotBeNull(); component.VisualTheme = "Light.css"; await UIThreadHelper.Instance.InvokeAsync(() => { clientApp.Component = component; var view = activeViewTrackerMock.GetLastActiveTextView(RContentTypeDefinition.ContentType); var cmd = new ShowHelpOnCurrentCommand(interactiveWorkflow, activeViewTrackerMock, activeReplTrackerMock); cmd.Should().BeVisibleAndDisabled(); view.Caret.MoveTo(new SnapshotPoint(view.TextBuffer.CurrentSnapshot, 3)); cmd.Should().BeVisibleAndEnabled(); cmd.Text.Should().EndWith("plot"); clientApp.Ready.Reset(); cmd.Invoke(); }); await clientApp.WaitForReadyAndRenderedAsync((ms) => DoIdle(ms), nameof(HelpTest)); clientApp.Uri.IsLoopback.Should().Be(true); clientApp.Uri.PathAndQuery.Should().Be("/library/graphics/html/plot.html"); } }