コード例 #1
0
        public void TestLastOrDefault()
        {
            var enumerated = new List <object>();
            var enumerable = new LazayIdEnumerable <int>(new IntegerEnumerable(0, 3), id => { enumerated.Add(id); return((int)id); });
            var result     = enumerable.LastOrDefault();

            Assert.AreEqual(1, enumerated.Count);
            Assert.AreEqual(2, result);
        }
コード例 #2
0
        public void TestCountAfterConcat()
        {
            var enumerated = new List <object>();
            var result     = new LazayIdEnumerable <int>(new IntegerEnumerable(0, 2), id => { enumerated.Add(id); return((int)id); })
                             .Concat(new LazayIdEnumerable <int>(new IntegerEnumerable(2, 2), id => { enumerated.Add(id); return((int)id); }))
                             .Count();

            Assert.AreEqual(0, enumerated.Count);
            Assert.AreEqual(4, result);
        }
コード例 #3
0
        public void TestSkip()
        {
            var enumerated = new List <object>();
            var enumerable = new LazayIdEnumerable <int>(new IntegerEnumerable(0, 3), id => { enumerated.Add(id); return((int)id); });
            var result     = enumerable.Skip(2)
                             .ToArray();

            Assert.AreEqual(1, enumerated.Count);
            Assert.AreEqual(1, result.Length);
            Assert.AreEqual(2, result[0]);
        }
コード例 #4
0
        public void TestConcat()
        {
            var enumerated = new List <object>();
            var result     = new LazayIdEnumerable <int>(new IntegerEnumerable(0, 2), id => { enumerated.Add(id); return((int)id); })
                             .Concat(new LazayIdEnumerable <int>(new IntegerEnumerable(2, 2), id => { enumerated.Add(id); return((int)id); }))
                             .ToArray();

            Assert.AreEqual(4, enumerated.Count);
            Assert.AreEqual(0, result[0]);
            Assert.AreEqual(1, result[1]);
            Assert.AreEqual(2, result[2]);
            Assert.AreEqual(3, result[3]);
        }