public ScriptEditorWindow( DynamoViewModel dynamoViewModel, PythonNode nodeModel, NodeView nodeView, ref ModelessChildWindow.WindowRect windowRect ) : base(nodeView, ref windowRect) { this.Closed += OnScriptEditorWindowClosed; this.dynamoViewModel = dynamoViewModel; this.nodeModel = nodeModel; completionProvider = new SharedCompletionProvider(nodeModel.Engine, dynamoViewModel.Model.PathManager.DynamoCoreDirectory); completionProvider.MessageLogged += dynamoViewModel.Model.Logger.Log; nodeModel.CodeMigrated += OnNodeModelCodeMigrated; InitializeComponent(); this.DataContext = this; if (Dynamo.Configuration.DebugModes.IsEnabled("PythonEngineSelectionUIDebugMode")) { EngineSelectorComboBox.Visibility = Visibility.Visible; } Dynamo.Logging.Analytics.TrackScreenView("Python"); }
public void SharedCoreCanReturnCLRCompletionData() { var provider = new SharedCompletionProvider(PythonNodeModels.PythonEngineVersion.IronPython2, ""); Assert.IsNotNull(provider); var str = "\nimport System.Collections\nSystem.Collections."; var completionData = provider.GetCompletionData(str); var completionList = completionData.Select(d => d.Text); Assert.IsTrue(completionList.Any()); Assert.IsTrue(completionList.Intersect(new[] { "Hashtable", "Queue", "Stack" }).Count() == 3); Assert.AreEqual(29, completionData.Length); }
public void SharedCoreCanReturnPythonCompletionData() { var dynCorePath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); var provider = new SharedCompletionProvider(PythonNodeModels.PythonEngineVersion.IronPython2, dynCorePath); Assert.IsNotNull(provider); var str = "import math\n math."; var completionData = provider.GetCompletionData(str); var completionList = completionData.Select(d => d.Text); Assert.IsTrue(completionList.Any()); Assert.IsTrue(completionList.Intersect(new[] { "degrees", "radians", "fmod" }).Count() == 3); Assert.AreEqual(45, completionData.Length); }
public void SharedCoreCanReturnCLRCompletionData() { var provider = new SharedCompletionProvider(PythonEngineManager.CPython3EngineName, ""); Assert.IsNotNull(provider); var str = "\nimport System.Collections\nSystem.Collections."; var completionData = provider.GetCompletionData(str); var completionList = completionData.Select(d => d.Text); Assert.IsTrue(completionList.Any()); Assert.IsTrue(completionList.Intersect(new[] { "Hashtable", "Queue", "Stack" }).Count() == 3); // Serial tests load an extra type (System.Collections.Immutable) in the Python engine Assert.IsTrue(completionData.Length >= 29 && completionData.Length <= 30); }
public void SharedCoreCanFindFirstLoadedIfNotMatch() { var provider = new SharedCompletionProvider(PythonNodeModels.PythonEngineVersion.CPython3, ""); Assert.IsNotNull(provider); }
public void SharedCoreCanFindLoadedProviders() { var provider = new SharedCompletionProvider(PythonNodeModels.PythonEngineVersion.IronPython2, ""); Assert.IsNotNull(provider); }
public void SharedCoreCanFindLoadedProviders() { var provider = new SharedCompletionProvider(PythonEngineManager.CPython3EngineName, ""); Assert.IsNotNull(provider); }