Browse Source

Move method signature creation to test helper.

Generating the method signature for open cover method elements in unit tests now moved to helper class.
pull/17/merge
Matt Ward 13 years ago
parent
commit
874e303fe4
  1. 12
      src/AddIns/Analysis/CodeCoverage/Test/Coverage/CodeCoveragePropertyCollectionWithGetterAndSetterTestFixture.cs
  2. 12
      src/AddIns/Analysis/CodeCoverage/Test/Coverage/CodeCoveragePropertyTestFixture.cs
  3. 12
      src/AddIns/Analysis/CodeCoverage/Test/Gui/PropertiesInCodeCoverageTreeView.cs
  4. 34
      src/AddIns/Analysis/CodeCoverage/Test/Utils/CodeCoverageMethodXElementBuilder.cs

12
src/AddIns/Analysis/CodeCoverage/Test/Coverage/CodeCoveragePropertyCollectionWithGetterAndSetterTestFixture.cs

@ -23,23 +23,23 @@ namespace ICSharpCode.CodeCoverage.Tests.Coverage @@ -23,23 +23,23 @@ namespace ICSharpCode.CodeCoverage.Tests.Coverage
CodeCoverageMethod setterMethod;
CodeCoverageProperty property;
XElement CreateSetterMethod(string methodSignature)
XElement CreatePropertySetter(string className, string propertyName)
{
return CodeCoverageMethodXElementBuilder.CreateSetterMethod(methodSignature);
return CodeCoverageMethodXElementBuilder.CreatePropertySetter(className, propertyName, "System.Int32");
}
XElement CreateGetterMethod(string methodSignature)
XElement CreatePropertyGetter(string className, string propertyName)
{
return CodeCoverageMethodXElementBuilder.CreateGetterMethod(methodSignature);
return CodeCoverageMethodXElementBuilder.CreatePropertyGetter(className, propertyName, "System.Int32");
}
[TestFixtureSetUp]
public void SetUpFixture()
{
properties = new CodeCoveragePropertyCollection();
XElement getterElement = CreateGetterMethod("System.Int32 MyTests::get_Count()");
XElement getterElement = CreatePropertyGetter("MyTests", "Count");
getterMethod = new CodeCoverageMethod("MyTests", getterElement);
XElement setterElement = CreateSetterMethod("System.Void MyTests::set_Count(System.Int32)");
XElement setterElement = CreatePropertySetter("MyTests", "Count");
setterMethod = new CodeCoverageMethod("MyTests", setterElement);
properties.Add(getterMethod);

12
src/AddIns/Analysis/CodeCoverage/Test/Coverage/CodeCoveragePropertyTestFixture.cs

@ -20,20 +20,20 @@ namespace ICSharpCode.CodeCoverage.Tests.Coverage @@ -20,20 +20,20 @@ namespace ICSharpCode.CodeCoverage.Tests.Coverage
[SetUp]
public void Init()
{
XElement getterElement = CreateGetterElement("System.Int32 MyTest::get_Count()");
XElement getterElement = CreateGetterElement("MyTest", "Count");
getter = new CodeCoverageMethod("MyTest", getterElement);
XElement setterElement = CreateSetterElement("System.Void MyTest::set_Count(System.Int32)");
XElement setterElement = CreateSetterElement("MyTest", "Count");
setter = new CodeCoverageMethod("MyTest", setterElement);
}
XElement CreateGetterElement(string methodSignature)
XElement CreateGetterElement(string className, string propertyName)
{
return CodeCoverageMethodXElementBuilder.CreateGetterMethod(methodSignature);
return CodeCoverageMethodXElementBuilder.CreateIntegerPropertyGetter(className, propertyName);
}
XElement CreateSetterElement(string methodSignature)
XElement CreateSetterElement(string className, string propertyName)
{
return CodeCoverageMethodXElementBuilder.CreateSetterMethod(methodSignature);
return CodeCoverageMethodXElementBuilder.CreateIntegerPropertySetter(className, propertyName);
}
[Test]

12
src/AddIns/Analysis/CodeCoverage/Test/Gui/PropertiesInCodeCoverageTreeView.cs

@ -30,14 +30,14 @@ namespace ICSharpCode.CodeCoverage.Tests.Gui @@ -30,14 +30,14 @@ namespace ICSharpCode.CodeCoverage.Tests.Gui
CodeCoverageMethod fooGetterMethod;
CodeCoverageMethod fooSetterMethod;
XElement CreateSetterMethod(string methodSignature)
XElement CreateSetterElement(string className, string propertyName)
{
return CodeCoverageMethodXElementBuilder.CreateSetterMethod(methodSignature);
return CodeCoverageMethodXElementBuilder.CreateIntegerPropertySetter(className, propertyName);
}
XElement CreateGetterMethod(string methodSignature)
XElement CreateGetterElement(string className, string propertyName)
{
return CodeCoverageMethodXElementBuilder.CreateGetterMethod(methodSignature);
return CodeCoverageMethodXElementBuilder.CreateIntegerPropertyGetter(className, propertyName);
}
[TestFixtureSetUp]
@ -46,12 +46,12 @@ namespace ICSharpCode.CodeCoverage.Tests.Gui @@ -46,12 +46,12 @@ namespace ICSharpCode.CodeCoverage.Tests.Gui
List<CodeCoverageModule> modules = new List<CodeCoverageModule>();
CodeCoverageModule fooModule = new CodeCoverageModule("Tests");
XElement setterMethod = CreateSetterMethod("System.Void Tests.FooTest::set_Count(System.Int32)");
XElement setterMethod = CreateSetterElement("Tests.FooTest", "Count");
fooSetterMethod = new CodeCoverageMethod("Tests.FooTest", setterMethod);
fooSetterMethod.SequencePoints.Add(new CodeCoverageSequencePoint("c:\\Projects\\Foo\\FooTest.cs", 1, 2, 2, 3, 4, 2));
fooSetterMethod.SequencePoints.Add(new CodeCoverageSequencePoint("c:\\Projects\\Foo\\FooTest.cs", 0, 3, 4, 4, 4, 1));
XElement getterMethod = CreateGetterMethod("System.Int32 Tests.FooTest::get_Count()");
XElement getterMethod = CreateGetterElement("Tests.FooTest", "Count");
fooGetterMethod = new CodeCoverageMethod("Tests.FooTest", getterMethod);
fooGetterMethod.SequencePoints.Add(new CodeCoverageSequencePoint("c:\\Projects\\Foo\\FooTest.cs", 1, 1, 0, 2, 1, 1));

34
src/AddIns/Analysis/CodeCoverage/Test/Utils/CodeCoverageMethodXElementBuilder.cs

@ -44,7 +44,7 @@ namespace ICSharpCode.CodeCoverage.Tests.Utils @@ -44,7 +44,7 @@ namespace ICSharpCode.CodeCoverage.Tests.Utils
SetBooleanAttribute("isSetter", value);
}
public static XElement CreateSetterMethod(string methodSignature)
public static XElement CreatePropertySetterWithMethodSignature(string methodSignature)
{
var builder = new CodeCoverageMethodXElementBuilder(methodSignature);
builder.SetSetterAttribute(true);
@ -52,12 +52,42 @@ namespace ICSharpCode.CodeCoverage.Tests.Utils @@ -52,12 +52,42 @@ namespace ICSharpCode.CodeCoverage.Tests.Utils
return builder.MethodElement;
}
public static XElement CreateGetterMethod(string methodSignature)
public static XElement CreatePropertyGetterWithMethodSignature(string methodSignature)
{
var builder = new CodeCoverageMethodXElementBuilder(methodSignature);
builder.SetSetterAttribute(false);
builder.SetGetterAttribute(true);
return builder.MethodElement;
}
/// <summary>
/// Generates a setter method signature from the property name and type
/// (e.g. "System.Void set_PROPERTYNAME(PROPERTYTYPE)"
/// </summary>
public static XElement CreatePropertySetter(string className, string propertyName, string propertyType)
{
string methodSignature = String.Format("System.Void {0}::set_{1}({2})", className, propertyName, propertyType);
return CreatePropertySetterWithMethodSignature(methodSignature);
}
public static XElement CreateIntegerPropertySetter(string className, string propertyName)
{
return CreatePropertySetter(className, propertyName, "System.Int32");
}
/// <summary>
/// Generates a getter method signature from the property name and type
/// (e.g. "PROPERTYTYPE get_PROPERTYNAME()"
/// </summary>
public static XElement CreatePropertyGetter(string className, string propertyName, string propertyType)
{
string methodSignature = String.Format("{0} {1}::get_{2}()", propertyType, className, propertyName);
return CreatePropertyGetterWithMethodSignature(methodSignature);
}
public static XElement CreateIntegerPropertyGetter(string className, string propertyName)
{
return CreatePropertyGetter(className, propertyName, "System.Int32");
}
}
}

Loading…
Cancel
Save