Browse Source

Can now convert C# and VB.NET projects to Python.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/3.0@4063 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Matt Ward 16 years ago
parent
commit
963e02f337
  1. BIN
      data/resources/StringResources.es-mx.resources
  2. BIN
      data/resources/StringResources.es.resources
  3. BIN
      data/resources/StringResources.fr.resources
  4. BIN
      data/resources/StringResources.hu.resources
  5. BIN
      data/resources/StringResources.nl.resources
  6. BIN
      data/resources/StringResources.no.resources
  7. 2
      src/AddIns/BackendBindings/Python/PyWalker/MainForm.cs
  8. 13
      src/AddIns/BackendBindings/Python/PythonBinding/Project/PythonBinding.addin
  9. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Project/PythonBinding.csproj
  10. 30
      src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/CSharpToPythonConverter.cs
  11. 81
      src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/ConvertProjectToPythonProjectCommand.cs
  12. 28
      src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/ConvertToPythonMenuCommand.cs
  13. 63
      src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/NRefactoryToPythonConverter.cs
  14. 33
      src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/VBNetToPythonConverter.cs
  15. 74
      src/AddIns/BackendBindings/Python/PythonBinding/Test/AddInFileTestFixture.cs
  16. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/AddHandlerConversionTestFixture.cs
  17. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ArrayCastConversionTestFixture.cs
  18. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ArrayConversionTestFixture.cs
  19. 21
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/AssignmentOperatorConversionTestFixture.cs
  20. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/BaseClassReferenceTestFixture.cs
  21. 39
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/BinaryOperatorConversionTests.cs
  22. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/BitShiftConversionTestFixture.cs
  23. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/BreakAndContinueConversionTestFixture.cs
  24. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/CSharpClassWithNamespaceConversionTestFixture.cs
  25. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/CallConstructorWithParametersConversionTestFixture.cs
  26. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ClassConstructorConversionTestFixture.cs
  27. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ClassDestructorConversionTestFixture.cs
  28. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ClassFieldReferenceTestFixture.cs
  29. 97
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ConvertToPythonProjectCommandTestFixture.cs
  30. 81
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ConverterSupportedLanguageTests.cs
  31. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ElseIfStatementConversionTestFixture.cs
  32. 5
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/EmptyCSharpClassConversionTestFixture.cs
  33. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/FieldDeclarationWithNoInitializerTestFixture.cs
  34. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ForLoopConversionTestFixture.cs
  35. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ForeachConversionTestFixture.cs
  36. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/IfBlockStatementConversionTestFixture.cs
  37. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/IfStatementConversionTestFixture.cs
  38. 17
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/IncrementAndDecrementConversionTests.cs
  39. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/IntegerClassFieldConversionTestFixture.cs
  40. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/IntegerClassFieldInitializedInConstructorTestFixture.cs
  41. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/IntegerClassFieldWithConstructorTestFixture.cs
  42. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/IntegerMethodParameterTestFixture.cs
  43. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/LocalVariableAssignedInConstructorTestFixture.cs
  44. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/LocalVariableDeclarationInIfStatementTestFixture.cs
  45. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/LocalVariableNotInitializedTestFixture.cs
  46. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/MethodParameterConversionTestFixture.cs
  47. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/MethodReturnValueConversionTestFixture.cs
  48. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/MethodWithBodyConversionTestFixture.cs
  49. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ModulusOperatorConversionTestFixture.cs
  50. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/NestedClassConversionTestFixture.cs
  51. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/NestedIfStatementConversionTestFixture.cs
  52. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/NullConversionTestFixture.cs
  53. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ObjectCreationTestFixture.cs
  54. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ObjectInitializerConversionTestFixture.cs
  55. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/PropertyConversionTestFixture.cs
  56. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/PropertyWithGetSetStatementsTestfixture.cs
  57. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/RemoveHandlerConversionTestFixture.cs
  58. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/SingleClassMethodConversionTestFixture.cs
  59. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/StaticClassReferenceTestFixture.cs
  60. 5
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/SwitchStatementConversionTestFixture.cs
  61. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/TernaryOperatorConversionTestFixture.cs
  62. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ThrowExceptionConversionTestFixture.cs
  63. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/TryCatchFinallyConversionTestFixture.cs
  64. 9
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/UnaryOperatorConversionTests.cs
  65. 7
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/UsingStatementConversionTestFixture.cs
  66. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/VBClassConversionTestFixture.cs
  67. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/VBStringConcatTestFixture.cs
  68. 3
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/WhileLoopConversionTestFixture.cs
  69. 4
      src/AddIns/BackendBindings/Python/PythonBinding/Test/PythonBinding.Tests.csproj
  70. 50
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Utils/ConvertedFile.cs
  71. 85
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Utils/DerivedConvertProjectToPythonProjectCommand.cs
  72. 12
      src/AddIns/BackendBindings/Python/PythonBinding/Test/Utils/MockProject.cs
  73. BIN
      src/Main/StartUp/Project/Resources/StringResources.resources

BIN
data/resources/StringResources.es-mx.resources

Binary file not shown.

BIN
data/resources/StringResources.es.resources

Binary file not shown.

BIN
data/resources/StringResources.fr.resources

Binary file not shown.

BIN
data/resources/StringResources.hu.resources

Binary file not shown.

BIN
data/resources/StringResources.nl.resources

Binary file not shown.

BIN
data/resources/StringResources.no.resources

Binary file not shown.

2
src/AddIns/BackendBindings/Python/PyWalker/MainForm.cs

