Browse Source

Merge branch 'newNR' of github.com:icsharpcode/SharpDevelop into newNR

newNRvisualizers
Peter Forstmeier 13 years ago
parent
commit
24be30d385
  1. 22
      SharpDevelop.Tests.sln
  2. 11
      SharpDevelop.sln
  3. 8
      src/AddIns/BackendBindings/CSharpBinding/Project/Src/Project/CSharpProject.cs
  4. 2
      src/AddIns/Misc/TextTemplating/Project/Src/AddInAssemblyName.cs
  5. 2
      src/AddIns/Misc/TextTemplating/Project/Src/CompilerErrorTask.cs
  6. 2
      src/AddIns/Misc/TextTemplating/Project/Src/ITextTemplatingCustomToolContext.cs
  7. 3
      src/AddIns/Misc/TextTemplating/Project/Src/TextTemplatingAddInTree.cs
  8. 8
      src/AddIns/Misc/TextTemplating/Project/Src/TextTemplatingAssemblyParserService.cs
  9. 3
      src/AddIns/Misc/TextTemplating/Project/Src/TextTemplatingAssemblyPathResolver.cs
  10. 4
      src/AddIns/Misc/TextTemplating/Project/Src/TextTemplatingCustomToolContext.cs
  11. 25
      src/AddIns/Misc/TextTemplating/Project/Src/TextTemplatingFilePreprocessor.cs
  12. 9
      src/AddIns/Misc/TextTemplating/Project/Src/TextTemplatingReflectionProjectContent.cs
  13. 8
      src/AddIns/Misc/TextTemplating/Project/TextTemplating.csproj
  14. 6
      src/AddIns/Misc/TextTemplating/Test/Helpers/FakeTextTemplatingCustomToolContext.cs
  15. 19
      src/AddIns/Misc/TextTemplating/Test/Helpers/MessageLoopHelper.cs
  16. 3
      src/AddIns/Misc/TextTemplating/Test/Helpers/ProjectHelper.cs
  17. 9
      src/AddIns/Misc/TextTemplating/Test/Helpers/TestableProject.cs
  18. 14
      src/AddIns/Misc/TextTemplating/Test/Src/CompilerErrorTaskTests.cs
  19. 14
      src/AddIns/Misc/TextTemplating/Test/Src/NamespaceHintTests.cs
  20. 18
      src/AddIns/Misc/TextTemplating/Test/Src/TextTemplatingAssemblyPathResolverTests.cs
  21. 14
      src/AddIns/Misc/TextTemplating/Test/Src/TextTemplatingFileGeneratorCustomToolTests.cs
  22. 23
      src/AddIns/Misc/TextTemplating/Test/Src/TextTemplatingFileGeneratorTests.cs
  23. 14
      src/AddIns/Misc/TextTemplating/Test/Src/TextTemplatingFilePreprocessorCustomToolTests.cs
  24. 44
      src/AddIns/Misc/TextTemplating/Test/Src/TextTemplatingPreprocessorTests.cs
  25. 8
      src/AddIns/Misc/TextTemplating/Test/Src/TextTemplatingReflectionProjectContentTests.cs
  26. 14
      src/AddIns/Misc/TextTemplating/Test/TextTemplating.Tests.csproj
  27. 20
      src/AddIns/Misc/TextTemplating/TextTemplating.sln
  28. 2
      src/Main/SharpDevelop/Editor/TextContentCondition.cs
  29. 4
      src/Setup/Files.wxs
  30. 4
      src/Setup/Setup.wxs

22
SharpDevelop.Tests.sln

@ -111,6 +111,10 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UsageDataCollector.AddIn",
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SearchAndReplace.Tests", "src\AddIns\Misc\SearchAndReplace\Test\SearchAndReplace.Tests.csproj", "{A569DCC1-C608-45FD-B770-4F79335EF154}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SearchAndReplace.Tests", "src\AddIns\Misc\SearchAndReplace\Test\SearchAndReplace.Tests.csproj", "{A569DCC1-C608-45FD-B770-4F79335EF154}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TextTemplating.Tests", "src\AddIns\Misc\TextTemplating\Test\TextTemplating.Tests.csproj", "{5186325C-DD7F-4246-9BE7-3F384EFBF5A6}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TextTemplating", "src\AddIns\Misc\TextTemplating\Project\TextTemplating.csproj", "{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Display Bindings", "Display Bindings", "{11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}" Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Display Bindings", "Display Bindings", "{11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}"
ProjectSection(SolutionItems) = postProject ProjectSection(SolutionItems) = postProject
EndProjectSection EndProjectSection
@ -565,6 +569,22 @@ Global
{E2FD63DA-8478-4066-934C-DA82A852C83A}.Release|Any CPU.ActiveCfg = Release|Any CPU {E2FD63DA-8478-4066-934C-DA82A852C83A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E2FD63DA-8478-4066-934C-DA82A852C83A}.Release|x86.Build.0 = Release|Any CPU {E2FD63DA-8478-4066-934C-DA82A852C83A}.Release|x86.Build.0 = Release|Any CPU
{E2FD63DA-8478-4066-934C-DA82A852C83A}.Release|x86.ActiveCfg = Release|Any CPU {E2FD63DA-8478-4066-934C-DA82A852C83A}.Release|x86.ActiveCfg = Release|Any CPU
{5186325C-DD7F-4246-9BE7-3F384EFBF5A6}.Debug|Any CPU.Build.0 = Debug|x86
{5186325C-DD7F-4246-9BE7-3F384EFBF5A6}.Debug|Any CPU.ActiveCfg = Debug|x86
{5186325C-DD7F-4246-9BE7-3F384EFBF5A6}.Debug|x86.Build.0 = Debug|x86
{5186325C-DD7F-4246-9BE7-3F384EFBF5A6}.Debug|x86.ActiveCfg = Debug|x86
{5186325C-DD7F-4246-9BE7-3F384EFBF5A6}.Release|Any CPU.Build.0 = Release|x86
{5186325C-DD7F-4246-9BE7-3F384EFBF5A6}.Release|Any CPU.ActiveCfg = Release|x86
{5186325C-DD7F-4246-9BE7-3F384EFBF5A6}.Release|x86.Build.0 = Release|x86
{5186325C-DD7F-4246-9BE7-3F384EFBF5A6}.Release|x86.ActiveCfg = Release|x86
{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}.Debug|Any CPU.Build.0 = Debug|x86
{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}.Debug|Any CPU.ActiveCfg = Debug|x86
{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}.Debug|x86.Build.0 = Debug|x86
{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}.Debug|x86.ActiveCfg = Debug|x86
{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}.Release|Any CPU.Build.0 = Release|x86
{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}.Release|Any CPU.ActiveCfg = Release|x86
{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}.Release|x86.Build.0 = Release|x86
{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}.Release|x86.ActiveCfg = Release|x86
EndGlobalSection EndGlobalSection
GlobalSection(SolutionProperties) = preSolution GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE HideSolutionNode = FALSE
@ -615,6 +635,8 @@ Global
{64A3E5E6-90BF-47F6-94DF-68C94B62C817} = {F3662720-9EA2-4591-BBC6-97361DCE50A9} {64A3E5E6-90BF-47F6-94DF-68C94B62C817} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{DEFC8584-BEC3-4921-BD0F-40482E450B7B} = {F3662720-9EA2-4591-BBC6-97361DCE50A9} {DEFC8584-BEC3-4921-BD0F-40482E450B7B} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{A569DCC1-C608-45FD-B770-4F79335EF154} = {F3662720-9EA2-4591-BBC6-97361DCE50A9} {A569DCC1-C608-45FD-B770-4F79335EF154} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{5186325C-DD7F-4246-9BE7-3F384EFBF5A6} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{6B1CFE35-DA17-4DEB-9C6E-227E5E251DA0} = {DEFC8584-BEC3-4921-BD0F-40482E450B7B} {6B1CFE35-DA17-4DEB-9C6E-227E5E251DA0} = {DEFC8584-BEC3-4921-BD0F-40482E450B7B}
{0008FCE9-9EB4-4E2E-979B-553278E5BBA6} = {DEFC8584-BEC3-4921-BD0F-40482E450B7B} {0008FCE9-9EB4-4E2E-979B-553278E5BBA6} = {DEFC8584-BEC3-4921-BD0F-40482E450B7B}
{0162E499-42D0-409B-AA25-EED21F75336B} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F} {0162E499-42D0-409B-AA25-EED21F75336B} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}

