提交 81614bdc 编写于 作者: Š Šimon Koníček

Adding more tests

上级 50e592c7
......@@ -166,7 +166,7 @@ enum Colors
[WorkItem(827897, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/827897")]
[Fact, Trait(Traits.Feature, Traits.Features.Completion)]
public async Task InYieldReturn()
public async Task InYieldReturnInMethod()
{
var markup =
@"using System;
......@@ -182,6 +182,27 @@ IEnumerable<DayOfWeek> M()
await VerifyItemExistsAsync(markup, "DayOfWeek");
}
[WorkItem(30235, "https://github.com/dotnet/roslyn/issues/30235")]
[Fact, Trait(Traits.Feature, Traits.Features.Completion)]
public async Task InYieldReturnInLocalFunction()
{
var markup =
@"using System;
using System.Collections.Generic;
class Program
{
void M()
{
IEnumerable<DayOfWeek> F()
{
yield return $$
}
}
}";
await VerifyItemExistsAsync(markup, "DayOfWeek");
}
[WorkItem(827897, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/827897")]
[Fact, Trait(Traits.Feature, Traits.Features.Completion)]
public async Task InAsyncMethodReturnStatement()
......
......@@ -674,6 +674,26 @@ static void Main(string[] args)
await TestAsync(text, "global::System.Int32");
}
[Fact, Trait(Traits.Feature, Traits.Features.TypeInferenceService)]
public async Task TestReturnInConstructor()
{
await TestInClassAsync(
@"C()
{
return [|Goo()|];
}", "void");
}
[Fact, Trait(Traits.Feature, Traits.Features.TypeInferenceService)]
public async Task TestReturnInDestructor()
{
await TestInClassAsync(
@"~C()
{
return [|Goo()|];
}", "void");
}
[Fact, Trait(Traits.Feature, Traits.Features.TypeInferenceService)]
public async Task TestReturnInMethod()
{
......@@ -702,10 +722,30 @@ public async Task TestReturnInVoidMethod()
}
[Fact, Trait(Traits.Feature, Traits.Features.TypeInferenceService)]
public async Task TestReturnInGetter()
public async Task TestReturnInOperator()
{
await TestInClassAsync(
@"public static C operator ++(C c)
{
return [|Goo()|];
}", "global::C");
}
[Fact, Trait(Traits.Feature, Traits.Features.TypeInferenceService)]
public async Task TestReturnInConversionOperator()
{
await TestInClassAsync(
@"public static implicit operator int(C c)
{
return [|Goo()|];
}", "global::System.Int32");
}
[Fact, Trait(Traits.Feature, Traits.Features.TypeInferenceService)]
public async Task TestReturnInPropertyGetter()
{
await TestInClassAsync(
@"int Property
@"int P
{
get
{
......@@ -714,6 +754,73 @@ public async Task TestReturnInGetter()
}", "global::System.Int32");
}
[Fact, Trait(Traits.Feature, Traits.Features.TypeInferenceService)]
public async Task TestReturnInPropertySetter()
{
await TestInClassAsync(
@"int P
{
set
{
return [|Goo()|];
}
}", "void");
}
[Fact, Trait(Traits.Feature, Traits.Features.TypeInferenceService)]
public async Task TestReturnInIndexerGetter()
{
await TestInClassAsync(
@"int this[int i]
{
get
{
return [|Goo()|];
}
}", "global::System.Int32");
}
[Fact, Trait(Traits.Feature, Traits.Features.TypeInferenceService)]
public async Task TestReturnInIndexerSetter()
{
await TestInClassAsync(
@"int this[int i]
{
set
{
return [|Goo()|];
}
}", "void");
}
[Fact, Trait(Traits.Feature, Traits.Features.TypeInferenceService)]
public async Task TestReturnInEventAdder()
{
await TestInClassAsync(
@"event System.EventHandler E
{
add
{
return [|Goo()|];
}
remove { }
}", "void");
}
[Fact, Trait(Traits.Feature, Traits.Features.TypeInferenceService)]
public async Task TestReturnInEventRemover()
{
await TestInClassAsync(
@"event System.EventHandler E
{
add { }
remove
{
return [|Goo()|];
}
}", "void");
}
[Fact, Trait(Traits.Feature, Traits.Features.TypeInferenceService)]
public async Task TestReturnInLocalFunction()
{
......@@ -747,6 +854,13 @@ public async Task TestExpressionBodiedConstructor()
@"C() => [|Goo()|];", "void");
}
[Fact, Trait(Traits.Feature, Traits.Features.TypeInferenceService)]
public async Task TestExpressionBodiedDestructor()
{
await TestInClassAsync(
@"~C() => [|Goo()|];", "void");
}
[Fact, Trait(Traits.Feature, Traits.Features.TypeInferenceService)]
public async Task TestExpressionBodiedMethod()
{
......@@ -769,6 +883,20 @@ public async Task TestExpressionBodiedVoidMethod()
@"void M() => [|Goo()|];", "void");
}
[Fact, Trait(Traits.Feature, Traits.Features.TypeInferenceService)]
public async Task TestExpressionBodiedOperator()
{
await TestInClassAsync(
@"public static C operator ++(C c) => [|Goo()|];", "global::C");
}
[Fact, Trait(Traits.Feature, Traits.Features.TypeInferenceService)]
public async Task TestExpressionBodiedConversionOperator()
{
await TestInClassAsync(
@"public static implicit operator int(C c) => [|Goo()|];", "global::System.Int32");
}
[Fact, Trait(Traits.Feature, Traits.Features.TypeInferenceService)]
public async Task TestExpressionBodiedProperty()
{
......@@ -776,6 +904,13 @@ public async Task TestExpressionBodiedProperty()
@"int P => [|Goo()|];", "global::System.Int32");
}
[Fact, Trait(Traits.Feature, Traits.Features.TypeInferenceService)]
public async Task TestExpressionBodiedIndexer()
{
await TestInClassAsync(
@"int this[int i] => [|Goo()|];", "global::System.Int32");
}
[Fact, Trait(Traits.Feature, Traits.Features.TypeInferenceService)]
public async Task TestExpressionBodiedPropertyGetter()
{
......@@ -790,6 +925,34 @@ public async Task TestExpressionBodiedPropertySetter()
@"int P { set => [|Goo()|]; }", "void");
}
[Fact, Trait(Traits.Feature, Traits.Features.TypeInferenceService)]
public async Task TestExpressionBodiedIndexerGetter()
{
await TestInClassAsync(
@"int this[int i] { get => [|Goo()|]; }", "global::System.Int32");
}
[Fact, Trait(Traits.Feature, Traits.Features.TypeInferenceService)]
public async Task TestExpressionBodiedIndexerSetter()
{
await TestInClassAsync(
@"int this[int i] { set => [|Goo()|]; }", "void");
}
[Fact, Trait(Traits.Feature, Traits.Features.TypeInferenceService)]
public async Task TestExpressionBodiedEventAdder()
{
await TestInClassAsync(
@"event System.EventHandler E { add => [|Goo()|]; remove { } }", "void");
}
[Fact, Trait(Traits.Feature, Traits.Features.TypeInferenceService)]
public async Task TestExpressionBodiedEventRemover()
{
await TestInClassAsync(
@"event System.EventHandler E { add { } remove => [|Goo()|]; }", "void");
}
[Fact, Trait(Traits.Feature, Traits.Features.TypeInferenceService)]
public async Task TestExpressionBodiedLocalFunction()
{
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册