@ -100,7 +100,7 @@ namespace PyWalker @@ -100,7 +100,7 @@ namespace PyWalker
{
try {
Clear();
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(NRefactory.SupportedLanguage.CSharp);
walkerOutputTextBox.Text = converter.Convert(codeTextBox.Text);
} catch (Exception ex) {
walkerOutputTextBox.Text = ex.ToString();

13
src/AddIns/BackendBindings/Python/PythonBinding/Project/PythonBinding.addin

@ -153,6 +153,19 @@ @@ -153,6 +153,19 @@
</ComplexCondition>
</Path>
<Path name = "/SharpDevelop/Pads/ProjectBrowser/ContextMenu/ProjectActions/Convert">
<Condition name = "ProjectActive" activeproject="C#">
<MenuItem id = "CSharpProjectToPythonProjectConverter"
label = "${res:ICSharpCode.PythonBinding.ConvertCSharpProjectToPythonProject}"
class = "ICSharpCode.PythonBinding.ConvertProjectToPythonProjectCommand"/>
</Condition>
<Condition name = "ProjectActive" activeproject="VBNet">
<MenuItem id = "VBNetProjectToPythonProjectConverter"
label = "${res:ICSharpCode.PythonBinding.ConvertVBNetProjectToPythonProject}"
class = "ICSharpCode.PythonBinding.ConvertProjectToPythonProjectCommand"/>
</Condition>
</Path>
<Path name = "/SharpDevelop/Workbench/Pads">
<Pad id = "PythonConsole"
category = "Tools"

3
src/AddIns/BackendBindings/Python/PythonBinding/Project/PythonBinding.csproj

@ -64,12 +64,12 @@ @@ -64,12 +64,12 @@
</Compile>
<Compile Include="Src\CommandLineHistory.cs" />
<Compile Include="Src\ConstructorInfo.cs" />
<Compile Include="Src\ConvertProjectToPythonProjectCommand.cs" />
<Compile Include="Src\ConvertToPythonMenuCommand.cs" />
<Compile Include="Src\ApplicationSettingsPanel.cs" />
<Compile Include="Configuration\AssemblyInfo.cs" />
<Compile Include="Src\AddInOptions.cs" />
<Compile Include="Src\CompilingOptionsPanel.cs" />
<Compile Include="Src\CSharpToPythonConverter.cs" />
<Compile Include="Src\IComponentCreator.cs" />
<Compile Include="Src\IMemberProvider.cs" />
<Compile Include="Src\IPadDescriptor.cs" />
@ -114,7 +114,6 @@ @@ -114,7 +114,6 @@
<Compile Include="Src\StopPythonCommand.cs" />
<Compile Include="Src\PythonVariableResolver.cs" />
<Compile Include="Src\TextEditor.cs" />
<Compile Include="Src\VBNetToPythonConverter.cs" />
<None Include="PythonBinding.addin">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>

30
src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/CSharpToPythonConverter.cs

@ -1,30 +0,0 @@ @@ -1,30 +0,0 @@
// <file>
// <copyright see="prj:///doc/copyright.txt"/>
// <license see="prj:///doc/license.txt"/>
// <owner name="Matthew Ward" email="mrward@users.sourceforge.net"/>
// <version>$Revision$</version>
// </file>
using System;
using System.CodeDom;
using System.CodeDom.Compiler;
using ICSharpCode.NRefactory;
using ICSharpCode.NRefactory.Ast;
namespace ICSharpCode.PythonBinding
{
public class CSharpToPythonConverter : NRefactoryToPythonConverter
{
public CSharpToPythonConverter()
{
}
/// <summary>
/// Converts the C# source code to Python.
/// </summary>
public string Convert(string source)
{
return Convert(source, SupportedLanguage.CSharp);
}
}
}

81
src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/ConvertProjectToPythonProjectCommand.cs

@ -0,0 +1,81 @@ @@ -0,0 +1,81 @@
// <file>
// <copyright see="prj:///doc/copyright.txt"/>
// <license see="prj:///doc/license.txt"/>
// <owner name="Matthew Ward" email="mrward@users.sourceforge.net"/>
// <version>$Revision$</version>
// </file>
using System;
using System.IO;
using System.Text;
using ICSharpCode.SharpDevelop;
using ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor;
using ICSharpCode.SharpDevelop.Project;
using ICSharpCode.SharpDevelop.Project.Converter;
using ICSharpCode.TextEditor.Document;
namespace ICSharpCode.PythonBinding
{
/// <summary>
/// Converts a C# or VB.NET project to Python.
/// </summary>
public class ConvertProjectToPythonProjectCommand : LanguageConverter
{
ITextEditorProperties textEditorProperties;
public ConvertProjectToPythonProjectCommand(ITextEditorProperties textEditorProperties)
{
this.textEditorProperties = textEditorProperties;
}
public ConvertProjectToPythonProjectCommand() : this(SharpDevelopTextEditorProperties.Instance)
{
}
public override string TargetLanguageName {
get { return PythonLanguageBinding.LanguageName; }
}
/// <summary>
/// Converts C# and VB.NET files to Python and saves the files.
/// </summary>
protected override void ConvertFile(FileProjectItem sourceItem, FileProjectItem targetItem)
{
NRefactoryToPythonConverter converter = NRefactoryToPythonConverter.Create(sourceItem.Include);
if (converter != null) {
targetItem.Include = Path.ChangeExtension(sourceItem.Include, ".py");
string code = GetParseableFileContent(sourceItem.FileName);
string pythonCode = converter.Convert(code);
SaveFile(targetItem.FileName, pythonCode, textEditorProperties.Encoding);
} else {
LanguageConverterConvertFile(sourceItem, targetItem);
}
}
/// <summary>
/// Calls the LanguageConverter class method ConvertFile which copies the source file to the target
/// file without any modifications.
/// </summary>
protected virtual void LanguageConverterConvertFile(FileProjectItem sourceItem, FileProjectItem targetItem)
{
base.ConvertFile(sourceItem, targetItem);
}
/// <summary>
/// Writes the specified file to disk.
/// </summary>
protected virtual void SaveFile(string fileName, string content, Encoding encoding)
{
File.WriteAllText(fileName, content, encoding);
}
/// <summary>
/// Gets the content of the file from the parser service.
/// </summary>
protected virtual string GetParseableFileContent(string fileName)
{
return ParserService.GetParseableFileContent(fileName);
}
}
}

28
src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/ConvertToPythonMenuCommand.cs

@ -33,10 +33,9 @@ namespace ICSharpCode.PythonBinding @@ -33,10 +33,9 @@ namespace ICSharpCode.PythonBinding
IEditable editable = viewContent as IEditable;
// Generate the python code.
SupportedLanguage language = GetSupportedLanguage(viewContent.PrimaryFileName);
NRefactoryToPythonConverter converter = CreateConverter(language);
NRefactoryToPythonConverter converter = NRefactoryToPythonConverter.Create(viewContent.PrimaryFileName);
converter.IndentString = NRefactoryToPythonConverter.GetIndentString(textEditorProperties);
string pythonCode = converter.Convert(editable.Text, language);
string pythonCode = converter.Convert(editable.Text);
// Show the python code in a new window.
NewFile("Generated.py", "Python", pythonCode);
@ -49,28 +48,5 @@ namespace ICSharpCode.PythonBinding @@ -49,28 +48,5 @@ namespace ICSharpCode.PythonBinding
{
FileService.NewFile(defaultName, content);
}
/// <summary>
/// Creates either a VBNet converter or C# converted.
/// </summary>
NRefactoryToPythonConverter CreateConverter(SupportedLanguage language)
{
if (language == SupportedLanguage.VBNet) {
return new VBNetToPythonConverter();
}
return new CSharpToPythonConverter();
}
/// <summary>
/// Gets the supported language either C# or VB.NET
/// </summary>
SupportedLanguage GetSupportedLanguage(string fileName)
{
string extension = Path.GetExtension(fileName.ToLower());
if (extension == ".vb") {
return SupportedLanguage.VBNet;
}
return SupportedLanguage.CSharp;
}
}
}

63
src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/NRefactoryToPythonConverter.cs

@ -18,7 +18,6 @@ using ICSharpCode.TextEditor.Document; @@ -18,7 +18,6 @@ using ICSharpCode.TextEditor.Document;
namespace ICSharpCode.PythonBinding
{
/// <summary>
/// Base class for the CSharpToPythonConverter and VBNetToPythonConverter.
/// Used to convert VB.NET and C# to Python.
/// </summary>
public class NRefactoryToPythonConverter : IAstVisitor
@ -27,17 +26,55 @@ namespace ICSharpCode.PythonBinding @@ -27,17 +26,55 @@ namespace ICSharpCode.PythonBinding
string indentString = "\t";
StringBuilder codeBuilder;
// Holds the constructor for the class being converted. This used to identify class fields.
// Holds the constructor for the class being converted. This is used to identify class fields.
PythonConstructorInfo constructorInfo;
// Holds the parameters of the current method. This is used to identify
// references to fields or parameters.
List<ParameterDeclarationExpression> methodParameters = new List<ParameterDeclarationExpression>();
SupportedLanguage language;
public NRefactoryToPythonConverter(SupportedLanguage language)
{
this.language = language;
}
public NRefactoryToPythonConverter()
{
}
/// <summary>
/// Gets or sets the source language that will be converted to python.
/// </summary>
public SupportedLanguage SupportedLanguage {
get { return language; }
}
/// <summary>
/// Creates either C# to Python or VB.NET to Python converter based on the filename extension that is to be converted.
/// </summary>
/// <returns>Null if the file cannot be converted.</returns>
public static NRefactoryToPythonConverter Create(string fileName)
{
if (CanConvert(fileName)) {
return new NRefactoryToPythonConverter(GetSupportedLanguage(fileName));
}
return null;
}
/// <summary>
/// Only C# (.cs) or VB.NET (.vb) files can be converted.
/// </summary>
public static bool CanConvert(string fileName)
{
string extension = Path.GetExtension(fileName);
if (!String.IsNullOrEmpty(extension)) {
extension = extension.ToLowerInvariant();
return (extension == ".cs") || (extension == ".vb");
}
return false;
}
/// <summary>
/// Gets the indentation string to use in the text editor based on the text editor properties.
/// </summary>
@ -71,6 +108,14 @@ namespace ICSharpCode.PythonBinding @@ -71,6 +108,14 @@ namespace ICSharpCode.PythonBinding
}
}
/// <summary>
/// Converts the source code to Python.
/// </summary>
public string Convert(string source)
{
return Convert(source, language);
}
/// <summary>
/// Converts the source code to Python.
/// </summary>
@ -1609,5 +1654,17 @@ namespace ICSharpCode.PythonBinding @@ -1609,5 +1654,17 @@ namespace ICSharpCode.PythonBinding
Append(" == ");
label.Label.AcceptVisitor(this, null);
}
/// <summary>
/// Gets the supported language either C# or VB.NET
/// </summary>
static SupportedLanguage GetSupportedLanguage(string fileName)
{
string extension = Path.GetExtension(fileName.ToLowerInvariant());
if (extension == ".vb") {
return SupportedLanguage.VBNet;
}
return SupportedLanguage.CSharp;
}
}
}