11
SharpDevelop.sln

@ -101,6 +101,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RegExpTk", "src\AddIns\Misc
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PortSD4AddInToSD5", "samples\PortSD4AddInToSD5\PortSD4AddInToSD5.csproj", "{E2FD63DA-8478-4066-934C-DA82A852C83A}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PortSD4AddInToSD5", "samples\PortSD4AddInToSD5\PortSD4AddInToSD5.csproj", "{E2FD63DA-8478-4066-934C-DA82A852C83A}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TextTemplating", "src\AddIns\Misc\TextTemplating\Project\TextTemplating.csproj", "{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Display Bindings", "Display Bindings", "{11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}" Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Display Bindings", "Display Bindings", "{11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}"
ProjectSection(SolutionItems) = postProject ProjectSection(SolutionItems) = postProject
EndProjectSection EndProjectSection
@ -475,6 +477,14 @@ Global
{E2FD63DA-8478-4066-934C-DA82A852C83A}.Release|Any CPU.ActiveCfg = Release|Any CPU {E2FD63DA-8478-4066-934C-DA82A852C83A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E2FD63DA-8478-4066-934C-DA82A852C83A}.Release|x86.Build.0 = Release|Any CPU {E2FD63DA-8478-4066-934C-DA82A852C83A}.Release|x86.Build.0 = Release|Any CPU
{E2FD63DA-8478-4066-934C-DA82A852C83A}.Release|x86.ActiveCfg = Release|Any CPU {E2FD63DA-8478-4066-934C-DA82A852C83A}.Release|x86.ActiveCfg = Release|Any CPU
{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}.Debug|Any CPU.Build.0 = Debug|x86
{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}.Debug|Any CPU.ActiveCfg = Debug|x86
{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}.Debug|x86.Build.0 = Debug|x86
{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}.Debug|x86.ActiveCfg = Debug|x86
{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}.Release|Any CPU.Build.0 = Release|x86
{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}.Release|Any CPU.ActiveCfg = Release|x86
{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}.Release|x86.Build.0 = Release|x86
{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}.Release|x86.ActiveCfg = Release|x86
EndGlobalSection EndGlobalSection
GlobalSection(SolutionProperties) = preSolution GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE HideSolutionNode = FALSE
@ -519,6 +529,7 @@ Global
{F93E52FD-DA66-4CE5-A0CB-BCD902811122} = {F3662720-9EA2-4591-BBC6-97361DCE50A9} {F93E52FD-DA66-4CE5-A0CB-BCD902811122} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{64A3E5E6-90BF-47F6-94DF-68C94B62C817} = {F3662720-9EA2-4591-BBC6-97361DCE50A9} {64A3E5E6-90BF-47F6-94DF-68C94B62C817} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{E2FD63DA-8478-4066-934C-DA82A852C83A} = {F3662720-9EA2-4591-BBC6-97361DCE50A9} {E2FD63DA-8478-4066-934C-DA82A852C83A} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{6B1CFE35-DA17-4DEB-9C6E-227E5E251DA0} = {59A30AA6-D600-41AB-B7A1-9543469DBE36} {6B1CFE35-DA17-4DEB-9C6E-227E5E251DA0} = {59A30AA6-D600-41AB-B7A1-9543469DBE36}
{0008FCE9-9EB4-4E2E-979B-553278E5BBA6} = {59A30AA6-D600-41AB-B7A1-9543469DBE36} {0008FCE9-9EB4-4E2E-979B-553278E5BBA6} = {59A30AA6-D600-41AB-B7A1-9543469DBE36}
{0162E499-42D0-409B-AA25-EED21F75336B} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F} {0162E499-42D0-409B-AA25-EED21F75336B} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}

8
src/AddIns/BackendBindings/CSharpBinding/Project/Src/Project/CSharpProject.cs

@ -2,11 +2,11 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt) // This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System; using System;
using System.CodeDom.Compiler;
using System.Collections.Generic; using System.Collections.Generic;
using System.IO; using System.IO;
using System.Linq; using System.Linq;
using System.Threading.Tasks; using System.Threading.Tasks;
using ICSharpCode.NRefactory.CSharp; using ICSharpCode.NRefactory.CSharp;
using ICSharpCode.NRefactory.TypeSystem; using ICSharpCode.NRefactory.TypeSystem;
using ICSharpCode.SharpDevelop; using ICSharpCode.SharpDevelop;
@ -14,6 +14,7 @@ using ICSharpCode.SharpDevelop.Internal.Templates;
using ICSharpCode.SharpDevelop.Project; using ICSharpCode.SharpDevelop.Project;
using ICSharpCode.SharpDevelop.Project.Converter; using ICSharpCode.SharpDevelop.Project.Converter;
using ICSharpCode.SharpDevelop.Refactoring; using ICSharpCode.SharpDevelop.Refactoring;
using Microsoft.CSharp;
namespace CSharpBinding namespace CSharpBinding
{ {
@ -135,6 +136,11 @@ namespace CSharpBinding
{ {
return new CSharpProjectBehavior(this, base.CreateDefaultBehavior()); return new CSharpProjectBehavior(this, base.CreateDefaultBehavior());
} }
public override CodeDomProvider CreateCodeDomProvider()
{
return new CSharpCodeProvider();
}
} }
public class CSharpProjectBehavior : ProjectBehavior public class CSharpProjectBehavior : ProjectBehavior

2
src/AddIns/Misc/TextTemplating/Project/Src/AddInAssemblyName.cs

