public void Ctor_Case3_2Args()
        {
            // Arrange
            // Act
            var c = new ReduceConfiguration <bool, bool, string>
                        ((bool a, bool b) => a && b, a => a.ToString());

            // Assert
            Assert.That(c.SeedFactory, Is.Null);
            Assert.That(c.Accumulator(false, true), Is.False);
            Assert.That(c.ResultSelector(true), Is.EqualTo(true.ToString()));
        }
        public void Ctor_Case1_3Args()
        {
            // Arrange
            // Act
            var c = new ReduceConfiguration <bool, int, string>
                        (() => 1, (int a, bool b) => a + (b ? 1 : 0), a => a.ToString());

            // Assert
            Assert.That(c.SeedFactory(), Is.EqualTo(1));
            Assert.That(c.Accumulator(2, true), Is.EqualTo(3));
            Assert.That(c.ResultSelector(3), Is.EqualTo("3"));
        }