public async Task ReturnsChildrenCountForCurrentRangeAsync()
        {
            const int maxChildren  = 100;
            var       rangedEntity = RangedNatvisEntityDecorator.StartFrom(
                6, maxChildren, TestNatvisEntity.Create().WithCount(10));

            Assert.That(await rangedEntity.CountChildrenAsync(), Is.EqualTo(4));
        }
        public async Task LimitsCountToMaxChildrenCountAllowedWhenRangeIsWithOffsetAsync()
        {
            const int maxChildren  = 2;
            var       rangedEntity = RangedNatvisEntityDecorator.StartFrom(
                6, maxChildren, TestNatvisEntity.Create().WithCount(10));

            Assert.That(await rangedEntity.CountChildrenAsync(), Is.EqualTo(maxChildren + 1));
        }
        public async Task DoesNotAddMoreElementIfItIsNotInRangeWithOffsetAsync()
        {
            const int maxChildren  = 2;
            var       rangedEntity = RangedNatvisEntityDecorator.StartFrom(
                6, maxChildren, TestNatvisEntity.Create().WithCount(10));

            IList <IVariableInformation> children = await rangedEntity.GetChildrenAsync(0, 2);

            Assert.That(children.Count, Is.EqualTo(2));
            Assert.That(await children[0].ValueAsync(), Is.EqualTo("6"));
            Assert.That(await children[1].ValueAsync(), Is.EqualTo("7"));
        }