33
src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/VBNetToPythonConverter.cs

@ -1,33 +0,0 @@ @@ -1,33 +0,0 @@
// <file>
// <copyright see="prj:///doc/copyright.txt"/>
// <license see="prj:///doc/license.txt"/>
// <owner name="Matthew Ward" email="mrward@users.sourceforge.net"/>
// <version>$Revision$</version>
// </file>
using System;
using System.CodeDom;
using System.CodeDom.Compiler;
using ICSharpCode.NRefactory;
using ICSharpCode.NRefactory.Ast;
namespace ICSharpCode.PythonBinding
{
/// <summary>
/// Converts VB.NET to Python.
/// </summary>
public class VBNetToPythonConverter : NRefactoryToPythonConverter
{
public VBNetToPythonConverter()
{
}
/// <summary>
/// Converts the VB.NET source code to Python.
/// </summary>
public string Convert(string source)
{
return Convert(source, SupportedLanguage.VBNet);
}
}
}

74
src/AddIns/BackendBindings/Python/PythonBinding/Test/AddInFileTestFixture.cs

@ -47,6 +47,8 @@ namespace PythonBinding.Tests @@ -47,6 +47,8 @@ namespace PythonBinding.Tests
Codon convertCodeCodon;
Codon pythonFileIconCodon;
Codon pythonProjectIconCodon;
Codon convertCSharpProjectCodon;
Codon convertVBNetProjectCodon;
[TestFixtureSetUp]
public void SetupFixture()
@ -76,7 +78,9 @@ namespace PythonBinding.Tests @@ -76,7 +78,9 @@ namespace PythonBinding.Tests
convertCodeCodon = GetCodon("/SharpDevelop/Workbench/MainMenu/Tools/ConvertCode", "ConvertToPython");
pythonFileIconCodon = GetCodon("/Workspace/Icons", "PythonFileIcon");
pythonProjectIconCodon = GetCodon("/Workspace/Icons", "PythonProjectIcon");
convertCSharpProjectCodon = GetCodon("/SharpDevelop/Pads/ProjectBrowser/ContextMenu/ProjectActions/Convert", "CSharpProjectToPythonProjectConverter");
convertVBNetProjectCodon = GetCodon("/SharpDevelop/Pads/ProjectBrowser/ContextMenu/ProjectActions/Convert", "VBNetProjectToPythonProjectConverter");
// Get the PythonBinding runtime.
foreach (Runtime runtime in addin.Runtimes) {
if (runtime.Assembly == "PythonBinding.dll") {
@ -634,8 +638,72 @@ namespace PythonBinding.Tests @@ -634,8 +638,72 @@ namespace PythonBinding.Tests
public void PythonProjectIconCodonResource()
{
Assert.AreEqual("Python.ProjectBrowser.Project", pythonProjectIconCodon["resource"]);
}
}
[Test]
public void ConvertToCSharpProjectCodonExists()
{
Assert.IsNotNull(convertCSharpProjectCodon);
}
[Test]
public void ConvertToVBNetProjectCodonExists()
{
Assert.IsNotNull(convertVBNetProjectCodon);
}
[Test]
public void ConvertToCSharpProjectLabel()
{
Assert.AreEqual("${res:ICSharpCode.PythonBinding.ConvertCSharpProjectToPythonProject}", convertCSharpProjectCodon["label"]);
}
[Test]
public void ConvertToVBNetProjectLabel()
{
Assert.AreEqual("${res:ICSharpCode.PythonBinding.ConvertVBNetProjectToPythonProject}", convertVBNetProjectCodon["label"]);
}
[Test]
public void ConvertToCSharpProjectClass()
{
Assert.AreEqual("ICSharpCode.PythonBinding.ConvertProjectToPythonProjectCommand", convertCSharpProjectCodon["class"]);
}
[Test]
public void ConvertToVBNetProjectClass()
{
Assert.AreEqual("ICSharpCode.PythonBinding.ConvertProjectToPythonProjectCommand", convertVBNetProjectCodon["class"]);
}
[Test]
public void ConvertToCSharpProjectConditionName()
{
ICondition condition = convertCSharpProjectCodon.Conditions[0];
Assert.AreEqual("ProjectActive", condition.Name);
}
[Test]
public void ConvertToCSharpProjectConditionActiveExtension()
{
Condition condition = convertCSharpProjectCodon.Conditions[0] as Condition;
Assert.AreEqual("C#", condition["activeproject"]);
}
[Test]
public void ConvertToVBNetProjectConditionName()
{
ICondition condition = convertVBNetProjectCodon.Conditions[0];
Assert.AreEqual("ProjectActive", condition.Name);
}
[Test]
public void ConvertToVBNetProjectConditionActiveExtension()
{
Condition condition = convertVBNetProjectCodon.Conditions[0] as Condition;
Assert.AreEqual("VBNet", condition["activeproject"]);
}
/// <summary>
/// Gets the codon with the specified extension path and name.
/// </summary>

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/AddHandlerConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -41,7 +42,7 @@ namespace PythonBinding.Tests.Converter @@ -41,7 +42,7 @@ namespace PythonBinding.Tests.Converter
"\r\n" +
"\tdef ButtonClick(self, sender, e):\r\n" +
"\t\tpass";
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string code = converter.Convert(csharp);
Assert.AreEqual(expectedCode, code);

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ArrayCastConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -30,7 +31,7 @@ namespace PythonBinding.Tests.Converter @@ -30,7 +31,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void GeneratedPythonSourceCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef Assign(self):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ArrayConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -35,7 +36,7 @@ namespace PythonBinding.Tests.Converter @@ -35,7 +36,7 @@ namespace PythonBinding.Tests.Converter
"\t\ti = System.Array[System.Int32]((1, 2, 3, 4))\r\n" +
"\t\ti[0] = 5\r\n" +
"\t\treturn i";
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string code = converter.Convert(csharp);
Assert.AreEqual(expectedCode, code);

21
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/AssignmentOperatorConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -60,7 +61,7 @@ namespace PythonBinding.Tests.Converter @@ -60,7 +61,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void MultiplyOperator()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(GetCode(csharp, "*="));
string expectedPython = GetCode(pythonCodeTemplate, "*=");
@ -70,7 +71,7 @@ namespace PythonBinding.Tests.Converter @@ -70,7 +71,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void DivideOperator()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(GetCode(csharp, "/="));
string expectedPython = GetCode(pythonCodeTemplate, "/=");
@ -80,7 +81,7 @@ namespace PythonBinding.Tests.Converter @@ -80,7 +81,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void AndOperator()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(GetCode(csharp, "&="));
string expectedPython = GetCode(pythonCodeTemplate, "&=");
@ -90,7 +91,7 @@ namespace PythonBinding.Tests.Converter @@ -90,7 +91,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void OrOperator()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(GetCode(csharp, "|="));
string expectedPython = GetCode(pythonCodeTemplate, "|=");
@ -100,7 +101,7 @@ namespace PythonBinding.Tests.Converter @@ -100,7 +101,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ExclusiveOrOperator()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(GetCode(csharp, "^="));
string expectedPython = GetCode(pythonCodeTemplate, "^=");
@ -110,7 +111,7 @@ namespace PythonBinding.Tests.Converter @@ -110,7 +111,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ShiftLeftOperator()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(GetCode(csharp, "<<="));
string expectedPython = GetCode(pythonCodeTemplate, "<<=");
@ -120,7 +121,7 @@ namespace PythonBinding.Tests.Converter @@ -120,7 +121,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ShiftRightOperator()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(GetCode(csharp, ">>="));
string expectedPython = GetCode(pythonCodeTemplate, ">>=");
@ -130,7 +131,7 @@ namespace PythonBinding.Tests.Converter @@ -130,7 +131,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void VBConcatOperator()
{
VBNetToPythonConverter converter = new VBNetToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.VBNet);
string python = converter.Convert(GetCode(vb, "&="));
string expectedPython = GetCode(pythonCodeTemplate, "+=");
@ -140,7 +141,7 @@ namespace PythonBinding.Tests.Converter @@ -140,7 +141,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void VBDivideIntegerOperator()
{
VBNetToPythonConverter converter = new VBNetToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.VBNet);
string python = converter.Convert(GetCode(vb, "\\="));
string expectedPython = GetCode(pythonCodeTemplate, "/=");
@ -150,7 +151,7 @@ namespace PythonBinding.Tests.Converter @@ -150,7 +151,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void VBPowerOperator()
{
VBNetToPythonConverter converter = new VBNetToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.VBNet);
string python = converter.Convert(GetCode(vb, "^="));
string expectedPython = GetCode(pythonCodeTemplate, "**=");

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/BaseClassReferenceTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -33,7 +34,7 @@ namespace PythonBinding.Tests.Converter @@ -33,7 +34,7 @@ namespace PythonBinding.Tests.Converter
string expectedCode = "class Foo(object):\r\n" +
"\tdef Run(self):\r\n" +
"\t\treturn self.ToString()";
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string code = converter.Convert(csharp);
Assert.AreEqual(expectedCode, code);

39
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/BinaryOperatorConversionTests.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.NRefactory.Ast;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -32,32 +33,32 @@ namespace PythonBinding.Tests.Converter @@ -32,32 +33,32 @@ namespace PythonBinding.Tests.Converter
[Test]
public void GreaterThan()
{
Assert.AreEqual(">", CSharpToPythonConverter.GetBinaryOperator(BinaryOperatorType.GreaterThan));
Assert.AreEqual(">", NRefactoryToPythonConverter.GetBinaryOperator(BinaryOperatorType.GreaterThan));
}
[Test]
public void NotEqual()
{
Assert.AreEqual("!=", CSharpToPythonConverter.GetBinaryOperator(BinaryOperatorType.InEquality));
Assert.AreEqual("!=", NRefactoryToPythonConverter.GetBinaryOperator(BinaryOperatorType.InEquality));
}
[Test]
public void Divide()
{
Assert.AreEqual("/", CSharpToPythonConverter.GetBinaryOperator(BinaryOperatorType.Divide));
Assert.AreEqual("/", NRefactoryToPythonConverter.GetBinaryOperator(BinaryOperatorType.Divide));
}
[Test]
public void LessThan()
{
Assert.AreEqual("<", CSharpToPythonConverter.GetBinaryOperator(BinaryOperatorType.LessThan));
Assert.AreEqual("<", NRefactoryToPythonConverter.GetBinaryOperator(BinaryOperatorType.LessThan));
}
[Test]
public void Equals()
{
string code = GetCode(@"==");
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string pythonCode = converter.Convert(code);
string expectedPythonCode = "class Foo(object):\r\n" +
"\tdef Run(self, i):\r\n" +
@ -70,85 +71,85 @@ namespace PythonBinding.Tests.Converter @@ -70,85 +71,85 @@ namespace PythonBinding.Tests.Converter
[Test]
public void LessThanOrEqual()
{
Assert.AreEqual("<=", CSharpToPythonConverter.GetBinaryOperator(BinaryOperatorType.LessThanOrEqual));
Assert.AreEqual("<=", NRefactoryToPythonConverter.GetBinaryOperator(BinaryOperatorType.LessThanOrEqual));
}
[Test]
public void GreaterThanOrEqual()
{
Assert.AreEqual(">=", CSharpToPythonConverter.GetBinaryOperator(BinaryOperatorType.GreaterThanOrEqual));
Assert.AreEqual(">=", NRefactoryToPythonConverter.GetBinaryOperator(BinaryOperatorType.GreaterThanOrEqual));
}
[Test]
public void Add()
{
Assert.AreEqual("+", CSharpToPythonConverter.GetBinaryOperator(BinaryOperatorType.Add));
Assert.AreEqual("+", NRefactoryToPythonConverter.GetBinaryOperator(BinaryOperatorType.Add));
}
[Test]
public void Multiply()
{
Assert.AreEqual("*", CSharpToPythonConverter.GetBinaryOperator(BinaryOperatorType.Multiply));
Assert.AreEqual("*", NRefactoryToPythonConverter.GetBinaryOperator(BinaryOperatorType.Multiply));
}
[Test]
public void BitwiseAnd()
{
Assert.AreEqual("&", CSharpToPythonConverter.GetBinaryOperator(BinaryOperatorType.BitwiseAnd));
Assert.AreEqual("&", NRefactoryToPythonConverter.GetBinaryOperator(BinaryOperatorType.BitwiseAnd));
}
[Test]
public void BitwiseOr()
{
Assert.AreEqual("|", CSharpToPythonConverter.GetBinaryOperator(BinaryOperatorType.BitwiseOr));
Assert.AreEqual("|", NRefactoryToPythonConverter.GetBinaryOperator(BinaryOperatorType.BitwiseOr));
}
[Test]
public void BooleanAnd()
{
Assert.AreEqual("and", CSharpToPythonConverter.GetBinaryOperator(BinaryOperatorType.LogicalAnd));
Assert.AreEqual("and", NRefactoryToPythonConverter.GetBinaryOperator(BinaryOperatorType.LogicalAnd));
}
[Test]
public void BooleanOr()
{
Assert.AreEqual("or", CSharpToPythonConverter.GetBinaryOperator(BinaryOperatorType.LogicalOr));
Assert.AreEqual("or", NRefactoryToPythonConverter.GetBinaryOperator(BinaryOperatorType.LogicalOr));
}
[Test]
public void Modulus()
{
Assert.AreEqual("%", CSharpToPythonConverter.GetBinaryOperator(BinaryOperatorType.Modulus));
Assert.AreEqual("%", NRefactoryToPythonConverter.GetBinaryOperator(BinaryOperatorType.Modulus));
}
[Test]
public void Subtract()
{
Assert.AreEqual("-", CSharpToPythonConverter.GetBinaryOperator(BinaryOperatorType.Subtract));
Assert.AreEqual("-", NRefactoryToPythonConverter.GetBinaryOperator(BinaryOperatorType.Subtract));
}
[Test]
public void DivideInteger()
{
Assert.AreEqual("/", CSharpToPythonConverter.GetBinaryOperator(BinaryOperatorType.DivideInteger));
Assert.AreEqual("/", NRefactoryToPythonConverter.GetBinaryOperator(BinaryOperatorType.DivideInteger));
}
[Test]
public void ReferenceEquality()
{
Assert.AreEqual("is", CSharpToPythonConverter.GetBinaryOperator(BinaryOperatorType.ReferenceEquality));
Assert.AreEqual("is", NRefactoryToPythonConverter.GetBinaryOperator(BinaryOperatorType.ReferenceEquality));
}
[Test]
public void BitShiftRight()
{
Assert.AreEqual(">>", CSharpToPythonConverter.GetBinaryOperator(BinaryOperatorType.ShiftRight));
Assert.AreEqual(">>", NRefactoryToPythonConverter.GetBinaryOperator(BinaryOperatorType.ShiftRight));
}
[Test]
public void BitShiftLeft()
{
Assert.AreEqual("<<", CSharpToPythonConverter.GetBinaryOperator(BinaryOperatorType.ShiftLeft));
Assert.AreEqual("<<", NRefactoryToPythonConverter.GetBinaryOperator(BinaryOperatorType.ShiftLeft));
}
/// <summary>

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/BitShiftConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -27,7 +28,7 @@ namespace PythonBinding.Tests.Converter @@ -27,7 +28,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef Convert(self):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/BreakAndContinueConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -35,7 +36,7 @@ namespace PythonBinding.Tests.Converter @@ -35,7 +36,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef Run(self):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/CSharpClassWithNamespaceConversionTestFixture.cs

@ -8,6 +8,7 @@ @@ -8,6 +8,7 @@
using System;
using System.CodeDom;
using System.CodeDom.Compiler;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -31,7 +32,7 @@ namespace PythonBinding.Tests.Converter @@ -31,7 +32,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void GeneratedPythonSourceCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n\tpass";

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/CallConstructorWithParametersConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -32,7 +33,7 @@ namespace PythonBinding.Tests.Converter @@ -32,7 +33,7 @@ namespace PythonBinding.Tests.Converter
"\tdef __init__(self):\r\n" +
"\t\tb = Bar(0, 0, 1, 10)";
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
Assert.AreEqual(expectedPython, python);

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ClassConstructorConversionTestFixture.cs

@ -8,6 +8,7 @@ @@ -8,6 +8,7 @@
using System;
using System.CodeDom;
using System.CodeDom.Compiler;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -29,7 +30,7 @@ namespace PythonBinding.Tests.Converter @@ -29,7 +30,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef __init__(self):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ClassDestructorConversionTestFixture.cs

@ -8,6 +8,7 @@ @@ -8,6 +8,7 @@
using System;
using System.CodeDom;
using System.CodeDom.Compiler;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -31,7 +32,7 @@ namespace PythonBinding.Tests.Converter @@ -31,7 +32,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef __init__(self):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ClassFieldReferenceTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -36,7 +37,7 @@ namespace PythonBinding.Tests.Converter @@ -36,7 +37,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef __init__(self, i):\r\n" +

97
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ConvertToPythonProjectCommandTestFixture.cs

@ -0,0 +1,97 @@ @@ -0,0 +1,97 @@
// <file>
// <copyright see="prj:///doc/copyright.txt"/>
// <license see="prj:///doc/license.txt"/>
// <owner name="Matthew Ward" email="mrward@users.sourceforge.net"/>
// <version>$Revision$</version>
// </file>
using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using ICSharpCode.SharpDevelop.Project;
using NUnit.Framework;
using PythonBinding.Tests.Utils;
namespace PythonBinding.Tests.Converter
{
[TestFixture]
public class ConvertToPythonProjectCommandTestFixture
{
DerivedConvertProjectToPythonProjectCommand convertProjectCommand;
FileProjectItem source;
FileProjectItem target;
MockProject sourceProject;
MockProject targetProject;
FileProjectItem textFileSource;
FileProjectItem textFileTarget;
MockTextEditorProperties mockTextEditorProperties;
string sourceCode = "class Foo\r\n" +
"{\r\n" +
"}";
[TestFixtureSetUp]
public void SetUpFixture()
{
mockTextEditorProperties = new MockTextEditorProperties();
convertProjectCommand = new DerivedConvertProjectToPythonProjectCommand(mockTextEditorProperties);
mockTextEditorProperties.Encoding = Encoding.Unicode;
sourceProject = new MockProject();
sourceProject.Directory = @"d:\projects\test";
source = new FileProjectItem(sourceProject, ItemType.Compile, @"src\Program.cs");
targetProject = new MockProject();
targetProject.Directory = @"d:\projects\test\converted";
target = new FileProjectItem(targetProject, source.ItemType, source.Include);
source.CopyMetadataTo(target);
textFileSource = new FileProjectItem(sourceProject, ItemType.None, @"src\readme.txt");
textFileTarget = new FileProjectItem(targetProject, textFileSource.ItemType, textFileSource.Include);
textFileSource.CopyMetadataTo(textFileTarget);
convertProjectCommand.AddParseableFileContent(source.FileName, sourceCode);
convertProjectCommand.CallConvertFile(source, target);
convertProjectCommand.CallConvertFile(textFileSource, textFileTarget);
}
[Test]
public void CommandHasPythonTargetLanguage()
{
Assert.AreEqual(PythonLanguageBinding.LanguageName, convertProjectCommand.TargetLanguageName);
}
[Test]
public void TargetFileExtensionChanged()
{
Assert.AreEqual(@"src\Program.py", target.Include);
}
[Test]
public void TextFileTargetFileExtensionUnchanged()
{
Assert.AreEqual(@"src\readme.txt", textFileTarget.Include);
}
[Test]
public void FilesPassedToBaseClassForConversion()
{
List<SourceAndTargetFile> expectedFiles = new List<SourceAndTargetFile>();
expectedFiles.Add(new SourceAndTargetFile(textFileSource, textFileTarget));
Assert.AreEqual(expectedFiles, convertProjectCommand.SourceAndTargetFilesPassedToBaseClass);
}
[Test]
public void ExpectedCodeWrittenToFile()
{
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter();
string expectedCode = converter.Convert(sourceCode, SupportedLanguage.CSharp);
List<ConvertedFile> expectedSavedFiles = new List<ConvertedFile>();
expectedSavedFiles.Add(new ConvertedFile(target.FileName, expectedCode, mockTextEditorProperties.Encoding));
Assert.AreEqual(expectedSavedFiles, convertProjectCommand.SavedFiles);
}
}
}

81
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ConverterSupportedLanguageTests.cs

@ -0,0 +1,81 @@ @@ -0,0 +1,81 @@
// <file>
// <copyright see="prj:///doc/copyright.txt"/>
// <license see="prj:///doc/license.txt"/>
// <owner name="Matthew Ward" email="mrward@users.sourceforge.net"/>
// <version>$Revision$</version>
// </file>
using System;
using ICSharpCode.PythonBinding;
using ICSharpCode.NRefactory;
using NUnit.Framework;
namespace PythonBinding.Tests.Converter
{
[TestFixture]
public class ConverterSupportedLanguageTests
{
[Test]
public void CSharpSupportedLanguage()
{
NRefactoryToPythonConverter converter = NRefactoryToPythonConverter.Create(".cs");
Assert.AreEqual(SupportedLanguage.CSharp, converter.SupportedLanguage);
}
[Test]
public void VBNetSupportedLanguage()
{
NRefactoryToPythonConverter converter = NRefactoryToPythonConverter.Create(".vb");
Assert.AreEqual(SupportedLanguage.VBNet, converter.SupportedLanguage);
}
[Test]
public void CSharpCaseInsensitive()
{
NRefactoryToPythonConverter converter = NRefactoryToPythonConverter.Create(".CS");
Assert.AreEqual(SupportedLanguage.CSharp, converter.SupportedLanguage);
}
[Test]
public void NullFileName()
{
Assert.IsNull(NRefactoryToPythonConverter.Create(null));
}
[Test]
public void TextFileCannotBeConverted()
{
Assert.IsNull(NRefactoryToPythonConverter.Create(".txt"));
}
[Test]
public void CanConvertCSharpFiles()
{
Assert.IsTrue(NRefactoryToPythonConverter.CanConvert(".cs"));
}
[Test]
public void CanConvertVBNetFiles()
{
Assert.IsTrue(NRefactoryToPythonConverter.CanConvert(".vb"));
}
[Test]
public void CanConvertIsCaseInsensitive()
{
Assert.IsTrue(NRefactoryToPythonConverter.CanConvert(".CS"));
}
[Test]
public void CannotConvertTextFile()
{
Assert.IsFalse(NRefactoryToPythonConverter.CanConvert(".txt"));
}
[Test]
public void CannotConvertNullFileName()
{
Assert.IsFalse(NRefactoryToPythonConverter.CanConvert(null));
}
}
}

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ElseIfStatementConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -33,7 +34,7 @@ namespace PythonBinding.Tests.Converter @@ -33,7 +34,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef GetCount(self, i):\r\n" +

5
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/EmptyCSharpClassConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -24,7 +25,7 @@ namespace PythonBinding.Tests.Converter @@ -24,7 +25,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tpass";
@ -35,7 +36,7 @@ namespace PythonBinding.Tests.Converter @@ -35,7 +36,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCodeUsingFourSpacesAsIndent()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
converter.IndentString = new String(' ', 4);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/FieldDeclarationWithNoInitializerTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -31,7 +32,7 @@ namespace PythonBinding.Tests.Converter @@ -31,7 +32,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef __init__(self):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ForLoopConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -48,7 +49,7 @@ namespace PythonBinding.Tests.Converter @@ -48,7 +49,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string code = converter.Convert(csharp);
System.Console.WriteLine(code);
string expectedCode = "class Foo(object):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ForeachConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -32,7 +33,7 @@ namespace PythonBinding.Tests.Converter @@ -32,7 +33,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string code = converter.Convert(csharp);
string expectedCode = "class Foo(object):\r\n" +
"\tdef GetCount(self, items):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/IfBlockStatementConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -36,7 +37,7 @@ namespace PythonBinding.Tests.Converter @@ -36,7 +37,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef __init__(self):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/IfStatementConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -33,7 +34,7 @@ namespace PythonBinding.Tests.Converter @@ -33,7 +34,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef __init__(self):\r\n" +

17
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/IncrementAndDecrementConversionTests.cs

@ -8,6 +8,7 @@ @@ -8,6 +8,7 @@
using System;
using System.CodeDom;
using System.CodeDom.Compiler;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -35,7 +36,7 @@ namespace PythonBinding.Tests.Converter @@ -35,7 +36,7 @@ namespace PythonBinding.Tests.Converter
"\tdef Run(self, i):\r\n" +
"\t\ti += 1";
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string code = converter.Convert(csharp);
Assert.AreEqual(expectedPython, code);
@ -56,7 +57,7 @@ namespace PythonBinding.Tests.Converter @@ -56,7 +57,7 @@ namespace PythonBinding.Tests.Converter
"\tdef Run(self, i):\r\n" +
"\t\ti += 1";
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string code = converter.Convert(csharp);
Assert.AreEqual(expectedPython, code);
@ -77,7 +78,7 @@ namespace PythonBinding.Tests.Converter @@ -77,7 +78,7 @@ namespace PythonBinding.Tests.Converter
"\tdef Run(self, i):\r\n" +
"\t\ti -= 1";
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string code = converter.Convert(csharp);
Assert.AreEqual(expectedPython, code);
@ -98,7 +99,7 @@ namespace PythonBinding.Tests.Converter @@ -98,7 +99,7 @@ namespace PythonBinding.Tests.Converter
"\tdef Run(self, i):\r\n" +
"\t\ti -= 1";
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string code = converter.Convert(csharp);
Assert.AreEqual(expectedPython, code);
@ -119,7 +120,7 @@ namespace PythonBinding.Tests.Converter @@ -119,7 +120,7 @@ namespace PythonBinding.Tests.Converter
"\tdef Run(self, i):\r\n" +
"\t\ti = i + 10";
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string code = converter.Convert(csharp);
Assert.AreEqual(expectedPython, code);
@ -140,7 +141,7 @@ namespace PythonBinding.Tests.Converter @@ -140,7 +141,7 @@ namespace PythonBinding.Tests.Converter
"\tdef Run(self, i):\r\n" +
"\t\ti += 5";
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string code = converter.Convert(csharp);
Assert.AreEqual(expectedPython, code);
@ -161,7 +162,7 @@ namespace PythonBinding.Tests.Converter @@ -161,7 +162,7 @@ namespace PythonBinding.Tests.Converter
"\tdef Run(self, i):\r\n" +
"\t\ti = i - 10";
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string code = converter.Convert(csharp);
Assert.AreEqual(expectedPython, code);
@ -182,7 +183,7 @@ namespace PythonBinding.Tests.Converter @@ -182,7 +183,7 @@ namespace PythonBinding.Tests.Converter
"\tdef Run(self, i):\r\n" +
"\t\ti -= 5";
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string code = converter.Convert(csharp);
Assert.AreEqual(expectedPython, code);

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/IntegerClassFieldConversionTestFixture.cs

@ -8,6 +8,7 @@ @@ -8,6 +8,7 @@
using System;
using System.CodeDom;
using System.CodeDom.Compiler;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -32,7 +33,7 @@ namespace PythonBinding.Tests.Converter @@ -32,7 +33,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef __init__(self):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/IntegerClassFieldInitializedInConstructorTestFixture.cs

@ -8,6 +8,7 @@ @@ -8,6 +8,7 @@
using System;
using System.CodeDom;
using System.CodeDom.Compiler;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -32,7 +33,7 @@ namespace PythonBinding.Tests.Converter @@ -32,7 +33,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef __init__(self):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/IntegerClassFieldWithConstructorTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -31,7 +32,7 @@ namespace PythonBinding.Tests.Converter @@ -31,7 +32,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef __init__(self):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/IntegerMethodParameterTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -29,7 +30,7 @@ namespace PythonBinding.Tests.Converter @@ -29,7 +30,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void GeneratedPythonSourceCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef Print(self):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/LocalVariableAssignedInConstructorTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -30,7 +31,7 @@ namespace PythonBinding.Tests.Converter @@ -30,7 +31,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef __init__(self):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/LocalVariableDeclarationInIfStatementTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -36,7 +37,7 @@ namespace PythonBinding.Tests.Converter @@ -36,7 +37,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef __init__(self):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/LocalVariableNotInitializedTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -26,7 +27,7 @@ namespace PythonBinding.Tests.Converter @@ -26,7 +27,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef GetCount(self):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/MethodParameterConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -29,7 +30,7 @@ namespace PythonBinding.Tests.Converter @@ -29,7 +30,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string code = converter.Convert(csharp);
string expectedCode = "class Foo(object):\r\n" +
"\tdef Run(self, i):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/MethodReturnValueConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -29,7 +30,7 @@ namespace PythonBinding.Tests.Converter @@ -29,7 +30,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef Run(self):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/MethodWithBodyConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -29,7 +30,7 @@ namespace PythonBinding.Tests.Converter @@ -29,7 +30,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef Run(self):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ModulusOperatorConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -25,7 +26,7 @@ namespace PythonBinding.Tests.Converter @@ -25,7 +26,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef Convert(self, a):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/NestedClassConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -38,7 +39,7 @@ namespace PythonBinding.Tests.Converter @@ -38,7 +39,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef Run(self):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/NestedIfStatementConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -46,7 +47,7 @@ namespace PythonBinding.Tests.Converter @@ -46,7 +47,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef __init__(self):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/NullConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -31,7 +32,7 @@ namespace PythonBinding.Tests.Converter @@ -31,7 +32,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef Run(self, a):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ObjectCreationTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -35,7 +36,7 @@ namespace PythonBinding.Tests.Converter @@ -35,7 +36,7 @@ namespace PythonBinding.Tests.Converter
"\t\tdoc = XmlDocument()\r\n" +
"\t\tdoc.LoadXml(\"<root/>\")";
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
Assert.AreEqual(expectedPython, python);

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ObjectInitializerConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -42,7 +43,7 @@ namespace PythonBinding.Tests.Converter @@ -42,7 +43,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Class1(object):\r\n" +
"\tdef __init__(self):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/PropertyConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -35,7 +36,7 @@ namespace PythonBinding.Tests.Converter @@ -35,7 +36,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef __init__(self):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/PropertyWithGetSetStatementsTestfixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -43,7 +44,7 @@ namespace PythonBinding.Tests.Converter @@ -43,7 +44,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef __init__(self):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/RemoveHandlerConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -41,7 +42,7 @@ namespace PythonBinding.Tests.Converter @@ -41,7 +42,7 @@ namespace PythonBinding.Tests.Converter
"\r\n" +
"\tdef ButtonClick(self, sender, e):\r\n" +
"\t\tpass";
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string code = converter.Convert(csharp);
Assert.AreEqual(expectedCode, code);

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/SingleClassMethodConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -27,7 +28,7 @@ namespace PythonBinding.Tests.Converter @@ -27,7 +28,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void GeneratedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef Init(self):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/StaticClassReferenceTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -29,7 +30,7 @@ namespace PythonBinding.Tests.Converter @@ -29,7 +30,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef __init__(self):\r\n" +

5
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/SwitchStatementConversionTestFixture.cs

@ -8,6 +8,7 @@ @@ -8,6 +8,7 @@
using System;
using System.CodeDom;
using System.CodeDom.Compiler;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -43,7 +44,7 @@ namespace PythonBinding.Tests.Converter @@ -43,7 +44,7 @@ namespace PythonBinding.Tests.Converter
"\t\telse:\r\n" +
"\t\t\treturn -1";
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string code = converter.Convert(csharp);
Assert.AreEqual(expectedPython, code);
@ -77,7 +78,7 @@ namespace PythonBinding.Tests.Converter @@ -77,7 +78,7 @@ namespace PythonBinding.Tests.Converter
"\t\telse:\r\n" +
"\t\t\treturn -1";
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string code = converter.Convert(csharp);
Assert.AreEqual(expectedPython, code);

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/TernaryOperatorConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -27,7 +28,7 @@ namespace PythonBinding.Tests.Converter @@ -27,7 +28,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef TestMe(self, test):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/ThrowExceptionConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -33,7 +34,7 @@ namespace PythonBinding.Tests.Converter @@ -33,7 +34,7 @@ namespace PythonBinding.Tests.Converter
string expectedCode = "class Foo(object):\r\n" +
"\tdef Run(self):\r\n" +
"\t\traise XmlException()";
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string code = converter.Convert(csharp);
Assert.AreEqual(expectedCode, code);

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/TryCatchFinallyConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -49,7 +50,7 @@ namespace PythonBinding.Tests.Converter @@ -49,7 +50,7 @@ namespace PythonBinding.Tests.Converter
"\t\tfinally:\r\n" +
"\t\t\tConsole.WriteLine(xml)";
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
Assert.AreEqual(expectedPython, python);

9
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/UnaryOperatorConversionTests.cs

@ -8,6 +8,7 @@ @@ -8,6 +8,7 @@
using System;
using System.CodeDom;
using System.CodeDom.Compiler;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -31,7 +32,7 @@ namespace PythonBinding.Tests.Converter @@ -31,7 +32,7 @@ namespace PythonBinding.Tests.Converter
"\tdef Run(self, i):\r\n" +
"\t\ti = -1";
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string code = converter.Convert(csharp);
Assert.AreEqual(expectedPython, code);
@ -52,7 +53,7 @@ namespace PythonBinding.Tests.Converter @@ -52,7 +53,7 @@ namespace PythonBinding.Tests.Converter
"\tdef Run(self, i):\r\n" +
"\t\ti = +1";
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string code = converter.Convert(csharp);
Assert.AreEqual(expectedPython, code);
@ -73,7 +74,7 @@ namespace PythonBinding.Tests.Converter @@ -73,7 +74,7 @@ namespace PythonBinding.Tests.Converter
"\tdef Run(self, i):\r\n" +
"\t\tj = not i";
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string code = converter.Convert(csharp);
Assert.AreEqual(expectedPython, code);
@ -94,7 +95,7 @@ namespace PythonBinding.Tests.Converter @@ -94,7 +95,7 @@ namespace PythonBinding.Tests.Converter
"\tdef Run(self, i):\r\n" +
"\t\tj = ~i";
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string code = converter.Convert(csharp);
Assert.AreEqual(expectedPython, code);

7
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/UsingStatementConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -22,7 +23,7 @@ namespace PythonBinding.Tests.Converter @@ -22,7 +23,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void GeneratedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "import System\r\n" +
"class Foo(object):\r\n" +
@ -40,7 +41,7 @@ namespace PythonBinding.Tests.Converter @@ -40,7 +41,7 @@ namespace PythonBinding.Tests.Converter
"{\r\n" +
"}";
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "import System\r\n" +
"import System.Drawing\r\n" +
@ -48,6 +49,6 @@ namespace PythonBinding.Tests.Converter @@ -48,6 +49,6 @@ namespace PythonBinding.Tests.Converter
"\tpass";
Assert.AreEqual(expectedPython, python);
}
}
}
}

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/VBClassConversionTestFixture.cs

