public void GetItemById_ResolvesItem_WhenItemIsRoot()
        {
            using (var testTree = new TestSfsTree())
            {
                testTree.CreateTestTree("/sitecore");

                var root = testTree.GetRootItem();

                var byId = testTree.GetItemById(root.Id);

                Assert.NotNull(byId);
                Assert.Equal(root.Id, byId.Id);
            }
        }
        public void GetItemById_ResolvesItem_WhenItemIsChild()
        {
            using (var testTree = new TestSfsTree())
            {
                testTree.CreateTestTree("/sitecore/content/foo");

                var item = testTree.GetItemsByPath("/sitecore/content/foo").First();

                var byId = testTree.GetItemById(item.Id);

                Assert.NotNull(byId);
                Assert.Equal(item.Id, byId.Id);
            }
        }
		public void GetItemById_ResolvesItem_WhenItemIsChild()
		{
			using (var testTree = new TestSfsTree())
			{
				testTree.CreateTestTree("/sitecore/content/foo");

				var item = testTree.GetItemsByPath("/sitecore/content/foo").First();

				var byId = testTree.GetItemById(item.Id);

				Assert.NotNull(byId);
				Assert.Equal(item.Id, byId.Id);
			}
		}
		public void GetItemById_ResolvesItem_WhenItemIsRoot()
		{
			using (var testTree = new TestSfsTree())
			{
				testTree.CreateTestTree("/sitecore");

				var root = testTree.GetRootItem();

				var byId = testTree.GetItemById(root.Id);

				Assert.NotNull(byId);
				Assert.Equal(root.Id, byId.Id);
			}
		}
        public void GetItemById_ResolvesItem_WhenItemIsRoot_AndCacheIsEmpty()
        {
            using (var testTree = new TestSfsTree())
            {
                CreateTestTree("/sitecore", testTree);

                var root = testTree.GetRootItem();

                testTree.ClearAllCaches();

                var byId = testTree.GetItemById(root.Id);

                Assert.NotNull(byId);
                Assert.Equal(root.Id, byId.Id);
            }
        }