public void TestTakeWhileOperator()
        {
            EntityCollection<TestAccountEntity> entities = new EntityCollection<TestAccountEntity>();
            entities.Add(new TestAccountEntity(100, 5));
            entities.Add(new TestAccountEntity(102, 8));
            entities.Add(new TestAccountEntity(101, 15));
            entities.Add(new TestAccountEntity(101, 2));

            IEnumerable<TestAccountEntity> result =
                    entities.TakeWhile(
                            delegate(TestAccountEntity entity)
                            {
                                return (entity.Amount < 10) ? true : false;
                            });

            Assert.IsNotNull(result);
            foreach (TestAccountEntity entity in result)
            {
                Assert.IsNotNull(entity);
                Console.WriteLine(entity);
            }
        }