@ -2,7 +2,7 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt) // This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System; using System;
using ICSharpCode.SharpDevelop.Dom; using ICSharpCode.SharpDevelop.Parser;
namespace ICSharpCode.TextTemplating namespace ICSharpCode.TextTemplating
{ {

2
src/AddIns/Misc/TextTemplating/Project/Src/CompilerErrorTask.cs

@ -8,7 +8,7 @@ using ICSharpCode.SharpDevelop;
namespace ICSharpCode.TextTemplating namespace ICSharpCode.TextTemplating
{ {
public class CompilerErrorTask : Task public class CompilerErrorTask : SDTask
{ {
public CompilerErrorTask(CompilerError error) public CompilerErrorTask(CompilerError error)
: base( : base(

2
src/AddIns/Misc/TextTemplating/Project/Src/ITextTemplatingCustomToolContext.cs

@ -12,7 +12,7 @@ namespace ICSharpCode.TextTemplating
FileProjectItem EnsureOutputFileIsInProject(FileProjectItem baseItem, string outputFileName); FileProjectItem EnsureOutputFileIsInProject(FileProjectItem baseItem, string outputFileName);
void ClearTasksExceptCommentTasks(); void ClearTasksExceptCommentTasks();
void AddTask(Task task); void AddTask(SDTask task);
void BringErrorsPadToFront(); void BringErrorsPadToFront();
void DebugLog(string message, Exception ex); void DebugLog(string message, Exception ex);

3
src/AddIns/Misc/TextTemplating/Project/Src/TextTemplatingAddInTree.cs

@ -4,6 +4,7 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using ICSharpCode.Core; using ICSharpCode.Core;
using ICSharpCode.SharpDevelop;
namespace ICSharpCode.TextTemplating namespace ICSharpCode.TextTemplating
{ {
@ -11,7 +12,7 @@ namespace ICSharpCode.TextTemplating
{ {
public IEnumerable<IAddIn> GetAddIns() public IEnumerable<IAddIn> GetAddIns()
{ {
foreach (AddIn addIn in AddInTree.AddIns) { foreach (AddIn addIn in SD.AddInTree.AddIns) {
yield return new TextTemplatingAddIn(addIn); yield return new TextTemplatingAddIn(addIn);
} }
} }

8
src/AddIns/Misc/TextTemplating/Project/Src/TextTemplatingAssemblyParserService.cs

@ -2,8 +2,9 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt) // This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System; using System;
using ICSharpCode.NRefactory.TypeSystem;
using ICSharpCode.SharpDevelop; using ICSharpCode.SharpDevelop;
using ICSharpCode.SharpDevelop.Dom; using ICSharpCode.SharpDevelop.Parser;
using ICSharpCode.SharpDevelop.Project; using ICSharpCode.SharpDevelop.Project;
namespace ICSharpCode.TextTemplating namespace ICSharpCode.TextTemplating
@ -12,8 +13,9 @@ namespace ICSharpCode.TextTemplating
{ {
public IReflectionProjectContent GetReflectionProjectContentForReference(ReferenceProjectItem item) public IReflectionProjectContent GetReflectionProjectContentForReference(ReferenceProjectItem item)
{ {
IProjectContent projectContent = AssemblyParserService.GetProjectContentForReference(item); //IProjectContent projectContent = SD.AssemblyParserService.GetProjectContentForReference(item);
return new TextTemplatingReflectionProjectContent(projectContent); //return new TextTemplatingReflectionProjectContent(projectContent);
return null;
} }
} }
} }

3
src/AddIns/Misc/TextTemplating/Project/Src/TextTemplatingAssemblyPathResolver.cs

@ -40,7 +40,8 @@ namespace ICSharpCode.TextTemplating
string resolvedAssemblyFileName = ResolveAssemblyFromProject(assemblyReference); string resolvedAssemblyFileName = ResolveAssemblyFromProject(assemblyReference);
if (resolvedAssemblyFileName == null) { if (resolvedAssemblyFileName == null) {
resolvedAssemblyFileName = ResolveAssemblyFromGac(assemblyReference); // TODO GAC assembly reference.
//resolvedAssemblyFileName = ResolveAssemblyFromGac(assemblyReference);
} }
if (resolvedAssemblyFileName != null) { if (resolvedAssemblyFileName != null) {
return resolvedAssemblyFileName; return resolvedAssemblyFileName;

4
src/AddIns/Misc/TextTemplating/Project/Src/TextTemplatingCustomToolContext.cs

@ -29,14 +29,14 @@ namespace ICSharpCode.TextTemplating
TaskService.ClearExceptCommentTasks(); TaskService.ClearExceptCommentTasks();
} }
public void AddTask(Task task) public void AddTask(SDTask task)
{ {
TaskService.Add(task); TaskService.Add(task);
} }
public void BringErrorsPadToFront() public void BringErrorsPadToFront()
{ {
WorkbenchSingleton.Workbench.GetPad(typeof(ErrorListPad)).BringPadToFront(); SD.Workbench.GetPad(typeof(ErrorListPad)).BringPadToFront();
} }
public void DebugLog(string message, Exception ex) public void DebugLog(string message, Exception ex)

25
src/AddIns/Misc/TextTemplating/Project/Src/TextTemplatingFilePreprocessor.cs

@ -6,7 +6,10 @@ using System.CodeDom.Compiler;
using System.IO; using System.IO;
using System.Text; using System.Text;
using ICSharpCode.Core;
using ICSharpCode.SharpDevelop;
using ICSharpCode.SharpDevelop.Project; using ICSharpCode.SharpDevelop.Project;
using Microsoft.CSharp;
namespace ICSharpCode.TextTemplating namespace ICSharpCode.TextTemplating
{ {
@ -88,11 +91,23 @@ namespace ICSharpCode.TextTemplating
string CreateValidClassName(string className) string CreateValidClassName(string className)
{ {
return TemplateFile return CreateCodeDomProvider().CreateValidIdentifier(className);
.Project }
.LanguageProperties
.CodeDomProvider CodeDomProvider CreateCodeDomProvider()
.CreateValidIdentifier(className); {
CodeDomProvider provider = TemplateFile.Project.CreateCodeDomProvider();
if (provider != null) {
return provider;
}
AddMissingCodeDomProviderTask();
return new CSharpCodeProvider();
}
void AddMissingCodeDomProviderTask()
{
string message = "Project does not provide a CodeDomProvider. Using C# provider by default";
Context.AddTask(new SDTask(null, message, 0, 0, TaskType.Warning));
} }
} }
} }

9
src/AddIns/Misc/TextTemplating/Project/Src/TextTemplatingReflectionProjectContent.cs

@ -2,21 +2,16 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt) // This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System; using System;
using ICSharpCode.SharpDevelop.Dom; using ICSharpCode.NRefactory.TypeSystem;
namespace ICSharpCode.TextTemplating namespace ICSharpCode.TextTemplating
{ {
public class TextTemplatingReflectionProjectContent : IReflectionProjectContent public class TextTemplatingReflectionProjectContent : IReflectionProjectContent
{ {
public TextTemplatingReflectionProjectContent(IProjectContent projectContent) public TextTemplatingReflectionProjectContent(IProjectContent projectContent)
: this(projectContent as ReflectionProjectContent)
{
}
TextTemplatingReflectionProjectContent(ReflectionProjectContent projectContent)
{ {
if (projectContent != null) { if (projectContent != null) {
AssemblyLocation = projectContent.AssemblyLocation; AssemblyLocation = projectContent.Location;
} }
} }

8
src/AddIns/Misc/TextTemplating/Project/TextTemplating.csproj

@ -7,12 +7,13 @@
<OutputType>Library</OutputType> <OutputType>Library</OutputType>
<RootNamespace>ICSharpCode.TextTemplating</RootNamespace> <RootNamespace>ICSharpCode.TextTemplating</RootNamespace>
<AssemblyName>TextTemplating</AssemblyName> <AssemblyName>TextTemplating</AssemblyName>
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion> <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<AllowUnsafeBlocks>False</AllowUnsafeBlocks> <AllowUnsafeBlocks>False</AllowUnsafeBlocks>
<NoStdLib>False</NoStdLib> <NoStdLib>False</NoStdLib>
<WarningLevel>4</WarningLevel> <WarningLevel>4</WarningLevel>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors> <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<OutputPath>..\..\..\..\..\AddIns\Misc\TextTemplating\</OutputPath> <OutputPath>..\..\..\..\..\AddIns\Misc\TextTemplating\</OutputPath>
<TargetFrameworkProfile />
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Platform)' == 'x86' "> <PropertyGroup Condition=" '$(Platform)' == 'x86' ">
<PlatformTarget>x86</PlatformTarget> <PlatformTarget>x86</PlatformTarget>
@ -118,6 +119,11 @@
</None> </None>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ProjectReference Include="..\..\..\..\Libraries\NRefactory\ICSharpCode.NRefactory\ICSharpCode.NRefactory.csproj">
<Project>{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}</Project>
<Name>ICSharpCode.NRefactory</Name>
<Private>False</Private>
</ProjectReference>
<ProjectReference Include="..\..\..\..\Main\Base\Project\ICSharpCode.SharpDevelop.csproj"> <ProjectReference Include="..\..\..\..\Main\Base\Project\ICSharpCode.SharpDevelop.csproj">
<Project>{2748AD25-9C63-4E12-877B-4DCE96FBED54}</Project> <Project>{2748AD25-9C63-4E12-877B-4DCE96FBED54}</Project>
<Name>ICSharpCode.SharpDevelop</Name> <Name>ICSharpCode.SharpDevelop</Name>

6
src/AddIns/Misc/TextTemplating/Test/Helpers/FakeTextTemplatingCustomToolContext.cs

@ -21,9 +21,9 @@ namespace TextTemplating.Tests.Helpers
public string NamePassedToSetLogicalCallContextData; public string NamePassedToSetLogicalCallContextData;
public object DataPassedToSetLogicalCallContextData; public object DataPassedToSetLogicalCallContextData;
public List<Task> TasksAdded = new List<Task>(); public List<SDTask> TasksAdded = new List<SDTask>();
public Task FirstTaskAdded { public SDTask FirstTaskAdded {
get { return TasksAdded[0]; } get { return TasksAdded[0]; }
} }
@ -45,7 +45,7 @@ namespace TextTemplating.Tests.Helpers
IsClearTasksExceptCommentTasksCalled = true; IsClearTasksExceptCommentTasksCalled = true;
} }
public void AddTask(Task task) public void AddTask(SDTask task)
{ {
TasksAdded.Add(task); TasksAdded.Add(task);
} }

19
src/AddIns/Misc/TextTemplating/Test/Helpers/MessageLoopHelper.cs

@ -0,0 +1,19 @@
// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt)
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System;
using ICSharpCode.SharpDevelop;
using Rhino.Mocks;
namespace TextTemplating.Tests.Helpers
{
public static class MessageLoopHelper
{
public static void InitializeForUnitTests()
{
IMessageLoop messageLoop = MockRepository.GenerateStub<IMessageLoop>();
SD.Services.RemoveService(typeof(IMessageLoop));
SD.Services.AddService(typeof(IMessageLoop), messageLoop);
}
}
}

3
src/AddIns/Misc/TextTemplating/Test/Helpers/ProjectHelper.cs

@ -2,6 +2,7 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt) // This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System; using System;
using ICSharpCode.Core;
using ICSharpCode.SharpDevelop.Internal.Templates; using ICSharpCode.SharpDevelop.Internal.Templates;
using ICSharpCode.SharpDevelop.Project; using ICSharpCode.SharpDevelop.Project;
@ -13,7 +14,7 @@ namespace TextTemplating.Tests.Helpers
{ {
var info = new ProjectCreateInformation(); var info = new ProjectCreateInformation();
info.Solution = new Solution(new MockProjectChangeWatcher()); info.Solution = new Solution(new MockProjectChangeWatcher());
info.OutputProjectFileName = @"d:\projects\MyProject\MyProject.csproj"; info.OutputProjectFileName = FileName.Create(@"d:\projects\MyProject\MyProject.csproj");
info.ProjectName = "MyProject"; info.ProjectName = "MyProject";
return new TestableProject(info); return new TestableProject(info);
} }

9
src/AddIns/Misc/TextTemplating/Test/Helpers/TestableProject.cs

@ -2,9 +2,11 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt) // This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System; using System;
using System.CodeDom.Compiler;
using ICSharpCode.SharpDevelop.Dom; using ICSharpCode.SharpDevelop.Dom;
using ICSharpCode.SharpDevelop.Internal.Templates; using ICSharpCode.SharpDevelop.Internal.Templates;
using ICSharpCode.SharpDevelop.Project; using ICSharpCode.SharpDevelop.Project;
using Microsoft.CSharp;
namespace TextTemplating.Tests.Helpers namespace TextTemplating.Tests.Helpers
{ {
@ -33,8 +35,11 @@ namespace TextTemplating.Tests.Helpers
set { rootNamespace = value; } set { rootNamespace = value; }
} }
public override LanguageProperties LanguageProperties { public CodeDomProvider CodeDomProviderToReturn = new CSharpCodeProvider();
get { return LanguageProperties.CSharp; }
public override CodeDomProvider CreateCodeDomProvider()
{
return CodeDomProviderToReturn;
} }
} }
} }

14
src/AddIns/Misc/TextTemplating/Test/Src/CompilerErrorTaskTests.cs

@ -7,12 +7,26 @@ using ICSharpCode.Core;
using ICSharpCode.SharpDevelop; using ICSharpCode.SharpDevelop;
using ICSharpCode.TextTemplating; using ICSharpCode.TextTemplating;
using NUnit.Framework; using NUnit.Framework;
using TextTemplating.Tests.Helpers;
namespace TextTemplating.Tests namespace TextTemplating.Tests
{ {
[TestFixture] [TestFixture]
public class CompilerErrorTaskTests public class CompilerErrorTaskTests
{ {
[SetUp]
public void Init()
{
SD.InitializeForUnitTests();
MessageLoopHelper.InitializeForUnitTests();
}
[TearDown]
public void TearDown()
{
SD.TearDownForUnitTests();
}
[Test] [Test]
public void FileName_CompilerErrorFileNameIsTestTxt_ReturnsTestTxt() public void FileName_CompilerErrorFileNameIsTestTxt_ReturnsTestTxt()
{ {

14
src/AddIns/Misc/TextTemplating/Test/Src/NamespaceHintTests.cs

@ -2,6 +2,7 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt) // This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System; using System;
using ICSharpCode.SharpDevelop;
using ICSharpCode.SharpDevelop.Project; using ICSharpCode.SharpDevelop.Project;
using ICSharpCode.TextTemplating; using ICSharpCode.TextTemplating;
using NUnit.Framework; using NUnit.Framework;
@ -16,6 +17,19 @@ namespace TextTemplating.Tests
IProject project; IProject project;
TestableFileProjectItem templateFile; TestableFileProjectItem templateFile;
[SetUp]
public void Init()
{
SD.InitializeForUnitTests();
MessageLoopHelper.InitializeForUnitTests();
}
[TearDown]
public void TearDown()
{
SD.TearDownForUnitTests();
}
void CreateProjectTemplateFile() void CreateProjectTemplateFile()
{ {
templateFile = new TestableFileProjectItem("MyTemplate.tt"); templateFile = new TestableFileProjectItem("MyTemplate.tt");

18
src/AddIns/Misc/TextTemplating/Test/Src/TextTemplatingAssemblyPathResolverTests.cs

@ -2,6 +2,7 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt) // This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System; using System;
using ICSharpCode.SharpDevelop;
using ICSharpCode.SharpDevelop.Internal.Templates; using ICSharpCode.SharpDevelop.Internal.Templates;
using ICSharpCode.SharpDevelop.Project; using ICSharpCode.SharpDevelop.Project;
using ICSharpCode.TextTemplating; using ICSharpCode.TextTemplating;
@ -18,6 +19,19 @@ namespace TextTemplating.Tests
FakeAssemblyParserService fakeAssemblyParserService; FakeAssemblyParserService fakeAssemblyParserService;
FakeTextTemplatingPathResolver fakePathResolver; FakeTextTemplatingPathResolver fakePathResolver;
[SetUp]
public void Init()
{
SD.InitializeForUnitTests();
MessageLoopHelper.InitializeForUnitTests();
}
[TearDown]
public void TearDown()
{
SD.TearDownForUnitTests();
}
void CreateResolver() void CreateResolver()
{ {
project = ProjectHelper.CreateProject(); project = ProjectHelper.CreateProject();
@ -97,6 +111,7 @@ namespace TextTemplating.Tests
} }
[Test] [Test]
[Ignore("TODO GAC assembly resolving")]
public void ResolvePath_ProjectHasNoReferencesAndAssemblyReferenceInGac_ReturnsFullPathToAssemblyFoundFromAssemblyParserService() public void ResolvePath_ProjectHasNoReferencesAndAssemblyReferenceInGac_ReturnsFullPathToAssemblyFoundFromAssemblyParserService()
{ {
CreateResolver(); CreateResolver();
@ -109,6 +124,7 @@ namespace TextTemplating.Tests
} }
[Test] [Test]
[Ignore("TODO GAC assembly resolving")]
public void ResolvePath_ProjectHasNoReferencesAndAssemblyReferenceInGac_ReferenceItemPassedToAssemblyParserServiceUsesProject() public void ResolvePath_ProjectHasNoReferencesAndAssemblyReferenceInGac_ReferenceItemPassedToAssemblyParserServiceUsesProject()
{ {
CreateResolver(); CreateResolver();
@ -119,6 +135,7 @@ namespace TextTemplating.Tests
} }
[Test] [Test]
[Ignore("TODO GAC assembly resolving")]
public void ResolvePath_ProjectHasNoReferencesAndAssemblyReferenceInGac_ReferenceItemPassedToAssemblyParserServiceIsReference() public void ResolvePath_ProjectHasNoReferencesAndAssemblyReferenceInGac_ReferenceItemPassedToAssemblyParserServiceIsReference()
{ {
CreateResolver(); CreateResolver();
@ -129,6 +146,7 @@ namespace TextTemplating.Tests
} }
[Test] [Test]
[Ignore("TODO GAC assembly resolving")]
public void ResolvePath_ProjectHasNoReferencesAndAssemblyReferenceInGac_ReferenceItemIncludePassedToAssemblyParserServiceIsAssemblyNameToResolvePath() public void ResolvePath_ProjectHasNoReferencesAndAssemblyReferenceInGac_ReferenceItemIncludePassedToAssemblyParserServiceIsAssemblyNameToResolvePath()
{ {
CreateResolver(); CreateResolver();

14
src/AddIns/Misc/TextTemplating/Test/Src/TextTemplatingFileGeneratorCustomToolTests.cs

@ -2,6 +2,7 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt) // This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System; using System;
using ICSharpCode.SharpDevelop;
using ICSharpCode.SharpDevelop.Project; using ICSharpCode.SharpDevelop.Project;
using NUnit.Framework; using NUnit.Framework;
using TextTemplating.Tests.Helpers; using TextTemplating.Tests.Helpers;
@ -13,6 +14,19 @@ namespace TextTemplating.Tests
{ {
TestableTextTemplatingFileGeneratorCustomTool customTool; TestableTextTemplatingFileGeneratorCustomTool customTool;
[SetUp]
public void Init()
{
SD.InitializeForUnitTests();
MessageLoopHelper.InitializeForUnitTests();
}
[TearDown]
public void TearDown()
{
SD.TearDownForUnitTests();
}
void CreateCustomTool() void CreateCustomTool()
{ {
customTool = new TestableTextTemplatingFileGeneratorCustomTool(); customTool = new TestableTextTemplatingFileGeneratorCustomTool();

23
src/AddIns/Misc/TextTemplating/Test/Src/TextTemplatingFileGeneratorTests.cs

@ -19,6 +19,19 @@ namespace TextTemplating.Tests
FakeTextTemplatingHost templatingHost; FakeTextTemplatingHost templatingHost;
FakeTextTemplatingCustomToolContext customToolContext; FakeTextTemplatingCustomToolContext customToolContext;
[SetUp]
public void Init()
{
SD.InitializeForUnitTests();
MessageLoopHelper.InitializeForUnitTests();
}
[TearDown]
public void TearDown()
{
SD.TearDownForUnitTests();
}
TestableFileProjectItem ProcessTemplate(string fileName) TestableFileProjectItem ProcessTemplate(string fileName)
{ {
var projectFile = CreateGenerator(fileName); var projectFile = CreateGenerator(fileName);
@ -98,7 +111,7 @@ namespace TextTemplating.Tests
templatingHost.ErrorsCollection.Add(new CompilerError()); templatingHost.ErrorsCollection.Add(new CompilerError());
generator.ProcessTemplate(); generator.ProcessTemplate();
Task task = customToolContext.FirstTaskAdded; SDTask task = customToolContext.FirstTaskAdded;
Assert.AreEqual(TaskType.Error, task.TaskType); Assert.AreEqual(TaskType.Error, task.TaskType);
} }
@ -112,7 +125,7 @@ namespace TextTemplating.Tests
templatingHost.ErrorsCollection.Add(error); templatingHost.ErrorsCollection.Add(error);
generator.ProcessTemplate(); generator.ProcessTemplate();
Task task = customToolContext.FirstTaskAdded; SDTask task = customToolContext.FirstTaskAdded;
Assert.AreEqual("error text", task.Description); Assert.AreEqual("error text", task.Description);
} }
@ -125,7 +138,7 @@ namespace TextTemplating.Tests
templatingHost.ExceptionToThrowWhenProcessTemplateCalled = ex; templatingHost.ExceptionToThrowWhenProcessTemplateCalled = ex;
generator.ProcessTemplate(); generator.ProcessTemplate();
Task task = customToolContext.FirstTaskAdded; SDTask task = customToolContext.FirstTaskAdded;
Assert.AreEqual("invalid operation error", task.Description); Assert.AreEqual("invalid operation error", task.Description);
} }
@ -138,7 +151,7 @@ namespace TextTemplating.Tests
templatingHost.ExceptionToThrowWhenProcessTemplateCalled = ex; templatingHost.ExceptionToThrowWhenProcessTemplateCalled = ex;
generator.ProcessTemplate(); generator.ProcessTemplate();
Task task = customToolContext.FirstTaskAdded; SDTask task = customToolContext.FirstTaskAdded;
var expectedFileName = new FileName(@"d:\a.tt"); var expectedFileName = new FileName(@"d:\a.tt");
Assert.AreEqual(expectedFileName, task.FileName); Assert.AreEqual(expectedFileName, task.FileName);
@ -208,7 +221,7 @@ namespace TextTemplating.Tests
templatingHost.ExceptionToThrowWhenProcessTemplateCalled = ex; templatingHost.ExceptionToThrowWhenProcessTemplateCalled = ex;
generator.ProcessTemplate(); generator.ProcessTemplate();
Task task = customToolContext.FirstTaskAdded; SDTask task = customToolContext.FirstTaskAdded;
Assert.AreEqual("error", task.Description); Assert.AreEqual("error", task.Description);
} }

14
src/AddIns/Misc/TextTemplating/Test/Src/TextTemplatingFilePreprocessorCustomToolTests.cs

@ -2,6 +2,7 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt) // This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System; using System;
using ICSharpCode.SharpDevelop;
using ICSharpCode.SharpDevelop.Project; using ICSharpCode.SharpDevelop.Project;
using NUnit.Framework; using NUnit.Framework;
using TextTemplating.Tests.Helpers; using TextTemplating.Tests.Helpers;
@ -13,6 +14,19 @@ namespace TextTemplating.Tests
{ {
TestableTextTemplatingFilePreprocessorCustomTool customTool; TestableTextTemplatingFilePreprocessorCustomTool customTool;
[SetUp]
public void Init()
{
SD.InitializeForUnitTests();
MessageLoopHelper.InitializeForUnitTests();
}
[TearDown]
public void TearDown()
{
SD.TearDownForUnitTests();
}
void CreateCustomTool() void CreateCustomTool()
{ {
customTool = new TestableTextTemplatingFilePreprocessorCustomTool(); customTool = new TestableTextTemplatingFilePreprocessorCustomTool();

44
src/AddIns/Misc/TextTemplating/Test/Src/TextTemplatingPreprocessorTests.cs

@ -21,6 +21,19 @@ namespace TextTemplating.Tests
FakeTextTemplatingHost templatingHost; FakeTextTemplatingHost templatingHost;
FakeTextTemplatingCustomToolContext customToolContext; FakeTextTemplatingCustomToolContext customToolContext;
[SetUp]
public void Init()
{
SD.InitializeForUnitTests();
MessageLoopHelper.InitializeForUnitTests();
}
[TearDown]
public void TearDown()
{
SD.TearDownForUnitTests();
}
TestableFileProjectItem PreprocessTemplate(string fileName) TestableFileProjectItem PreprocessTemplate(string fileName)
{ {
var projectFile = CreatePreprocessor(fileName); var projectFile = CreatePreprocessor(fileName);
@ -160,7 +173,7 @@ namespace TextTemplating.Tests
templatingHost.ErrorsCollection.Add(new CompilerError()); templatingHost.ErrorsCollection.Add(new CompilerError());
preprocessor.PreprocessTemplate(); preprocessor.PreprocessTemplate();
Task task = customToolContext.FirstTaskAdded; SDTask task = customToolContext.FirstTaskAdded;
Assert.AreEqual(TaskType.Error, task.TaskType); Assert.AreEqual(TaskType.Error, task.TaskType);
} }
@ -174,7 +187,7 @@ namespace TextTemplating.Tests
templatingHost.ErrorsCollection.Add(error); templatingHost.ErrorsCollection.Add(error);
preprocessor.PreprocessTemplate(); preprocessor.PreprocessTemplate();
Task task = customToolContext.FirstTaskAdded; SDTask task = customToolContext.FirstTaskAdded;
Assert.AreEqual("error text", task.Description); Assert.AreEqual("error text", task.Description);
} }
@ -197,7 +210,7 @@ namespace TextTemplating.Tests
templatingHost.ExceptionToThrowWhenPreprocessTemplateCalled = ex; templatingHost.ExceptionToThrowWhenPreprocessTemplateCalled = ex;
preprocessor.PreprocessTemplate(); preprocessor.PreprocessTemplate();
Task task = customToolContext.FirstTaskAdded; SDTask task = customToolContext.FirstTaskAdded;
Assert.AreEqual("error", task.Description); Assert.AreEqual("error", task.Description);
} }
@ -210,7 +223,7 @@ namespace TextTemplating.Tests
templatingHost.ExceptionToThrowWhenPreprocessTemplateCalled = ex; templatingHost.ExceptionToThrowWhenPreprocessTemplateCalled = ex;
preprocessor.PreprocessTemplate(); preprocessor.PreprocessTemplate();
Task task = customToolContext.FirstTaskAdded; SDTask task = customToolContext.FirstTaskAdded;
var expectedFileName = new FileName(@"d:\a.tt"); var expectedFileName = new FileName(@"d:\a.tt");
Assert.AreEqual(expectedFileName, task.FileName); Assert.AreEqual(expectedFileName, task.FileName);
@ -250,5 +263,28 @@ namespace TextTemplating.Tests
Assert.AreEqual("_class", templatingHost.ClassNamePassedToPreprocessTemplate); Assert.AreEqual("_class", templatingHost.ClassNamePassedToPreprocessTemplate);
} }
[Test]
public void PreprocessTemplate_ProjectHasNoCodeDomProvider_CSharpCodeDomProviderUsedByDefaultAndClassNameChangedToValidClassName()
{
TestableFileProjectItem projectFile = CreatePreprocessor(@"d:\class.tt");
projectFile.TestableProject.CodeDomProviderToReturn = null;
preprocessor.PreprocessTemplate();
Assert.AreEqual("_class", templatingHost.ClassNamePassedToPreprocessTemplate);
}
[Test]
public void PreprocessTemplate_ProjectHasNoCodeDomProvider_WarningTaskAdded()
{
TestableFileProjectItem projectFile = CreatePreprocessor(@"d:\test.tt");
projectFile.TestableProject.CodeDomProviderToReturn = null;
preprocessor.PreprocessTemplate();
SDTask task = customToolContext.FirstTaskAdded;
Assert.AreEqual(TaskType.Warning, task.TaskType);
}
} }
} }

