示例#1
0
        /// <summary>
        /// Delete entity
        /// </summary>
        /// <param name="id">Entity ID</param>
        /// <returns>Is deleted</returns>
        public bool Delete(int id)
        {
            _logger.TraceMethod(MethodBase.GetCurrentMethod(), id);

            bool deleted = _dbWrapper.Execute <TEnt>(DatabasePath, typeof(TEnt).Name,
                                                     col =>
            {
                return(col.Delete(id));
            });

            _logger.TraceMethodResult(MethodBase.GetCurrentMethod(), deleted);

            return(deleted);
        }
        public void FindMethodTest()
        {
            List <TestEntity> data = new List <TestEntity>()
            {
                new TestEntity()
                {
                    ID = 1, Field1 = "111", Field2 = true
                },
                new TestEntity()
                {
                    ID = 2, Field1 = "222", Field2 = false
                }
            };

            _fakeCollection.FindAll().Returns(data);
            _fakeDbWrapper.Execute <TestEntity>(Arg.Any <string>(), Arg.Any <string>(), Arg.Any <Func <ICollectionWrapper <TestEntity>, IEnumerable <TestEntity> > >())
            .Returns(x => ((Func <ICollectionWrapper <TestEntity>, IEnumerable <TestEntity> >)x[2]).Invoke(_fakeCollection));

            IEnumerable <TestEntity> result = _sut.Find(ent => ent.ID == 1);

            Assert.IsTrue(result.Count() == 1);
            Assert.AreSame(data[0], result.First());
        }