Skip to content

Commit 7467fe4

Browse files
authored
Modernize C# codebase with collection expressions (C# 12) (#539)
1 parent 20da672 commit 7467fe4

11 files changed

+42
-36
lines changed

Algorithms.Tests/Sequences/DivisorsCountSequenceTests.cs

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -8,17 +8,17 @@ public class DivisorsCountSequenceTests
88
public void First10ElementsCorrect()
99
{
1010
// These values are taken from https://oeis.org/A000005 for comparison.
11-
var oeisSource = new BigInteger[]
12-
{
13-
1, 2, 2, 3, 2, 4, 2, 4, 3, 4, 2, 6, 2,
14-
4, 4, 5, 2, 6, 2, 6, 4, 4, 2, 8, 3, 4,
15-
4, 6, 2, 8, 2, 6, 4, 4, 4, 9, 2, 4, 4,
16-
8, 2, 8, 2, 6, 6, 4, 2, 10, 3, 6, 4, 6,
17-
2, 8, 4, 8, 4, 4, 2, 12, 2, 4, 6, 7, 4,
18-
8, 2, 6, 4, 8, 2, 12, 2, 4, 6, 6, 4, 8,
19-
2, 10, 5, 4, 2, 12, 4, 4, 4, 8, 2, 12, 4,
20-
6, 4, 4, 4, 12, 2, 6, 6, 9, 2, 8, 2, 8,
21-
};
11+
BigInteger[] oeisSource =
12+
[
13+
1, 2, 2, 3, 2, 4, 2, 4, 3, 4, 2, 6, 2,
14+
4, 4, 5, 2, 6, 2, 6, 4, 4, 2, 8, 3, 4,
15+
4, 6, 2, 8, 2, 6, 4, 4, 4, 9, 2, 4, 4,
16+
8, 2, 8, 2, 6, 6, 4, 2, 10, 3, 6, 4, 6,
17+
2, 8, 4, 8, 4, 4, 2, 12, 2, 4, 6, 7, 4,
18+
8, 2, 6, 4, 8, 2, 12, 2, 4, 6, 6, 4, 8,
19+
2, 10, 5, 4, 2, 12, 4, 4, 4, 8, 2, 12, 4,
20+
6, 4, 4, 4, 12, 2, 6, 6, 9, 2, 8, 2, 8,
21+
];
2222

2323
var sequence = new DivisorsCountSequence().Sequence.Take(oeisSource.Length);
2424
sequence.SequenceEqual(oeisSource).Should().BeTrue();

Algorithms.Tests/Sequences/EulerTotientSequenceTests.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ public void FirstElementsCorrect()
1111
// Initial test of 69 number from table at https://oeis.org/A000010/list and passed test.
1212
// Extended out to 500 values from https://primefan.tripod.com/Phi500.html and passed initial 69
1313
// along with remaining values.
14-
var check = new BigInteger[]
15-
{
14+
BigInteger[] check =
15+
[
1616
1, 1, 2, 2, 4, 2, 6, 4, 6, 4, 10, 4, 12, 6, 8, 8, 16, 6, 18, 8,
1717
12, 10, 22, 8, 20, 12, 18, 12, 28, 8, 30, 16, 20, 16, 24, 12, 36, 18, 24, 16,
1818
40, 12, 42, 20, 24, 22, 46, 16, 42, 20, 32, 24, 52, 18, 40, 24, 36, 28, 58, 16,
@@ -38,7 +38,7 @@ public void FirstElementsCorrect()
3838
252, 192, 442, 144, 352, 222, 296, 192, 448, 120, 400, 224, 300, 226, 288, 144, 456, 228, 288, 176,
3939
460, 120, 462, 224, 240, 232, 466, 144, 396, 184, 312, 232, 420, 156, 360, 192, 312, 238, 478, 128,
4040
432, 240, 264, 220, 384, 162, 486, 240, 324, 168, 490, 160, 448, 216, 240, 240, 420, 164, 498, 200,
41-
};
41+
];
4242

4343
var sequence = new EulerTotientSequence().Sequence.Take(check.Length);
4444
sequence.SequenceEqual(check).Should().BeTrue();

Algorithms.Tests/Sequences/FibonacciSequenceTests.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@ public class FibonacciSequenceTests
88
public void First10ElementsCorrect()
99
{
1010
var sequence = new FibonacciSequence().Sequence.Take(10);
11-
sequence.SequenceEqual(new BigInteger[] { 0, 1, 1, 2, 3, 5, 8, 13, 21, 34 })
11+
BigInteger[] expected = [0, 1, 1, 2, 3, 5, 8, 13, 21, 34];
12+
sequence.SequenceEqual(expected)
1213
.Should().BeTrue();
1314
}
1415
}