8
src/AddIns/Misc/TextTemplating/Test/Src/TextTemplatingReflectionProjectContentTests.cs

@ -2,21 +2,23 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt) // This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System; using System;
using ICSharpCode.NRefactory.TypeSystem;
using ICSharpCode.TextTemplating; using ICSharpCode.TextTemplating;
using NUnit.Framework; using NUnit.Framework;
namespace TextTemplating.Tests namespace TextTemplating.Tests
{ {
[TestFixture] [TestFixture]
[Ignore("TODO assembly location")]
public class TextTemplatingReflectionProjectContentTests public class TextTemplatingReflectionProjectContentTests
{ {
[Test] [Test]
public void AssemblyLocation_NullProjectContentPassedToConstructor_ReturnsNull() public void AssemblyLocation_NullProjectContentPassedToConstructor_ReturnsNull()
{ {
var projectContent = new TextTemplatingReflectionProjectContent(null); //IProjectContent projectContent = new TextTemplatingReflectionProjectContent(null);
string location = projectContent.AssemblyLocation; //string location = projectContent.AssemblyLocation;
Assert.IsNull(location); //Assert.IsNull(location);
} }
} }
} }

14
src/AddIns/Misc/TextTemplating/Test/TextTemplating.Tests.csproj

@ -7,13 +7,14 @@
<OutputType>Library</OutputType> <OutputType>Library</OutputType>
<RootNamespace>TextTemplating.Tests</RootNamespace> <RootNamespace>TextTemplating.Tests</RootNamespace>
<AssemblyName>TextTemplating.Tests</AssemblyName> <AssemblyName>TextTemplating.Tests</AssemblyName>
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion> <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<AppDesignerFolder>Properties</AppDesignerFolder> <AppDesignerFolder>Properties</AppDesignerFolder>
<AllowUnsafeBlocks>False</AllowUnsafeBlocks> <AllowUnsafeBlocks>False</AllowUnsafeBlocks>
<NoStdLib>False</NoStdLib> <NoStdLib>False</NoStdLib>
<WarningLevel>4</WarningLevel> <WarningLevel>4</WarningLevel>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors> <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<OutputPath>..\..\..\..\..\bin\UnitTests\</OutputPath> <OutputPath>..\..\..\..\..\bin\UnitTests\</OutputPath>
<TargetFrameworkProfile />
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Platform)' == 'x86' "> <PropertyGroup Condition=" '$(Platform)' == 'x86' ">
<PlatformTarget>x86</PlatformTarget> <PlatformTarget>x86</PlatformTarget>
@ -78,6 +79,7 @@
<Compile Include="Helpers\FakeTextTemplatingPathResolver.cs" /> <Compile Include="Helpers\FakeTextTemplatingPathResolver.cs" />
<Compile Include="Helpers\FakeTextTemplatingStringParser.cs" /> <Compile Include="Helpers\FakeTextTemplatingStringParser.cs" />
<Compile Include="Helpers\FakeTextTemplatingVariables.cs" /> <Compile Include="Helpers\FakeTextTemplatingVariables.cs" />
<Compile Include="Helpers\MessageLoopHelper.cs" />
<Compile Include="Helpers\ProjectHelper.cs" /> <Compile Include="Helpers\ProjectHelper.cs" />
<Compile Include="Helpers\TestableFileProjectItem.cs" /> <Compile Include="Helpers\TestableFileProjectItem.cs" />
<Compile Include="Helpers\TestableProject.cs" /> <Compile Include="Helpers\TestableProject.cs" />
@ -110,6 +112,11 @@
<Folder Include="Helpers" /> <Folder Include="Helpers" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ProjectReference Include="..\..\..\..\Libraries\NRefactory\ICSharpCode.NRefactory\ICSharpCode.NRefactory.csproj">
<Project>{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}</Project>
<Name>ICSharpCode.NRefactory</Name>
<Private>False</Private>
</ProjectReference>
<ProjectReference Include="..\..\..\..\Main\Base\Project\ICSharpCode.SharpDevelop.csproj"> <ProjectReference Include="..\..\..\..\Main\Base\Project\ICSharpCode.SharpDevelop.csproj">
<Project>{2748AD25-9C63-4E12-877B-4DCE96FBED54}</Project> <Project>{2748AD25-9C63-4E12-877B-4DCE96FBED54}</Project>
<Name>ICSharpCode.SharpDevelop</Name> <Name>ICSharpCode.SharpDevelop</Name>
@ -118,11 +125,6 @@
<Project>{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}</Project> <Project>{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}</Project>
<Name>ICSharpCode.Core</Name> <Name>ICSharpCode.Core</Name>
</ProjectReference> </ProjectReference>
<ProjectReference Include="..\..\..\..\Main\ICSharpCode.SharpDevelop.Dom\Project\ICSharpCode.SharpDevelop.Dom.csproj">
<Project>{924EE450-603D-49C1-A8E5-4AFAA31CE6F3}</Project>
<Name>ICSharpCode.SharpDevelop.Dom</Name>
<Private>False</Private>
</ProjectReference>
<ProjectReference Include="..\Project\TextTemplating.csproj"> <ProjectReference Include="..\Project\TextTemplating.csproj">
<Project>{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}</Project> <Project>{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}</Project>
<Name>TextTemplating</Name> <Name>TextTemplating</Name>

