Commit Graph

7 Commits

Author SHA1 Message Date
Oliver Booth 3847d53120
Add more LINQ-esque methods
* IEnumerable<T>.CountWhereNot(Func<T, bool>)
* IEnumerable<T>.FirstWhereNot(Func<T, bool>)
* IEnumerable<T>.FirstWhereNotOrDefault(Func<T, bool>)
* IEnumerable<T>.LastWhereNot(Func<T, bool>)
* IEnumerable<T>.LastWhereNotOrDefault(Func<T, bool>)
* IEnumerable<T>.WhereNot(Func<T, bool>)
2022-07-30 23:53:35 +01:00
Oliver Booth ed2920f8a0
Multi-target X10D.Tests 2022-05-07 23:16:06 +01:00
Oliver Booth adf2281f21
Add DisposeAll(Async) and ClearAndDisposeAll(Async) 2022-05-02 22:31:09 +01:00
Oliver Booth fd53b41610
Move EnumerableTests to Collections namespace 2022-05-02 22:27:21 +01:00
Oliver Booth c4abef7be6
Move IO related methods to IO namespaces (#7)
Also renames more tests to be more meaningful
2022-04-25 17:09:49 +01:00
Oliver Booth 68d1ea6f4d
[ci skip] Reduce chance of Shuffle tests failing
A list containing 5 elements has a 1/(5!) (1/120) chance of being shuffled to the same order. This was causing unit tests to fail locally by pure fluke. Tests now generate a list from 1-52, which has a 1/(52!) chance of shuffling to the same order, so the chance is basically 0. If these tests ran once per second, it would take 1.9x10^50 * age of the universe to hit a collision.

This still can happen. Randomness does not guarantee we won't hit the same order. The odds are just so astronomically small that it's not worth considering. And if the CI run fails due to these tests failing, just re-run them anyway and call it a day
2022-04-23 11:25:09 +01:00
Oliver Booth 0fb01726db
Add tests for Enumerable/List 2022-04-21 22:35:06 +01:00