Browse Source

Additional override completion unit tests.

newNRvisualizers
Daniel Grunwald 13 years ago
parent
commit
4e1b21f6d4
  1. 44
      src/AddIns/BackendBindings/CSharpBinding/Tests/OverrideCompletionTests.cs

44
src/AddIns/BackendBindings/CSharpBinding/Tests/OverrideCompletionTests.cs

@ -33,9 +33,10 @@ class BaseClass { @@ -33,9 +33,10 @@ class BaseClass {
public virtual event EventHandler VirtualEvent;
public event EventHandler NormalEvent;
public abstract int AbstractProperty { get; set; }
public abstract int ReadOnlyAbstractProperty { get; }
public virtual int VirtualProperty { get; set; }
public int NormalProperty { get; set; }
public virtual int ProtectedWriteProperty { get; protected set; }
}
class DerivedClass : BaseClass {
";
@ -84,9 +85,9 @@ class DerivedClass : BaseClass { @@ -84,9 +85,9 @@ class DerivedClass : BaseClass {
var itemNames = textEditor.LastCompletionItemList.Items.Select(i=>i.Text).ToArray();
Assert.AreEqual(
new string[] {
"AbstractEvent", "AbstractMethod()", "AbstractProperty",
"AbstractEvent", "AbstractMethod()", "ReadOnlyAbstractProperty",
"Equals(object obj)", "GetHashCode()", "ToString()",
"VirtualEvent", "VirtualMethod()", "VirtualProperty"
"VirtualEvent", "VirtualMethod()", "VirtualProperty", "ProtectedWriteProperty"
}, itemNames);
}
@ -133,6 +134,24 @@ class DerivedClass : BaseClass { @@ -133,6 +134,24 @@ class DerivedClass : BaseClass {
);
}
[Test]
[Ignore("Implement formatter")]
public void OverrideReadOnlyAbstractProperty()
{
CompletionContext context = new CompletionContext();
context.Editor = textEditor;
context.StartOffset = textEditor.Caret.Offset;
context.EndOffset = textEditor.Caret.Offset;
ICompletionItem item = textEditor.LastCompletionItemList.Items.First(i=>i.Text == "ReadOnlyAbstractProperty");
textEditor.LastCompletionItemList.Complete(context, item);
Assert.AreEqual(Normalize(
programStart + "public override int ReadOnlyAbstractProperty {\n" +
" get { throw new NotImplementedException(); }\n" +
" }" + programEnd),
Normalize(textEditor.Document.Text)
);
}
[Test]
[Ignore("Implement formatter")]
public void OverrideVirtualProperty()
@ -152,6 +171,25 @@ class DerivedClass : BaseClass { @@ -152,6 +171,25 @@ class DerivedClass : BaseClass {
);
}
[Test]
[Ignore("Implement formatter")]
public void OverrideProtectedWriteProperty()
{
CompletionContext context = new CompletionContext();
context.Editor = textEditor;
context.StartOffset = textEditor.Caret.Offset;
context.EndOffset = textEditor.Caret.Offset;
ICompletionItem item = textEditor.LastCompletionItemList.Items.First(i=>i.Text == "ProtectedWriteProperty");
textEditor.LastCompletionItemList.Complete(context, item);
Assert.AreEqual(Normalize(
programStart + "public override int ProtectedWriteProperty {\n" +
" get { return base.ProtectedWriteProperty; }\n" +
" protected set { base.ProtectedWriteProperty = value; }\n" +
" }" + programEnd),
Normalize(textEditor.Document.Text)
);
}
[Test]
public void OverrideVirtualEvent()
{

Loading…
Cancel
Save