Algorithms.Tests/Sequences/KolakoskiSequenceTests.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ public class KolakoskiSequenceTests
88
public void First100ElementsCorrect()
99
{
1010
// Taken from https://oeis.org/A000002
11-
var expected = new BigInteger[]
12-
{
11+
BigInteger[] expected =
12+
[
1313
1, 2, 2, 1, 1, 2, 1, 2, 2, 1,
1414
2, 2, 1, 1, 2, 1, 1, 2, 2, 1,
1515
2, 1, 1, 2, 1, 2, 2, 1, 1, 2,
@@ -20,7 +20,7 @@ public void First100ElementsCorrect()
2020
1, 2, 1, 2, 2, 1, 2, 1, 1, 2,
2121
2, 1, 2, 2, 1, 1, 2, 1, 2, 2,
2222
1, 2, 2, 1, 1, 2, 1, 1, 2, 2,
23-
};
23+
];
2424

2525
var sequence = new KolakoskiSequence().Sequence.Take(100);
2626
var sequence2 = new KolakoskiSequence2().Sequence.Take(100);

Algorithms.Tests/Sequences/NaturalSequenceTests.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@ public class NaturalSequenceTests
88
public void First10ElementsCorrect()
99
{
1010
var sequence = new NaturalSequence().Sequence.Take(10);
11-
sequence.SequenceEqual(new BigInteger[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 })
11+
BigInteger[] expected = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
12+
sequence.SequenceEqual(expected)
1213
.Should().BeTrue();
1314
}
1415
}

Algorithms.Tests/Sequences/NegativeIntegersSequenceTests.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@ public class NegativeIntegersSequenceTests
88
public void First10ElementsCorrect()
99
{
1010
var sequence = new NegativeIntegersSequence().Sequence.Take(10);
11-
sequence.SequenceEqual(new BigInteger[] { -1, -2, -3, -4, -5, -6, -7, -8, -9, -10 })
11+
BigInteger[] expected = [-1, -2, -3, -4, -5, -6, -7, -8, -9, -10];
12+
sequence.SequenceEqual(expected)
1213
.Should().BeTrue();
1314
}
1415
}

Algorithms.Tests/Sequences/PowersOf2SequenceTests.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@ public class PowersOf2SequenceTests
88
public void First10ElementsCorrect()
99
{
1010
var sequence = new PowersOf2Sequence().Sequence.Take(10);
11-
sequence.SequenceEqual(new BigInteger[] { 1, 2, 4, 8, 16, 32, 64, 128, 256, 512 })
11+
BigInteger[] expected = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512];
12+
sequence.SequenceEqual(expected)
1213
.Should().BeTrue();
1314
}
1415
}

Algorithms.Tests/Sequences/SquaresSequenceTests.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@ public class SquaresSequenceTests
88
public void First10ElementsCorrect()
99
{
1010
var sequence = new SquaresSequence().Sequence.Take(10);
11-
sequence.SequenceEqual(new BigInteger[] { 0, 1, 4, 9, 16, 25, 36, 49, 64, 81 })
11+
BigInteger[] expected = [0, 1, 4, 9, 16, 25, 36, 49, 64, 81];
12+
sequence.SequenceEqual(expected)
1213
.Should().BeTrue();
1314
}
1415
}

Algorithms.Tests/Sequences/TetranacciNumbersSequenceTests.cs

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,13 @@ public class TetranacciNumbersSequenceTests
88
public void First35ElementsCorrect()
99
{
1010
var sequence = new TetranacciNumbersSequence().Sequence.Take(35);
11-
sequence.SequenceEqual(new BigInteger[]
12-
{
13-
1, 1, 1, 1, 4, 7, 13, 25, 49, 94, 181, 349, 673, 1297, 2500, 4819, 9289, 17905, 34513, 66526, 128233,
14-
247177, 476449, 918385, 1770244, 3412255, 6577333, 12678217, 24438049, 47105854, 90799453, 175021573,
15-
337364929, 650291809, 1253477764,
16-
})
11+
BigInteger[] expected =
12+
[
13+
1, 1, 1, 1, 4, 7, 13, 25, 49, 94, 181, 349, 673, 1297, 2500, 4819, 9289, 17905, 34513, 66526, 128233,
14+
247177, 476449, 918385, 1770244, 3412255, 6577333, 12678217, 24438049, 47105854, 90799453, 175021573,
15+
337364929, 650291809, 1253477764,
16+
];
17+
sequence.SequenceEqual(expected)
1718
.Should().BeTrue();
1819
}
1920
}

Algorithms.Tests/Sequences/VanEcksSequenceTests.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,14 @@ public class VanEcksSequenceTests
88
public void First50ElementsCorrect()
99
{
1010
// Taken from http://oeis.org/A181391
11-
var expected = new BigInteger[]
12-
{
11+
BigInteger[] expected =
12+
[
1313
0, 0, 1, 0, 2, 0, 2, 2, 1, 6,
1414
0, 5, 0, 2, 6, 5, 4, 0, 5, 3,
1515
0, 3, 2, 9, 0, 4, 9, 3, 6, 14,
1616
0, 6, 3, 5, 15, 0, 5, 3, 5, 2,
1717
17, 0, 6, 11, 0, 3, 8, 0, 3, 3,
18-
};
18+
];
1919

2020
var sequence = new VanEcksSequence().Sequence.Take(50);
2121

0 commit comments

Comments
 (0)