|
| 1 | +using System.Threading.Tasks; |
| 2 | +using Xunit; |
| 3 | +using ICSharpCode.CodeConverter.Tests.TestRunners; |
| 4 | + |
| 5 | +namespace ICSharpCode.CodeConverter.Tests.CSharp.ExpressionTests; |
| 6 | + |
| 7 | +public class LinqExtensionMethodReproTests : ConverterTestBase |
| 8 | +{ |
| 9 | + [Fact] |
| 10 | + public async Task TestLinqExtensionMethods() |
| 11 | + { |
| 12 | + await TestConversionVisualBasicToCSharpAsync(@"Imports System.Linq |
| 13 | +
|
| 14 | +Public Class TestClass |
| 15 | + Public Shared Sub Test() |
| 16 | + Dim intCol = New Integer() {1, 2, 3} |
| 17 | + Dim intCol2 = New Integer() {1, 2, 3} |
| 18 | +
|
| 19 | + Dim intColQuery = intCol.Select(Function(x) x) |
| 20 | + Dim intColCopy = intCol.Select(Function(x) x).ToArray() |
| 21 | + Dim intSum = intCol.Select(Function(x) x).Sum(Function(x) x) |
| 22 | + Dim intMax = intCol.Select(Function(x) x).Max(Function(x) x) |
| 23 | + Dim intCnt = intCol.Select(Function(x) x).Count(Function(x) x > 1) |
| 24 | +
|
| 25 | + Dim intSum2 = intCol.Select(Function(x) x).Sum() |
| 26 | + Dim intMax2 = intCol.OrderBy(Function(x) x).Max() |
| 27 | + Dim intCnt2 = intCol.Select(Function(x) x).Count() |
| 28 | + Dim intSum3 = intCol.Zip(intCol2, Function(x, y) x + y).Sum() |
| 29 | + End Sub |
| 30 | +End Class", @"using System; |
| 31 | +using System.Linq; |
| 32 | +
|
| 33 | +public partial class TestClass |
| 34 | +{ |
| 35 | + public static void Test() |
| 36 | + { |
| 37 | + int[] intCol = new int[] { 1, 2, 3 }; |
| 38 | + int[] intCol2 = new int[] { 1, 2, 3 }; |
| 39 | +
|
| 40 | + var intColQuery = intCol.Select(x => x); |
| 41 | + int[] intColCopy = intCol.Select(x => x).ToArray(); |
| 42 | + int intSum = intCol.Select(x => x).Sum(x => x); |
| 43 | + int intMax = intCol.Select(x => x).Max(x => x); |
| 44 | + int intCnt = intCol.Select(x => x).Count(x => x > 1); |
| 45 | +
|
| 46 | + int intSum2 = intCol.Select(x => x).Sum(); |
| 47 | + int intMax2 = intCol.OrderBy(x => x).Max(); |
| 48 | + int intCnt2 = intCol.Select(x => x).Count(); |
| 49 | + int intSum3 = intCol.Zip(intCol2, (x, y) => x + y).Sum(); |
| 50 | + } |
| 51 | +}"); |
| 52 | + } |
| 53 | +} |
0 commit comments