Author: sisbell
Date: Fri Feb 23 14:54:03 2007
New Revision: 511157

URL: http://svn.apache.org/viewvc?view=rev&rev=511157
Log:
Handles generating Solution files and project files. API more flexible. Still 
contains some hard-coded values.

Added:
    
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectGenerator.cs
    
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectReference.cs
    
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectRepository.cs
    
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectGeneratorImpl.cs
    
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectReferenceImpl.cs
    
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectRepositoryImpl.cs
    
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/test/csharp/Core/
    
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/test/csharp/Core/Impl/
    
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/test/csharp/Core/Impl/NMavenContextImplTest.cs
Removed:
    
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/NMavenContextImpl.cs
    
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/NMavenContext.cs

Added: 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectGenerator.cs
URL: 
http://svn.apache.org/viewvc/incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectGenerator.cs?view=auto&rev=511157
==============================================================================
--- 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectGenerator.cs
 (added)
+++ 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectGenerator.cs
 Fri Feb 23 14:54:03 2007
@@ -0,0 +1,24 @@
+using System;
+using System.IO;
+using System.Collections.Generic;
+using NMaven.Model;
+
+namespace NMaven.Core
+{
+       /// <summary>
+       /// Description of Interface1.
+       /// </summary>
+       public interface IProjectGenerator
+       {
+               
+               IProjectReference generateProjectFor(NMaven.Model.Model model, 
+                                           DirectoryInfo sourceFileDirectory,
+                                           string projectFileName,
+                                           List<IProjectReference> 
projectReferences);
+               
+               void generateSolutionFor(List<IProjectReference> 
projectReferences);
+               
+               NMaven.Model.Model createPomModelFor(string fileName);
+               
+       }
+}

Added: 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectReference.cs
URL: 
http://svn.apache.org/viewvc/incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectReference.cs?view=auto&rev=511157
==============================================================================
--- 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectReference.cs
 (added)
+++ 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectReference.cs
 Fri Feb 23 14:54:03 2007
@@ -0,0 +1,30 @@
+
+using System;
+using System.IO;
+
+namespace NMaven.Core
+{
+       /// <summary>
+       /// Description of IProjectReference.
+       /// </summary>
+       public interface IProjectReference
+       {
+               FileInfo CsProjFile
+               {
+                       get;
+                       set;
+               }
+               
+               string ProjectName
+               {
+                       get;
+                       set;
+               }
+               
+               Guid ProjectGuid
+               {
+                       get;
+                       set;
+               }
+       }
+}

Added: 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectRepository.cs
URL: 
http://svn.apache.org/viewvc/incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectRepository.cs?view=auto&rev=511157
==============================================================================
--- 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectRepository.cs
 (added)
+++ 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/IProjectRepository.cs
 Fri Feb 23 14:54:03 2007
@@ -0,0 +1,17 @@
+
+using System;
+using System.Collections.Generic;
+
+namespace NMaven.Core
+{
+       /// <summary>
+       /// Description of IProjectRepositorycs.
+       /// </summary>
+       public interface IProjectRepository
+       {
+               List<IProjectObjectModel> 
getProjectObjectModelsFor(NMaven.Model.Model rootPom);
+               
+               void init(IProjectGenerator projectGenerator);
+               
+       }
+}

Added: 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectGeneratorImpl.cs
URL: 
http://svn.apache.org/viewvc/incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectGeneratorImpl.cs?view=auto&rev=511157
==============================================================================
--- 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectGeneratorImpl.cs
 (added)
+++ 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectGeneratorImpl.cs
 Fri Feb 23 14:54:03 2007
