示例#1
0
        public void Gives_All_Flowers()
        {
            var data = new List <Tree>
            {
                new Tree {
                    Name = "First"
                },
                new Tree {
                    Name = "Second"
                },
                new Tree {
                    Name = "Third"
                },
            }.AsQueryable();

            var mockSet = new Mock <DbSet <Tree> >();

            mockSet.As <IQueryable <Tree> >().Setup(m => m.Provider).Returns(data.Provider);
            mockSet.As <IQueryable <Tree> >().Setup(m => m.Expression).Returns(data.Expression);
            mockSet.As <IQueryable <Tree> >().Setup(m => m.ElementType).Returns(data.ElementType);
            mockSet.As <IQueryable <Tree> >().Setup(m => m.GetEnumerator()).Returns(data.GetEnumerator());

            var mockContext = new Mock <GardenContext>();

            mockContext.Setup(c => c.Trees).Returns(mockSet.Object);

            var business = new TreeBusiness(mockContext.Object);
            var Trees    = business.GetAllTrees();

            Assert.AreEqual(3, Trees.Count);
            Assert.AreEqual("First", Trees[0].Name);
            Assert.AreEqual("Second", Trees[1].Name);
            Assert.AreEqual("Third", Trees[2].Name);
        }
示例#2
0
        public void Gives_Tree_By_Name()
        {
            var data = new List <Tree>()
            {
                new Tree {
                    Id = 1, Name = "Tree1"
                },
                new Tree {
                    Id = 2, Name = "Tree2"
                },
                new Tree {
                    Id = 3, Name = "Tree3"
                },
            }.AsQueryable();

            var mockSet = new Mock <DbSet <Tree> >();

            mockSet.As <IQueryable <Tree> >().Setup(m => m.Provider).Returns(data.Provider);
            mockSet.As <IQueryable <Tree> >().Setup(m => m.Expression).Returns(data.Expression);
            mockSet.As <IQueryable <Tree> >().Setup(m => m.ElementType).Returns(data.ElementType);
            mockSet.As <IQueryable <Tree> >().Setup(m => m.GetEnumerator()).Returns(data.GetEnumerator());

            var mockContext = new Mock <GardenContext>();

            mockContext.Setup(c => c.Trees).Returns(mockSet.Object);

            var business = new TreeBusiness(mockContext.Object);

            var tree = business.GetTreeByName("Tree1");

            Assert.AreEqual("Tree1", tree.Name);
        }
示例#3
0
        public void Remove_Tree()
        {
            var data = new List <Tree>()
            {
                new Tree {
                    Id = 1, Name = "Tree1"
                },
                new Tree {
                    Id = 2, Name = "Tree2"
                },
                new Tree {
                    Id = 3, Name = "Tree3"
                },
            }.AsQueryable();

            var mockSet = new Mock <DbSet <Tree> >();

            mockSet.As <IQueryable <Tree> >().Setup(m => m.Provider).Returns(data.Provider);
            mockSet.As <IQueryable <Tree> >().Setup(m => m.Expression).Returns(data.Expression);
            mockSet.As <IQueryable <Tree> >().Setup(m => m.ElementType).Returns(data.ElementType);
            mockSet.As <IQueryable <Tree> >().Setup(m => m.GetEnumerator()).Returns(data.GetEnumerator());

            var mockContext = new Mock <GardenContext>();

            mockContext.Setup(x => x.Trees).Returns(mockSet.Object);

            var business = new TreeBusiness(mockContext.Object);
            var trees    = business.GetAllTrees();

            int deletedTreeId = 1; business.Delete(trees[0].Id);

            Assert.IsNull(business.GetAllTrees().FirstOrDefault(x => x.Id == deletedTreeId));
        }
示例#4
0
        public void Update_Tree()
        {
            var mockContext  = new Mock <GardenContext>();;
            var treeBusiness = new TreeBusiness();
            var Tree         = new Tree()
            {
                Name = "Tree1"
            };

            try { treeBusiness.Update(Tree); }
            catch { mockContext.Verify(m => m.Entry(It.IsAny <Tree>()), Times.Once()); }
        }
示例#5
0
        public void Add_Tree()
        {
            var mockSet     = new Mock <DbSet <Tree> >();
            var tree        = new Tree();
            var mockContext = new Mock <GardenContext>();

            mockContext.Setup(m => m.Trees).Returns(mockSet.Object);

            var business = new TreeBusiness(mockContext.Object);

            business.Add(tree);

            mockSet.Verify(m => m.Add(It.IsAny <Tree>()), Times.Once());
            mockContext.Verify(m => m.SaveChanges(), Times.Once());
        }
示例#6
0
 public ActionResult SearchTree(string pageId, string pySearch)
 {
     try
     {
         UserInfo            sysUser = CacheInit.GetUserInfo(HttpContext);
         StoreSiteRepository urep    = new StoreSiteRepository();
         DataTable           list    = new DataTable();
         if (HttpContext.Cache["StoreSiteTree"] == null)
         {
             list = urep.GetStoreSiteTree(sysUser);
             //根据拼音首字母检索,现不用。
             //DataColumn col = new DataColumn("PY");
             //list.Columns.Add(col);
             //foreach (DataRow dr in list.Rows)
             //{
             //    dr["PY"] = PinYin.GetFirstPinyin(DataConvert.ToString(dr["storeSiteName"]));
             //}
             HttpContext.Cache.Add("StoreSiteTree", list, null, DateTime.Now.AddMinutes(30), TimeSpan.Zero, CacheItemPriority.High, null);
         }
         else
         {
             list = (DataTable)HttpContext.Cache["StoreSiteTree"];
         }
         var dtResult = TreeBusiness.GetSearchDataTable(pySearch, list);
         if (dtResult.Rows.Count > 0)
         {
             string treeString = AppTreeView.TreeViewString(pageId, TreeId.StoreSiteTreeId, dtResult, "", false);
             return(Content(treeString, "text/html"));
         }
         else
         {
             return(Content("0", "text/html"));
         }
     }
     catch (Exception ex)
     {
         AppLog.WriteLog(AppMember.AppText["SystemUser"], LogType.Error, "StoreSiteController.SearchTree", "[Message]:" + ex.Message + " [StackTrace]:" + ex.StackTrace);
         return(Content("[Message]:" + ex.Message + " [StackTrace]:" + ex.StackTrace, "text/html"));
     }
 }
示例#7
0
 public TreeDisplay()
 {
     treeBusiness = new TreeBusiness();
     Input();
 }