20
src/AddIns/Misc/TextTemplating/TextTemplating.sln

@ -12,8 +12,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core.Presentati
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core.WinForms", "..\..\..\Main\ICSharpCode.Core.WinForms\ICSharpCode.Core.WinForms.csproj", "{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core.WinForms", "..\..\..\Main\ICSharpCode.Core.WinForms\ICSharpCode.Core.WinForms.csproj", "{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Dom", "..\..\..\Main\ICSharpCode.SharpDevelop.Dom\Project\ICSharpCode.SharpDevelop.Dom.csproj", "{924EE450-603D-49C1-A8E5-4AFAA31CE6F3}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Widgets", "..\..\..\Main\ICSharpCode.SharpDevelop.Widgets\Project\ICSharpCode.SharpDevelop.Widgets.csproj", "{8035765F-D51F-4A0C-A746-2FD100E19419}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Widgets", "..\..\..\Main\ICSharpCode.SharpDevelop.Widgets\Project\ICSharpCode.SharpDevelop.Widgets.csproj", "{8035765F-D51F-4A0C-A746-2FD100E19419}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TextTemplating.Tests", "Test\TextTemplating.Tests.csproj", "{5186325C-DD7F-4246-9BE7-3F384EFBF5A6}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TextTemplating.Tests", "Test\TextTemplating.Tests.csproj", "{5186325C-DD7F-4246-9BE7-3F384EFBF5A6}"
@ -22,6 +20,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop",
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core", "..\..\..\Main\Core\Project\ICSharpCode.Core.csproj", "{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core", "..\..\..\Main\Core\Project\ICSharpCode.Core.csproj", "{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.NRefactory", "..\..\..\Libraries\NRefactory\ICSharpCode.NRefactory\ICSharpCode.NRefactory.csproj", "{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}"
EndProject
Global Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x86 = Debug|x86 Debug|x86 = Debug|x86
@ -66,14 +66,6 @@ Global
{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Release|x86.ActiveCfg = Release|Any CPU {857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Release|x86.ActiveCfg = Release|Any CPU
{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Release|Any CPU.Build.0 = Release|Any CPU {857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Release|Any CPU.Build.0 = Release|Any CPU
{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Release|Any CPU.ActiveCfg = Release|Any CPU {857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}.Release|Any CPU.ActiveCfg = Release|Any CPU
{924EE450-603D-49C1-A8E5-4AFAA31CE6F3}.Debug|x86.Build.0 = Debug|Any CPU
{924EE450-603D-49C1-A8E5-4AFAA31CE6F3}.Debug|x86.ActiveCfg = Debug|Any CPU
{924EE450-603D-49C1-A8E5-4AFAA31CE6F3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{924EE450-603D-49C1-A8E5-4AFAA31CE6F3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{924EE450-603D-49C1-A8E5-4AFAA31CE6F3}.Release|x86.Build.0 = Release|Any CPU
{924EE450-603D-49C1-A8E5-4AFAA31CE6F3}.Release|x86.ActiveCfg = Release|Any CPU
{924EE450-603D-49C1-A8E5-4AFAA31CE6F3}.Release|Any CPU.Build.0 = Release|Any CPU
{924EE450-603D-49C1-A8E5-4AFAA31CE6F3}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8035765F-D51F-4A0C-A746-2FD100E19419}.Debug|x86.Build.0 = Debug|Any CPU {8035765F-D51F-4A0C-A746-2FD100E19419}.Debug|x86.Build.0 = Debug|Any CPU
{8035765F-D51F-4A0C-A746-2FD100E19419}.Debug|x86.ActiveCfg = Debug|Any CPU {8035765F-D51F-4A0C-A746-2FD100E19419}.Debug|x86.ActiveCfg = Debug|Any CPU
{8035765F-D51F-4A0C-A746-2FD100E19419}.Debug|Any CPU.Build.0 = Debug|Any CPU {8035765F-D51F-4A0C-A746-2FD100E19419}.Debug|Any CPU.Build.0 = Debug|Any CPU
@ -110,5 +102,13 @@ Global
{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}.Debug|Any CPU.ActiveCfg = Debug|x86 {B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}.Debug|Any CPU.ActiveCfg = Debug|x86
{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}.Release|Any CPU.Build.0 = Release|x86 {B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}.Release|Any CPU.Build.0 = Release|x86
{B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}.Release|Any CPU.ActiveCfg = Release|x86 {B5D8C3E6-42EC-4D4B-AD05-3644B32563EF}.Release|Any CPU.ActiveCfg = Release|x86
{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}.Debug|x86.Build.0 = Debug|Any CPU
{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}.Debug|x86.ActiveCfg = Debug|Any CPU
{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}.Release|x86.Build.0 = Release|Any CPU
{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}.Release|x86.ActiveCfg = Release|Any CPU
{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}.Release|Any CPU.Build.0 = Release|Any CPU
{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}.Release|Any CPU.ActiveCfg = Release|Any CPU
EndGlobalSection EndGlobalSection
EndGlobal EndGlobal

2
src/Main/SharpDevelop/Editor/TextContentCondition.cs

@ -23,7 +23,7 @@ namespace ICSharpCode.SharpDevelop.Editor
{ {
string textcontent = condition.Properties["textcontent"]; string textcontent = condition.Properties["textcontent"];
var editor = SD.GetActiveViewContentService<ICSharpCode.AvalonEdit.TextEditor>(); var editor = SD.GetActiveViewContentService<ICSharpCode.AvalonEdit.TextEditor>();
if (editor != null) { if (editor != null && editor.SyntaxHighlighting != null) {
return string.Equals(textcontent, editor.SyntaxHighlighting.Name, StringComparison.OrdinalIgnoreCase); return string.Equals(textcontent, editor.SyntaxHighlighting.Name, StringComparison.OrdinalIgnoreCase);
} }
return false; return false;

4
src/Setup/Files.wxs

@ -1556,7 +1556,7 @@
<Component Id="PackageManagementICSharpCodeSharpDevelopDomDll" Guid="70460742-D237-4742-B563-7127376C56CB" DiskId="1"> <Component Id="PackageManagementICSharpCodeSharpDevelopDomDll" Guid="70460742-D237-4742-B563-7127376C56CB" DiskId="1">
<File Id="PackageManagement.ICSharpCode.SharpDevelop.Dom.dll" Name="ICSharpCode.SharpDevelop.Dom.dll" Source="..\..\AddIns\Misc\PackageManagement\ICSharpCode.SharpDevelop.Dom.dll" KeyPath="yes" Assembly=".net" AssemblyApplication="PackageManagement.ICSharpCode.SharpDevelop.Dom.dll" AssemblyManifest="PackageManagement.ICSharpCode.SharpDevelop.Dom.dll" /> <File Id="PackageManagement.ICSharpCode.SharpDevelop.Dom.dll" Name="ICSharpCode.SharpDevelop.Dom.dll" Source="..\..\AddIns\Misc\PackageManagement\ICSharpCode.SharpDevelop.Dom.dll" KeyPath="yes" Assembly=".net" AssemblyApplication="PackageManagement.ICSharpCode.SharpDevelop.Dom.dll" AssemblyManifest="PackageManagement.ICSharpCode.SharpDevelop.Dom.dll" />
</Component> </Component>
</Directory> </Directory>-->
<Directory Id="TextTemplating" Name="TextTemplating"> <Directory Id="TextTemplating" Name="TextTemplating">
<Component Id="MonoTextTemplatingDll" Guid="07BFBED7-FC7B-4CF3-BD00-DCA8E8E7C17B" DiskId="1"> <Component Id="MonoTextTemplatingDll" Guid="07BFBED7-FC7B-4CF3-BD00-DCA8E8E7C17B" DiskId="1">
<File Id="Mono.TextTemplating.dll" Name="Mono.TextTemplating.dll" Source="..\..\AddIns\Misc\TextTemplating\Mono.TextTemplating.dll" KeyPath="yes" Assembly=".net" AssemblyApplication="Mono.TextTemplating.dll" AssemblyManifest="Mono.TextTemplating.dll" /> <File Id="Mono.TextTemplating.dll" Name="Mono.TextTemplating.dll" Source="..\..\AddIns\Misc\TextTemplating\Mono.TextTemplating.dll" KeyPath="yes" Assembly=".net" AssemblyApplication="Mono.TextTemplating.dll" AssemblyManifest="Mono.TextTemplating.dll" />
@ -1575,7 +1575,7 @@
<File Id="VB.TextTemplate.xft" Name="VB.TextTemplate.xft" Source="..\..\AddIns\Misc\TextTemplating\Templates\VB.TextTemplate.xft" KeyPath="yes" /> <File Id="VB.TextTemplate.xft" Name="VB.TextTemplate.xft" Source="..\..\AddIns\Misc\TextTemplating\Templates\VB.TextTemplate.xft" KeyPath="yes" />
</Component> </Component>
</Directory> </Directory>
</Directory>--> </Directory>
</Directory> </Directory>
<Directory Id="VersionControlAddInsFolder" Name="VersionControl"> <Directory Id="VersionControlAddInsFolder" Name="VersionControl">
<Directory Id="SubversionAddInFolder" Name="SubversionAddIn"> <Directory Id="SubversionAddInFolder" Name="SubversionAddIn">

4
src/Setup/Setup.wxs

@ -466,11 +466,11 @@
<ComponentRef Id="JQuery172NuGetPackage"/> <ComponentRef Id="JQuery172NuGetPackage"/>
<ComponentRef Id="Modernizr253NuGetPackage"/> <ComponentRef Id="Modernizr253NuGetPackage"/>
<!--<ComponentRef Id="MonoTextTemplatingDll"/> <ComponentRef Id="MonoTextTemplatingDll"/>
<ComponentRef Id="TextTemplatingAddin"/> <ComponentRef Id="TextTemplatingAddin"/>
<ComponentRef Id="TextTemplatingDll"/> <ComponentRef Id="TextTemplatingDll"/>
<ComponentRef Id="CSharpTextTemplateFileTemplate"/> <ComponentRef Id="CSharpTextTemplateFileTemplate"/>
<ComponentRef Id="VBTextTemplateFileTemplate"/>--> <ComponentRef Id="VBTextTemplateFileTemplate"/>
<!-- <!--
<ComponentRef Id="MachineSpecificationsAddIn"/> <ComponentRef Id="MachineSpecificationsAddIn"/>

Loading…
Cancel
Save