public async Task TeeEachAsync_ReturnsTheInputObject()
        {
            var list = new List<int> {1, 2, 3};
            (await list.TeeEachAsync(Console.WriteLine))
                .Should().BeSameAs(list, "because TeeEachAsync returns the input object");

            var array = new[] {1, 2, 3};
            (await array.TeeEachAsync(Console.WriteLine))
                .Should().BeSameAs(array, "because TeeEachAsync returns the input object");

            var roc = new ReadOnlyCollection<int>(list);
            (await roc.TeeEachAsync(Console.WriteLine))
                .Should().BeSameAs(roc, "because TeeEachAsync returns the input object");
        }