Browse Source

Refactor MvcClass.

pull/18/head
Matt Ward 15 years ago
parent
commit
910e5ba5b9
  1. 1
      src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/IMvcProject.cs
  2. 2
      src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/MvcClass.cs
  3. 5
      src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/MvcProject.cs
  4. 4
      src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/MvcTextTemplateLanguageConverter.cs
  5. 5
      src/AddIns/BackendBindings/AspNet.Mvc/Test/Helpers/FakeMvcProject.cs
  6. 22
      src/AddIns/BackendBindings/AspNet.Mvc/Test/Src/MvcProjectTests.cs

1
src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/IMvcProject.cs

@ -15,6 +15,7 @@ namespace ICSharpCode.AspNet.Mvc @@ -15,6 +15,7 @@ namespace ICSharpCode.AspNet.Mvc
string OutputAssemblyFullPath { get; }
void Save();
bool IsVisualBasic();
MvcTextTemplateLanguage GetTemplateLanguage();
IEnumerable<IMvcClass> GetModelClasses();

2
src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/MvcClass.cs

@ -82,7 +82,7 @@ namespace ICSharpCode.AspNet.Mvc @@ -82,7 +82,7 @@ namespace ICSharpCode.AspNet.Mvc
bool IsVisualBasicClassFromMyNamespace()
{
if (project.GetTemplateLanguage().IsVisualBasic()) {
if (project.IsVisualBasic()) {
return FullName.Contains(".My.");
}
return false;

5
src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/MvcProject.cs

@ -24,6 +24,11 @@ namespace ICSharpCode.AspNet.Mvc @@ -24,6 +24,11 @@ namespace ICSharpCode.AspNet.Mvc
public IProject Project { get; private set; }
public bool IsVisualBasic()
{
return GetTemplateLanguage().IsVisualBasic();
}
public string RootNamespace {
get { return Project.RootNamespace; }
}

4
src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/MvcTextTemplateLanguageConverter.cs

@ -7,13 +7,15 @@ namespace ICSharpCode.AspNet.Mvc @@ -7,13 +7,15 @@ namespace ICSharpCode.AspNet.Mvc
{
public static class MvcTextTemplateLanguageConverter
{
public static readonly string VisualBasicProjectLanguage = "VBNet";
/// <summary>
/// Converts from an IProject.Language string to an MvcTemplateLanguage. Only C# and VB.NET languages
/// are supported.
/// </summary>
public static MvcTextTemplateLanguage Convert(string language)
{
if (language == "VBNet") {
if (language == VisualBasicProjectLanguage) {
return MvcTextTemplateLanguage.VisualBasic;
}
return MvcTextTemplateLanguage.CSharp;

5
src/AddIns/BackendBindings/AspNet.Mvc/Test/Helpers/FakeMvcProject.cs

@ -38,6 +38,11 @@ namespace AspNet.Mvc.Tests.Helpers @@ -38,6 +38,11 @@ namespace AspNet.Mvc.Tests.Helpers
TemplateLanguageToReturnFromGetTemplateLanguage = MvcTextTemplateLanguage.VisualBasic;
}
public bool IsVisualBasic()
{
return TemplateLanguageToReturnFromGetTemplateLanguage == MvcTextTemplateLanguage.VisualBasic;
}
public MvcTextTemplateLanguage GetTemplateLanguage()
{
return TemplateLanguageToReturnFromGetTemplateLanguage;

22
src/AddIns/BackendBindings/AspNet.Mvc/Test/Src/MvcProjectTests.cs

@ -268,5 +268,27 @@ namespace AspNet.Mvc.Tests @@ -268,5 +268,27 @@ namespace AspNet.Mvc.Tests
Assert.AreEqual(expectedAssemblyPath, assemblyPath);
}
[Test]
public void IsVisualBasic_ProjectIsVisualBasic_ReturnsTrue()
{
CreateProject();
testableProject.SetLanguage(MvcTextTemplateLanguageConverter.VisualBasicProjectLanguage);
bool result = project.IsVisualBasic();
Assert.IsTrue(result);
}
[Test]
public void IsVisualBasic_ProjectIsCSharp_ReturnsFalse()
{
CreateProject();
testableProject.SetLanguage("C#");
bool result = project.IsVisualBasic();
Assert.IsFalse(result);
}
}
}

Loading…
Cancel
Save