@ -8,6 +8,7 @@ @@ -8,6 +8,7 @@
using System;
using System.CodeDom;
using System.CodeDom.Compiler;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -27,7 +28,7 @@ namespace PythonBinding.Tests.Converter @@ -27,7 +28,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void GeneratedPythonSourceCode()
{
VBNetToPythonConverter converter = new VBNetToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.VBNet);
string python = converter.Convert(vb);
string expectedPython = "class Class1(object):\r\n" +
"\tpass";

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/VBStringConcatTestFixture.cs

@ -8,6 +8,7 @@ @@ -8,6 +8,7 @@
using System;
using System.CodeDom;
using System.CodeDom.Compiler;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -28,7 +29,7 @@ namespace PythonBinding.Tests.Converter @@ -28,7 +29,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void GeneratedPythonSourceCode()
{
VBNetToPythonConverter converter = new VBNetToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.VBNet);
string python = converter.Convert(vb);
string expectedPython = "class Class1(object):\r\n" +
"\tdef Test(self):\r\n" +

3
src/AddIns/BackendBindings/Python/PythonBinding/Test/Converter/WhileLoopConversionTestFixture.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
// </file>
using System;
using ICSharpCode.NRefactory;
using ICSharpCode.PythonBinding;
using NUnit.Framework;
@ -28,7 +29,7 @@ namespace PythonBinding.Tests.Converter @@ -28,7 +29,7 @@ namespace PythonBinding.Tests.Converter
[Test]
public void ConvertedPythonCode()
{
CSharpToPythonConverter converter = new CSharpToPythonConverter();
NRefactoryToPythonConverter converter = new NRefactoryToPythonConverter(SupportedLanguage.CSharp);
string python = converter.Convert(csharp);
string expectedPython = "class Foo(object):\r\n" +
"\tdef CountDown(self):\r\n" +

4
src/AddIns/BackendBindings/Python/PythonBinding/Test/PythonBinding.Tests.csproj

@ -101,6 +101,8 @@ @@ -101,6 +101,8 @@
<Compile Include="Converter\CallConstructorWithParametersConversionTestFixture.cs" />
<Compile Include="Converter\ClassDestructorConversionTestFixture.cs" />
<Compile Include="Converter\ClassFieldReferenceTestFixture.cs" />
<Compile Include="Converter\ConverterSupportedLanguageTests.cs" />
<Compile Include="Converter\ConvertToPythonProjectCommandTestFixture.cs" />
<Compile Include="Converter\IntegerMethodParameterTestFixture.cs" />
<Compile Include="Converter\BaseClassReferenceTestFixture.cs" />
<Compile Include="Converter\BinaryOperatorConversionTests.cs" />
@ -269,11 +271,13 @@ @@ -269,11 +271,13 @@
<Compile Include="Utils\AddedComponent.cs" />
<Compile Include="Utils\BrowseButtonInfo.cs" />
<Compile Include="Utils\BrowseFolderButtonInfo.cs" />
<Compile Include="Utils\ConvertedFile.cs" />
<Compile Include="Utils\CreatedComponent.cs" />
<Compile Include="Utils\CreatedInstance.cs" />
<Compile Include="Utils\DerivedAddInOptions.cs" />
<Compile Include="Utils\DerivedApplicationSettingsPanel.cs" />
<Compile Include="Utils\DerivedCompilingOptionsPanel.cs" />
<Compile Include="Utils\DerivedConvertProjectToPythonProjectCommand.cs" />
<Compile Include="Utils\DerivedFormDesignerViewContent.cs" />
<Compile Include="Utils\DerivedPythonCodeCompletionBinding.cs" />
<Compile Include="Utils\DerivedPythonDesignerGenerator.cs" />

50
src/AddIns/BackendBindings/Python/PythonBinding/Test/Utils/ConvertedFile.cs

@ -0,0 +1,50 @@ @@ -0,0 +1,50 @@
// <file>
// <copyright see="prj:///doc/copyright.txt"/>
// <license see="prj:///doc/license.txt"/>
// <owner name="Matthew Ward" email="mrward@users.sourceforge.net"/>
// <version>$Revision$</version>
// </file>
using System;
using System.Text;
namespace PythonBinding.Tests.Utils
{
/// <summary>
/// Stores the filename and the code for the converted file.
/// </summary>
public class ConvertedFile
{
public string FileName;
public string Text;
public Encoding Encoding;
public ConvertedFile(string fileName, string text, Encoding encoding)
{
this.FileName = fileName;
this.Text = text;
this.Encoding = encoding;
}
public override string ToString()
{
return "FileName: " + FileName + "\r\n" +
"Encoding: " + Encoding + "\r\n" +
"Text: " + Text;
}
public override bool Equals(object obj)
{
ConvertedFile convertedFile = obj as ConvertedFile;
if (convertedFile != null) {
return FileName == convertedFile.FileName && Text == convertedFile.Text && Encoding == convertedFile.Encoding;
}
return false;
}
public override int GetHashCode()
{
return FileName.GetHashCode();
}
}
}

85
src/AddIns/BackendBindings/Python/PythonBinding/Test/Utils/DerivedConvertProjectToPythonProjectCommand.cs

@ -0,0 +1,85 @@ @@ -0,0 +1,85 @@
// <file>
// <copyright see="prj:///doc/copyright.txt"/>
// <license see="prj:///doc/license.txt"/>
// <owner name="Matthew Ward" email="mrward@users.sourceforge.net"/>
// <version>$Revision$</version>
// </file>
using System;
using System.Collections.Generic;
using System.Text;
using ICSharpCode.PythonBinding;
using ICSharpCode.Core;
using ICSharpCode.SharpDevelop.Project;
using ICSharpCode.TextEditor.Document;
namespace PythonBinding.Tests.Utils
{
public struct SourceAndTargetFile
{
public FileProjectItem Source;
public FileProjectItem Target;
public SourceAndTargetFile(FileProjectItem source, FileProjectItem target)
{
this.Source = source;
this.Target = target;
}
}
/// <summary>
/// Used to test the ConvertProjectToPythonProjectCommand class.
/// </summary>
public class DerivedConvertProjectToPythonProjectCommand : ConvertProjectToPythonProjectCommand
{
List<SourceAndTargetFile> sourceAndTargetFilesPassedToBaseClass = new List<SourceAndTargetFile>();
List<ConvertedFile> savedFiles = new List<ConvertedFile>();
List<ConvertedFile> parseableFileContent = new List<ConvertedFile>();
public DerivedConvertProjectToPythonProjectCommand(ITextEditorProperties textEditorProperties)
: base(textEditorProperties)
{
}
public List<SourceAndTargetFile> SourceAndTargetFilesPassedToBaseClass {
get { return sourceAndTargetFilesPassedToBaseClass; }
}
/// <summary>
/// Gets the files converted and saved.
/// </summary>
public List<ConvertedFile> SavedFiles {
get { return savedFiles; }
}
public void AddParseableFileContent(string fileName, string content)
{
parseableFileContent.Add(new ConvertedFile(fileName, content, null));
}
public void CallConvertFile(FileProjectItem source, FileProjectItem target)
{
ConvertFile(source, target);
}
protected override void LanguageConverterConvertFile(FileProjectItem source, FileProjectItem target)
{
sourceAndTargetFilesPassedToBaseClass.Add(new SourceAndTargetFile(source, target));
}
protected override void SaveFile(string fileName, string content, Encoding encoding)
{
savedFiles.Add(new ConvertedFile(fileName, content, encoding));
}
protected override string GetParseableFileContent(string fileName)
{
foreach (ConvertedFile file in parseableFileContent) {
if (file.FileName == fileName) {
return file.Text;
}
}
return null;
}
}
}

12
src/AddIns/BackendBindings/Python/PythonBinding/Test/Utils/MockProject.cs

@ -21,6 +21,9 @@ namespace PythonBinding.Tests.Utils @@ -21,6 +21,9 @@ namespace PythonBinding.Tests.Utils
/// </summary>
public class MockProject : IProject
{
readonly object syncRoot = new object();
string directory = String.Empty;
public MockProject()
{
}
@ -78,9 +81,8 @@ namespace PythonBinding.Tests.Utils @@ -78,9 +81,8 @@ namespace PythonBinding.Tests.Utils
}
public string Directory {
get {
throw new NotImplementedException();
}
get { return directory; }
set { directory = value; }
}
public string AssemblyName {
@ -161,9 +163,7 @@ namespace PythonBinding.Tests.Utils @@ -161,9 +163,7 @@ namespace PythonBinding.Tests.Utils
}
public object SyncRoot {
get {
throw new NotImplementedException();
}
get { return syncRoot; }
}
public ISolutionFolderContainer Parent {

BIN
src/Main/StartUp/Project/Resources/StringResources.resources

Binary file not shown.
Loading…
Cancel
Save