@@ -0,0 +1,273 @@
+using System;
+using NMaven.Core;
+using NMaven.Model;
+using System.IO;
+using Microsoft.Build.BuildEngine;
+using System.Xml.Serialization;
+using System.Collections.Generic;
+using System.Reflection;
+using System.Text;
+
+namespace NMaven.Core.Impl
+{
+       /// <summary>
+       /// Description of ProjectGeneratorImpl.
+       /// </summary>
+       public class ProjectGeneratorImpl : IProjectGenerator
+       {
+               
+               public ProjectGeneratorImpl()
+               {
+               }
+               
+           public IProjectReference generateProjectFor(NMaven.Model.Model 
model, 
+                                                 DirectoryInfo 
sourceFileDirectory,
+                                                 string projectFileName,
+                                                 List<IProjectReference> 
projectReferences)
+           {           
+                       Guid projectGuid = Guid.NewGuid();
+                       
+                       if(projectReferences == null) projectReferences = new 
List<IProjectReference>();
+                       Project project = getProjectFromPomModel(model, 
sourceFileDirectory, projectFileName, projectGuid, 
+                                                                
@"..\..\..\target\bin\Debug\", projectReferences);
+                       FileInfo fileInfo = new 
FileInfo(sourceFileDirectory.FullName + @"\" + projectFileName + ".csproj");
+                   project.Save(fileInfo.FullName);    
+                   
+                   IProjectReference projectReference = new 
ProjectReferenceImpl();
+                   projectReference.CsProjFile = fileInfo;
+                   projectReference.ProjectGuid = projectGuid;
+                   projectReference.ProjectName = projectFileName;
+                       return projectReference;                
+           }
+               
+               public void generateSolutionFor(List<IProjectReference> 
projectReferences)
+               {
+                       TextWriter writer = 
+                               new StreamWriter(@"C:\Documents and 
Settings\shane\nmaven-apache\SI_IDE\assemblies\test.sln", false, 
System.Text.Encoding.UTF8);
+                       writer.WriteLine("");
+                       writer.WriteLine("Microsoft Visual Studio Solution 
File, Format Version 9.00");
+                       writer.WriteLine("# Visual Studio 2005");
+                       writer.WriteLine("# SharpDevelop 2.1.0.2376");
+
+                       Guid solutionGuid = Guid.NewGuid();
+                       foreach(IProjectReference projectReference in 
projectReferences) 
+                       {
+                               writer.Write("Project(\"{");
+                               
writer.Write("FAE04EC0-301F-11D3-BF4B-00C04F79EFBC");
+                               writer.Write("}\") = \"");
+                               writer.Write(projectReference.ProjectName);
+                               writer.Write("\", \"");
+                               
writer.Write(projectReference.CsProjFile.FullName);
+                               writer.Write("\", \"{");
+                               
writer.Write(projectReference.ProjectGuid.ToString());
+                               writer.WriteLine("}\"");
+                               writer.WriteLine("EndProject");
+                               
+                       }
+                       writer.Flush();
+                       writer.Close();
+               }
+                                       
+               public NMaven.Model.Model createPomModelFor(string fileName)
+               {
+                       TextReader reader = new StreamReader(fileName);
+                   XmlSerializer serializer = new 
XmlSerializer(typeof(NMaven.Model.Model));
+                       return (NMaven.Model.Model) 
serializer.Deserialize(reader);     
+               }
+               
+               private Project createProjectFor(string fileName) 
+               {
+            Engine engine = new 
Engine(@"C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727");
+            Project project = new Project(engine);
+            project.Load(@fileName);
+            return project;
+               }
+               
+
+               private Project getProjectFromPomModel(NMaven.Model.Model 
model, 
+                                                      DirectoryInfo 
sourceFileDirectory,
+                                                      string assemblyName,
+                                                      Guid projectGuid,
+                                                      string 
assemblyOutputPath,
+                                                      List<IProjectReference> 
projectReferences)
+               {
+            Engine engine = new 
Engine(@"C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727");
+            Project project = new Project(engine);
+            
+            
+            //Main Properties
+            BuildPropertyGroup groupProject = 
project.AddNewPropertyGroup(false);
+            groupProject.AddNewProperty("ProjectGuid", "{" + 
projectGuid.ToString() + "}");
+            BuildProperty buildProperty = 
groupProject.AddNewProperty("Configuration", "Debug");
+            buildProperty.Condition = " '$(Configuration)' == '' ";
+            groupProject.AddNewProperty("RootNameSpace", model.groupId);
+            groupProject.AddNewProperty("AssemblyName", assemblyName);
+            groupProject.AddNewProperty("OutputType", 
getOutputType(model.packaging));
+            
+            //Debug Properties
+            groupProject = project.AddNewPropertyGroup(false);
+            buildProperty.Condition = " '$(Configuration)' == '' ";
+            groupProject.AddNewProperty( "OutputPath", assemblyOutputPath, 
false);
+            
+            
project.AddNewImport(@"$(MSBuildBinPath)\Microsoft.CSharp.Targets", null);
+
+            addProjectDependencies(project, model, sourceFileDirectory);
+            addFoldersToProject(project, null, sourceFileDirectory, 
sourceFileDirectory);
+            addClassFilesToProject(project, null, sourceFileDirectory, 
sourceFileDirectory);
+            addProjectReferences(project, assemblyName, projectReferences);
+                       return project;
+                       
+               }
+               
+               private void addProjectReferences(Project project, string 
projectName, List<IProjectReference> projectReferences)
+               {
+                       BuildItemGroup itemGroup = project.AddNewItemGroup();
+                       foreach(IProjectReference projectReference in 
projectReferences)
+                       {
+                               BuildItem buildItem = 
itemGroup.AddNewItem("ProjectReference", projectReference.CsProjFile.FullName);
+                               buildItem.SetMetadata("Project", "{" + 
projectReference.ProjectGuid.ToString() + "}");
+                               buildItem.SetMetadata("Name", projectName);     
        
+                       }
+               }
+                               
+               private void addFoldersToProject(Project project, 
BuildItemGroup folderGroup, DirectoryInfo rootDirectory, DirectoryInfo 
sourceFileDirectory) 
+               {
+            DirectoryInfo[] directoryInfos = rootDirectory.GetDirectories();
+            if(directoryInfos != null && directoryInfos.Length > 0)
+            {                  
+               if(folderGroup == null) folderGroup = project.AddNewItemGroup();
+               
+               foreach(DirectoryInfo di in directoryInfos) 
+               {
+                       if(di.FullName.Contains(".svn") || 
di.FullName.Contains(@"obj") || di.FullName.Contains(@"bin"))
+                                       continue;   
+                       folderGroup.AddNewItem("Folder", 
di.FullName.Substring(sourceFileDirectory.FullName.Length));
+                       addFoldersToProject(project, folderGroup, di, 
sourceFileDirectory);
+               }               
+            }                  
+               }
+               
+               private void addClassFilesToProject(Project project, 
BuildItemGroup compileGroup, DirectoryInfo rootDirectory, DirectoryInfo 
sourceFileDirectory) 
+               {
+               DirectoryInfo[] directoryInfos = rootDirectory.GetDirectories();
+            if(directoryInfos != null && directoryInfos.Length > 0)
+            {
+               if(compileGroup == null) compileGroup = 
project.AddNewItemGroup();
+               
+               foreach(DirectoryInfo di in directoryInfos) 
+               {  
+                       if(di.FullName.Contains(".svn") || 
di.FullName.Contains("obj") || di.FullName.Contains("bin"))
+                                       continue;                               
+                       foreach(FileInfo fileInfo in di.GetFiles()) 
+                       {
+                               BuildItem buildItem = 
+                                       compileGroup.AddNewItem("Compile", 
+                                                               
fileInfo.FullName.Substring(sourceFileDirectory.FullName.Length));
+                               //buildItem.SetMetadata("Link", 
fileInfo.FullName.Substring(sourcedir.FullName.Length + 1));
+                       }                       
+                       addClassFilesToProject(project, compileGroup, di, 
sourceFileDirectory);
+               }               
+            }                          
+               }
+               
+               private void addProjectDependencies(Project project, 
NMaven.Model.Model model, DirectoryInfo sourceFileDirectory) 
+               {
+                       
+                       BuildItemGroup group = project.AddNewItemGroup();
+                       group.AddNewItem("Reference", "System.Xml");
+                       
+                       foreach(Dependency dependency in model.dependencies) {
+                               String repoPath = 
Environment.GetEnvironmentVariable("HOMEDRIVE") 
+                                   + 
Environment.GetEnvironmentVariable("HOMEPATH") 
+                                       + @"\.m2\repository\" + 
dependency.groupId.Replace(".", "\\")
+                                       + "\\" + dependency.artifactId + "\\" + 
dependency.version + "\\" + dependency.artifactId + ".dll";
+                               BuildItem buildItem = 
group.AddNewItem("Reference", dependency.artifactId);
+                               if(!dependency.GetType().Equals("gac")) 
buildItem.SetMetadata("HintPath", repoPath, false);
+                       }
+                       
+               DirectoryInfo[] directoryInfos = 
sourceFileDirectory.GetDirectories();
+            
+            ClassParser classParser = new ClassParser();
+            List<FileInfo> fileInfos = new List<FileInfo>();
+            addFileInfosFromSourceDirectories(sourceFileDirectory, fileInfos);
+            List<string> dependencies = classParser.getDependencies(fileInfos);
+            foreach(string dependency in dependencies)
+            {
+               try {
+                       DirectoryInfo fileInfo = new 
DirectoryInfo(@"C:\WINDOWS\assembly\GAC_MSIL\" + dependency);
+                       if(fileInfo.Exists) {
+                               group.AddNewItem("Reference", dependency);      
+                       } else 
+                               Console.WriteLine("FNE: " + fileInfo.FullName);
+               }
+               catch(Exception e) 
+               {
+                       Console.WriteLine(e.Message);
+               }
+               
+            }
+               }
+               
+               
+               private void addFileInfosFromSourceDirectories(DirectoryInfo 
sourceFileDirectory, List<FileInfo> fileInfos ) 
+               {
+            DirectoryInfo[] directoryInfos = 
sourceFileDirectory.GetDirectories();
+            if(directoryInfos != null && directoryInfos.Length > 0)
+            {          
+               foreach(DirectoryInfo di in directoryInfos) 
+               {  
+                       if(di.FullName.Contains(".svn") || 
di.FullName.Contains("obj") || di.FullName.Contains("bin"))
+                               continue;
+                       fileInfos.AddRange(di.GetFiles());
+                       addFileInfosFromSourceDirectories(di, fileInfos);
+               }               
+            }
+               }
+               
+               private string getOutputType(String type)
+               {
+                       if (type.Equals("library")) return "Library";
+                       else if (type.Equals("exe")) return "Exe";
+                       else if (type.Equals("winexe")) return "WinExe";
+                       return null;
+               }               
+               
+               private class ClassParser {
+                       
+                       public List<string> getDependencies(List<FileInfo> 
fileInfos) 
+                       {
+                               List<string> dependencies = new List<string>();
+                               foreach(FileInfo fileInfo in fileInfos) 
+                               {
+                                       try 
+                               {
+                                   using (StreamReader sr = new 
StreamReader(fileInfo.FullName)) 
+                                   {
+                                       String line;
+                                       while ((line = sr.ReadLine()) != null) 
+                                       {
+                                               if 
(line.StartsWith("namespace")) break;
+                                               if (line.StartsWith("//")) 
continue;
+                                               if (line.StartsWith("using")) {
+                                                       string[] tokens = 
line.Remove(line.Length - 1).Split(new char[1]{' '});
+                                                       
if(!dependencies.Contains(tokens[1]))
+                                                       {
+                                                               
dependencies.Add(tokens[1]);
+                                                       }                       
                                
+                                               }
+                                       }
+                                   }
+                               }
+                               catch (Exception e) 
+                               {
+                                   Console.WriteLine(e.Message);
+                               }
+
+                               }
+                               
+                               return dependencies;
+                       }
+               
+               }               
+       }
+}

Added: 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectReferenceImpl.cs
URL: 
http://svn.apache.org/viewvc/incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectReferenceImpl.cs?view=auto&rev=511157
==============================================================================
--- 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectReferenceImpl.cs
 (added)
+++ 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectReferenceImpl.cs
 Fri Feb 23 14:54:03 2007
@@ -0,0 +1,61 @@
+using System;
+using System.IO;
+
+namespace NMaven.Core.Impl
+{
+       /// <summary>
+       /// Description of ProjectReferenceImpl.
+       /// </summary>
+       public class ProjectReferenceImpl : IProjectReference
+       {
+               
+               private FileInfo csProjFile;
+               
+               private string projectName;
+               
+               private Guid projectGuid;
+               
+               public ProjectReferenceImpl()
+               {
+               }
+               
+               public FileInfo CsProjFile
+               {
+                       get
+                       {
+                               return csProjFile;      
+                       }
+                       
+                       set
+                       {
+                               csProjFile = value;     
+                       }
+               }
+               
+               public string ProjectName
+               {
+                       get
+                       {
+                               return projectName;
+                       }
+                       
+                       set
+                       {
+                               projectName = value;
+                       }
+               }
+               
+               public Guid ProjectGuid
+               {
+                       get
+                       {
+                               return projectGuid;
+                       }
+                       
+                       set
+                       {
+                               projectGuid = value;
+                       }
+               }
+       }
+}

Added: 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectRepositoryImpl.cs
URL: 
http://svn.apache.org/viewvc/incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectRepositoryImpl.cs?view=auto&rev=511157
==============================================================================
--- 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectRepositoryImpl.cs
 (added)
+++ 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/main/csharp/Core/Impl/ProjectRepositoryImpl.cs
 Fri Feb 23 14:54:03 2007
@@ -0,0 +1,60 @@
+using System;
+using NMaven.Core;
+using NMaven.Model;
+using System.IO;
+using Microsoft.Build.BuildEngine;
+using System.Xml.Serialization;
+using System.Collections.Generic;
+using System.Reflection;
+
+namespace NMaven.Core.Impl
+{
+       /// <summary>
+       /// Description of ProjectRepositoryImpl.
+       /// </summary>
+       public class ProjectRepositoryImpl : IProjectRepository
+       {
+               
+               private IProjectGenerator projectGenerator;
+               
+               private string basedir = @"C:\Documents and 
Settings\shane\nmaven-apache\SI_IDE\assemblies";
+               
+               public ProjectRepositoryImpl()
+               {
+               }
+               
+               public List<IProjectObjectModel> 
getProjectObjectModelsFor(NMaven.Model.Model rootPom) 
+               {       
+                       List<IProjectObjectModel> projectObjectModels = new 
List<IProjectObjectModel>();
+                       if(rootPom.packaging.Equals("pom"))
+                       {
+                               foreach(String module in rootPom.modules)
+                               {
+                                       NMaven.Model.Model model = 
createPomModelFor(basedir + @"\" + module + @"\pom.xml");
+                               }                                               
+                       } 
+                       else
+                       {
+                               Dependency[] dependencies = 
rootPom.dependencies;
+                               foreach(Dependency dependency in dependencies)
+                               {
+                                       
+                               }
+                       }
+                       return projectObjectModels;
+               
+               }
+               
+               public void init(IProjectGenerator projectGenerator)
+               {
+                       this.projectGenerator = projectGenerator;       
+               }
+               
+               private NMaven.Model.Model createPomModelFor(string fileName)
+               {
+                       TextReader reader = new StreamReader(fileName);
+                   XmlSerializer serializer = new 
XmlSerializer(typeof(NMaven.Model.Model));
+                       return (NMaven.Model.Model) 
serializer.Deserialize(reader);     
+               }
+       }
+}

Added: 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/test/csharp/Core/Impl/NMavenContextImplTest.cs
URL: 
http://svn.apache.org/viewvc/incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/test/csharp/Core/Impl/NMavenContextImplTest.cs?view=auto&rev=511157
==============================================================================
--- 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/test/csharp/Core/Impl/NMavenContextImplTest.cs
 (added)
+++ 
incubator/nmaven/branches/SI_IDE/assemblies/NMaven.Core/src/test/csharp/Core/Impl/NMavenContextImplTest.cs
 Fri Feb 23 14:54:03 2007
@@ -0,0 +1,46 @@
+using NUnit.Framework;
+using System;
+using System.IO;
+using NMaven.Core.Impl;
+using NMaven.Model;
+using Microsoft.Build.BuildEngine;
+using System.Collections;
+using System.Collections.Generic;
+
+namespace NMaven.Core.Impl
+{
+ [TestFixture]
+ public class TestNMavenContextImplTest
+ {
+ [Test]
+        public void TestMethod()
+        {
+               IProjectGenerator projectGenerator = new ProjectGeneratorImpl();
+               
+               NMaven.Model.Model model = 
projectGenerator.createPomModelFor(@"..\..\..\pom.xml");
+               Console.WriteLine(model.artifactId);
+               
+               IProjectReference projectReference = 
+                       projectGenerator.generateProjectFor(model,
+                                                   new 
DirectoryInfo(@"C:\Documents and 
Settings\shane\nmaven-apache\SI_IDE\assemblies\NMaven.Core\src\main\csharp\"), 
+                                                   model.artifactId + "T1", 
null);
+               List<IProjectReference> projectReferences = new 
List<IProjectReference>();
+               projectReferences.Add(projectReference);
+           
+               IProjectReference testReference = 
projectGenerator.generateProjectFor(model,
+                                                   new 
DirectoryInfo(@"C:\Documents and 
Settings\shane\nmaven-apache\SI_IDE\assemblies\NMaven.Core\src\test\csharp\"), 
+                                                   model.artifactId + 
"-Test1", projectReferences);
+               projectReferences.Add(testReference);
+               
+               
+               projectGenerator.generateSolutionFor(projectReferences);
+       
+       }
+        
+ [Test]
+ public void TestA()
+ {
+
+ }
+}
+}


Reply via email to