コード例 #1
0
		public void MoveOrRename_RenamesItem()
		{
			using (var dataStore = new TestSfsDataStore("/sitecore"))
			{
				var renamingItemGrandchild = new FakeItem(path: "/sitecore/test/hulk/smash", name: "smash", id: Guid.NewGuid());
				var renamingItemChild = new FakeItem(path: "/sitecore/test/hulk", name: "hulk", children: new[] { renamingItemGrandchild }, id: Guid.NewGuid());
				var itemToRename = new FakeItem(path: "/sitecore/test", name: "test", children: new[] { renamingItemChild }, id: Guid.NewGuid());
				var rootItem = new FakeItem(path: "/sitecore", name: "sitecore", id: Guid.NewGuid(), children: new[] { itemToRename });

				dataStore.Save(rootItem);
				dataStore.Save(itemToRename);
				dataStore.Save(renamingItemChild);
				dataStore.Save(renamingItemGrandchild);

				// note adding children with old paths; method takes care of rewriting child paths
				var renamedItem = new FakeItem(id: itemToRename.Id, path: "/sitecore/hexed", name: "hexed", children: new[] { renamingItemChild });

				dataStore.MoveOrRenameItem(renamedItem, "/sitecore/test");

				var retrievedRenamedItem = dataStore.GetByPath("/sitecore/hexed", "master").ToArray();
				var retrievedRenamedChild = dataStore.GetByPath("/sitecore/hexed/hulk", "master").ToArray();
				var retrievedRenamedGrandchild = dataStore.GetByPath("/sitecore/hexed/hulk/smash", "master").ToArray();

				Assert.NotEmpty(retrievedRenamedItem);
				Assert.Equal("/sitecore/hexed", retrievedRenamedItem.First().Path);

				// verify children moved
				Assert.NotEmpty(retrievedRenamedChild);
				Assert.NotEmpty(retrievedRenamedGrandchild);
			}
		}
コード例 #2
0
        public void CreateAndEditItemTest()
        {
            //setup database so we have a rood node to add our content to
            var homeFakeItem = new FakeItem();
            Item homeItem = (Item) homeFakeItem;

            //Define some Field IDs
            TemplateID templateId = new TemplateID(ID.NewID);
            Item subNode;
            ID fieldIdA = ID.NewID;
            ID fieldIdB = ID.NewID;

            //add and edit the ite,
            using (new SecurityDisabler())
            {
                subNode = homeItem.Add("SubNode", templateId);
                using (new EditContext(subNode))
                {
                    subNode[fieldIdA] = "test";
                    subNode[fieldIdB] = "testBBB";
                }

            }
            subNode[fieldIdA].ShouldAllBeEquivalentTo("test");
            subNode[fieldIdB].ShouldAllBeEquivalentTo("testBBB"); ;
        }
コード例 #3
0
        public void CreateAndEditItemTestMultilesubItems()
        {
            FakeDatabase database = (FakeDatabase)Factory.GetDatabase("master");

            var homeItem = new FakeItem("master","homeItem");
            var home = (Item)homeItem;

            TemplateID templateId = new TemplateID(ID.NewID);
            Item subNode;

            ID fieldIdA = ID.NewID;
            ID fieldIdB = ID.NewID;
            Item subsubnode;
            ID subsubNodeId;
            using (new SecurityDisabler())
            {
                subNode = home.Add("SubNode", templateId);
                using (new EditContext(subNode))
                {
                    subNode[fieldIdA] = "test";
                    subNode[fieldIdB] = "testBBB";
                }
               subsubnode  = subNode.Add("SubSubNode", templateId);
                subsubNodeId = subsubnode.ID;
            }

            //THE master database should contain the subsubnode
            Item n = database.GetItem(subsubNodeId);

            //And the subsubnode should have inserted content
            n.Name.ShouldAllBeEquivalentTo("SubSubNode");
        }
コード例 #4
0
		public void MoveOrRename_MovesItem_WhenDestinationIsParentOfSource()
		{
			using (var dataStore = new TestSfsDataStore("/sitecore"))
			{
				var itemToMoveChild = new FakeItem(path: "/sitecore/test/hulk/smash", name: "smash", id: Guid.NewGuid());
				var itemToMove = new FakeItem(path: "/sitecore/test/hulk", name: "hulk", children: new[] { itemToMoveChild }, id: Guid.NewGuid());
				var parentItem = new FakeItem(path: "/sitecore/test", name: "test", children: new[] { itemToMove }, id: Guid.NewGuid());
				var destinationItem = new FakeItem(path: "/sitecore", name: "sitecore", id: Guid.NewGuid(), children: new[] { parentItem });

				dataStore.Save(destinationItem);
				dataStore.Save(parentItem);
				dataStore.Save(itemToMove);
				dataStore.Save(itemToMoveChild);

				// note adding children with old paths; method takes care of rewriting child paths
				var renamedItem = new FakeItem(id: itemToMove.Id, path: "/sitecore/hexed", name: "hexed", children: new[] { itemToMoveChild });

				dataStore.MoveOrRenameItem(renamedItem, "/sitecore/test/hulk");

				var retrievedRenamedItem = dataStore.GetByPath("/sitecore/hexed", "master").ToArray();
				var retrievedRenamedChild = dataStore.GetByPath("/sitecore/hexed/smash", "master").ToArray();

				Assert.NotEmpty(retrievedRenamedItem);
				Assert.Equal("/sitecore/hexed", retrievedRenamedItem.First().Path);

				// verify children moved
				Assert.NotEmpty(retrievedRenamedChild);
				Assert.Equal("/sitecore/hexed/smash", retrievedRenamedChild.First().Path);
			}
		}
コード例 #5
0
 public void FakeItemAddFieldShouldReturnField(FieldList fieldList,string fieldValue)
 {
     var fieldId = ID.NewID;
     fieldList.Add(fieldId,fieldValue);
     var fake = new FakeItem(fieldList);
     fake[fieldId].ShouldBeEquivalentTo(fieldValue);
 }
コード例 #6
0
        async Task concurrent_providers()
        {
            const int iterations = 100000;

            var tasks = Enumerable.Range(0, iterations).Select(i =>
            {
                return Task.Run(() =>
                {
                    var options = new RedisTempDataProviderOptions()
                    {
                        UserProvider = new FakeTempDataUserProvider("user" + i + "@example.com"),
                        Serializer = new NetDataContractTempDataSerializer()
                    };
                    var tdp = new RedisTempDataProvider(options, GetDatabase());
                    var context = new ControllerContext();
                    var tempData = tdp.LoadTempData(context);
                    tempData["id"] = 123;
                    tempData["user"] = new FakeItem() { Name = "User" + i };
                    tdp.SaveTempData(context, tempData);

                    tempData = tdp.LoadTempData(context);
                    tempData["id"].ShouldEqual(123);
                    tempData["user"].ShouldEqual(new FakeItem() { Name = "User" + i });
                });
            });

            await Task.WhenAll(tasks);
        }
コード例 #7
0
        public void FakeItemAddChildToChildrenShouldReturnChild()
        {
            var child = new FakeItem(new FieldList());
            var fake = new FakeItem(new FieldList());
            fake.AddChild(child);

            fake.Children.First().ShouldBeEquivalentTo(child);
        }
コード例 #8
0
        public void FakeItemAddChildToChildrenChildShouldHaveParentWithId()
        {
            var child = new FakeItem(new FieldList());
            var fake = new FakeItem(new FieldList());
            fake.AddChild(child);

            fake.Children.First().ParentID.ShouldBeEquivalentTo(fake.ID);
        }
コード例 #9
0
        public void WithItemAccess_WhenCalled_SetsItemAccess()
        {
            var item   = new FakeItem();
            var access = Substitute.For <ItemAccess>(item.ToSitecoreItem());

            item.WithItemAccess(access);

            item.ToSitecoreItem().Access.Should().Be(access);
        }
コード例 #10
0
        public void WithItemVersions_WhenCalled_SetsItemVersions()
        {
            var item = new FakeItem();

            item.ToSitecoreItem().Versions.Should().BeNull();
            item.WithItemVersions(Substitute.For <ItemVersions>(item.ToSitecoreItem()));

            item.ToSitecoreItem().Versions.Should().NotBeNull();
        }
コード例 #11
0
        public void WithLanguages_WhenCalled_SetsItemLanguages(string unoLanguage, string dosLanguage)
        {
            Item item = new FakeItem().WithLanguages(new[] { unoLanguage, dosLanguage });

            item.Languages
            .Should().HaveCount(2)
            .And.ContainSingle(language => language.Name == unoLanguage)
            .And.ContainSingle(language => language.Name == dosLanguage);
        }
コード例 #12
0
        public void DatabaseGetItemFromIdThatExistsInDatabaseShouldReturnItem()
        {
            FakeDatabase database = (FakeDatabase)Factory.GetDatabase("web");

            var fakeItem = new FakeItem(new FieldList());
            database.FakeAddItem(fakeItem);
            var demo = database.GetItem(fakeItem.ID);
            demo.Name.ShouldAllBeEquivalentTo("FakeItem");
        }
コード例 #13
0
        public void ShouldRebasePathOfChildren()
        {
            var root = new FakeItem(children: new[] { new FakeItem() }, id: Guid.NewGuid());

            var rebase = new PathRebasingItemData(root, "/sitecore/new", Guid.NewGuid());

            rebase.GetChildren().First().Path.Should().Be("/sitecore/new/test item/test item");
            rebase.GetChildren().First().ParentId.Should().Be(root.Id);
        }
コード例 #14
0
        public void FakeField_ShouldTakeLanguage_FromItem(string languageName)
        {
            var item = new FakeItem().WithLanguage(languageName).ToSitecoreItem();

            Field field = new FakeField(owner: item)
            ;

            field.Language.Name.Should().Be(languageName);
        }
コード例 #15
0
ファイル: SfsDataStoreTests.cs プロジェクト: csoler46/Rainbow
        public void Save_SavesItem()
        {
            using (var dataStore = new TestSfsDataStore("/sitecore"))
            {
                var item = new FakeItem(path: "/sitecore");

                dataStore.Save(item);
            }
        }
コード例 #16
0
 public void FakeItemPathShouldContainFullPathParentNameChildName(string parentName, string childName)
 {
     var parent = new FakeItem(parentName);
     ((FakeDatabase)Factory.GetDatabase("web")).RootItem = parent;
     var child = new FakeItem(childName);
     parent.AddChild(child);
     var sut = (Item)child;
     sut.Paths.FullPath.ShouldAllBeEquivalentTo("/"+parent.Name+"/"+child.Name);
 }
コード例 #17
0
        public void FakeItemUpdateTemplateIdShouldReturnTemplateId()
        {
            ID tempalteId = ID.NewID;
            var parent = new FakeItem(ID.NewID, tempalteId);

            var sut = (Item)parent;

            sut.TemplateID.ShouldBeEquivalentTo(tempalteId);
        }
コード例 #18
0
		public void ShouldRebasePathOfChildren()
		{
			var root = new FakeItem(children: new[] { new FakeItem() }, id: Guid.NewGuid());

			var rebase = new PathRebasingProxyItem(root, "/sitecore/new", Guid.NewGuid());

			rebase.GetChildren().First().Path.Should().Be("/sitecore/new/test item/test item");
			rebase.GetChildren().First().ParentId.Should().Be(root.Id);
		}
コード例 #19
0
		public void Save_SavesItem()
		{
			using (var dataStore = new TestSfsDataStore("/sitecore"))
			{
				var item = new FakeItem(path: "/sitecore");

				dataStore.Save(item);
			}
		}
コード例 #20
0
        public void FakeItemGetFieldFromIdShoudlReturnFieldValue(string fieldValue, FieldList fieldList)
        {
            var fieldId = ID.NewID;

            fieldList.Add(fieldId, fieldValue);
            var fake = new FakeItem(fieldList);

            fake[fieldId].ShouldAllBeEquivalentTo(fieldValue);
        }
コード例 #21
0
        public void Save_ErrorWhenItemNotInTree()
        {
            using (var dataStore = new TestSfsDataStore("/sitecore"))
            {
                var item = new FakeItem(path: "/ektron");

                // ReSharper disable once AccessToDisposedClosure
                Assert.Throws <InvalidOperationException>(() => dataStore.Save(item, null));
            }
        }
コード例 #22
0
        public void AddingInvalidItemWillNotAddItemToInventory()
        {
            var item = new FakeItem(InventoryCapacity + 1);

            Action act = () => this.Inventory.InsertItem(item);

            act.Should().Throw <InventoryCapacityException>();

            this.Inventory.Items.Should().BeEmpty();
        }
コード例 #23
0
        public void Includes_IncludesSerializedItemByDatabase()
        {
            var predicate = CreateTestPredicate(CreateTestConfiguration());

            // ReSharper disable once RedundantArgumentDefaultValue
            var item     = new FakeItem(path: IncludedPath, databaseName: IncludedDatabase);
            var includes = predicate.Includes(item);

            Assert.True(includes.IsIncluded, "Include serialized item by database failed.");
        }
コード例 #24
0
        public void IsConsistent_ReturnsTrue_WhenEmpty()
        {
            var testLogger = Substitute.For <IDuplicateIdConsistencyCheckerLogger>();

            var testChecker = new DuplicateIdConsistencyChecker(testLogger);

            var testItem = new FakeItem(ID.NewID.Guid);

            Assert.True(testChecker.IsConsistent(testItem));
        }
コード例 #25
0
        public void FakesAssignFakeChildrenWithAdd()
        {
            var child = new FakeItem(new ID("{11111111-1111-1111-1111-111111111115}"), "testSub1");

            var parent = new FakeItem(new ID("{030C5633-85B5-492E-BDF1-E24789A3B49B}"), "MyTest");
            parent.FakeChildren.Add(child);

            parent.Children.Count.Should().Be(1);
            parent.Children[0].Should().Be(child);
        }
コード例 #26
0
        public void WithItemAxes_WhenCalled_SetsItemAxes()
        {
            var  fakeItem     = new FakeItem();
            Item item         = fakeItem;
            var  stubItemAxes = Substitute.For <ItemAxes>(item);

            fakeItem.WithItemAxes(stubItemAxes);

            item.Axes.Should().Be(stubItemAxes);
        }
コード例 #27
0
		public void Save_ErrorWhenItemNotInTree()
		{
			using (var dataStore = new TestSfsDataStore("/sitecore"))
			{
				var item = new FakeItem(path: "/ektron");

				// ReSharper disable once AccessToDisposedClosure
				Assert.Throws<InvalidOperationException>(() => dataStore.Save(item));
			}
		}
コード例 #28
0
        public void Constructor_WhenCalled_SetsNonEmptyID()
        {
            // Act
            var fakeItem = new FakeItem();

            // Assert
            fakeItem.ID
            .Should().NotBeNull()
            .And.NotBe(ID.Null);
        }
コード例 #29
0
		public void ShouldRebasePath()
		{
			var root = new FakeItem();
			var pid = Guid.NewGuid();

			var rebase = new PathRebasingProxyItem(root, "/sitecore/new", pid);

			rebase.Path.Should().Be("/sitecore/new/test item");
			rebase.ParentId.Should().Be(pid);
		}
コード例 #30
0
        public void FakeItemAddMultipleFieldShouldReturnField(FieldList fieldList, string fieldValue)
        {
            var fieldIdOne = ID.NewID;
            var fieldIdTwo = ID.NewID;
            fieldList.Add(fieldIdOne, fieldValue);
            fieldList.Add(fieldIdTwo, fieldValue);
            var fake = new FakeItem(fieldList);

            fake.Fields.Should().HaveCount(2);
        }
コード例 #31
0
        public void ShouldRebasePath()
        {
            var root = new FakeItem();
            var pid  = Guid.NewGuid();

            var rebase = new PathRebasingProxyItem(root, "/sitecore/new", pid);

            rebase.Path.Should().Be("/sitecore/new/test item");
            rebase.ParentId.Should().Be(pid);
        }
コード例 #32
0
        public void GivenAgedItemWithLifetimeAndQuality_WhenAdjustingAgedItemQuality_ThenItShouldReturnCorrectProduct()
        {
            // arrange
            IProduct product = new Product(_qualityAdjustment, FakeItem.Instance("Aged Brie", 10, 10));

            // act
            IProduct actual = product.WithAdjustedQuality();

            // assert
            actual.ToString().Should().Be("Aged Brie, 10, 11");
        }
コード例 #33
0
        public void WithIsFallback_WhenCalled_SetsIsFallbackToConfiguredValue(bool isFallbackConfigured)
        {
            // Arrange
            Item item = new FakeItem().WithIsFallback(isFallbackConfigured);

            // Act
            var isFallbackActual = item.IsFallback;

            // Assert
            isFallbackActual.Should().Be(isFallbackConfigured);
        }
コード例 #34
0
        public void GivenCommonItemWithLifetimeAndQuality_WhenAdjustingAgedItemQuality_ThenItShouldNotAffectProduct()
        {
            // arrange
            IProduct product = new Product(_qualityAdjustment, FakeItem.Instance("Large Sack", 10, 10));

            // act
            IProduct actual = product.WithAdjustedQuality();

            // assert
            actual.Should().Be(product);
        }
コード例 #35
0
        public void FakeItem_WhenCastedToSitecoreItem_ReturnsItemInstance()
        {
            // Arrange
            var fakeItem = new FakeItem();

            // Act
            var item = (Item)fakeItem;

            // Assert
            item.Should().NotBeNull();
        }
コード例 #36
0
        public void GivenConjuredItemWithLifetimeAndQuality_WhenAdjustingCommonQuality_ThenItShouldNotAffectProduct()
        {
            // arrange
            IProduct product = new Product(_qualityAdjustment, FakeItem.Instance("Conjured Mana Cake", 5, 5));

            // act
            IProduct actual = product.WithAdjustedQuality();

            // assert
            actual.Should().Be(product);
        }
コード例 #37
0
ファイル: ChainContextTests.cs プロジェクト: theb0rg/DaisyFx
        public void Dispose_DisposesItems()
        {
            var item = new FakeItem();

            using (var context = CreateChainContext())
            {
                context.Set("TestKey", item);
            }

            Assert.True(item.Disposed);
        }
コード例 #38
0
ファイル: ItemComparerTests.cs プロジェクト: murven/Rainbow
        public void FastCompare_IsNotEqual_WhenSharedFieldsAreUnequal()
        {
            var comparer = new TestItemComparer();

            var sourceItem = new FakeItem(sharedFields: new[] { new FakeFieldValue("Hello") });
            var targetItem = new FakeItem(sharedFields: new[] { new FakeFieldValue("Goodbye") });

            var comparison = comparer.FastCompare(sourceItem, targetItem);

            comparison.AreEqual.Should().BeFalse();
        }
        public void GivenNonConjuredItem_WhenAdjustingConjuredProductQuality_ThenItShouldNotAffectProduct()
        {
            // arrange
            IProduct product = new Product(_qualityAdjustment, FakeItem.Instance("Copper Ingot", 10, 10));

            // act
            IProduct actual = product.WithAdjustedQuality();

            // assert
            actual.Should().Be(product);
        }
        public void GivenConjuredItem_WhenAdjustingConjuredProductQuality_ThenItShouldReturnCorrectProduct()
        {
            // arrange
            IProduct product = new Product(_qualityAdjustment, FakeItem.Instance("Conjured Mana Cake", 10, 10));

            // act
            IProduct actual = product.WithAdjustedQuality();

            // assert
            actual.ToString().Should().Be("Conjured Mana Cake, 10, 8");
        }
コード例 #41
0
        public void GivenEventPassWithLifetimeAndQuality_WhenAdjustingCommonQuality_ThenItShouldNotAffectProduct()
        {
            // arrange
            IProduct product = new Product(_qualityAdjustment, FakeItem.Instance("Backstage passes to a TAFKAL80ETC concert", 10, 10));

            // act
            IProduct actual = product.WithAdjustedQuality();

            // assert
            actual.Should().Be(product);
        }
コード例 #42
0
        public void GivenLegendaryItemWithLifetimeAndQuality_WhenAdjustingAgedItemQuality_ThenItShouldNotAffectProduct()
        {
            // arrange
            IProduct product = new Product(_qualityAdjustment, FakeItem.Instance("Sulfuras, Hand of Ragnaros", -1, 40));

            // act
            IProduct actual = product.WithAdjustedQuality();

            // assert
            actual.Should().Be(product);
        }
コード例 #43
0
        public void GivenCommonItemWithLifetimeAndZeroQuality_WhenAdjustingCommonQuality_ThenItShouldReturnCorrectProduct()
        {
            // arrange
            IProduct product = new Product(_qualityAdjustment, FakeItem.Instance("Torch", 5, 0));

            // act
            IProduct actual = product.WithAdjustedQuality();

            // assert
            actual.ToString().Should().Be("Torch, 5, 0");
        }
コード例 #44
0
        public void WithIsClone_WhenCalled_SetsConfiguredValue(bool isCloneConfigured)
        {
            // Arrange
            Item item = new FakeItem().WithIsClone(isCloneConfigured);

            // Act
            var isCloneActual = item.IsClone;

            // Assert
            isCloneActual.Should().Be(isCloneConfigured);
        }
コード例 #45
0
		public void FilteredItem_ContainsExpectedVersionedField()
		{
			Guid fieldId = Guid.NewGuid();

			var filter = new TestFieldFilter();
			var testItem = new FakeItem(versions: new[] { new FakeItemVersion(fields: new FakeFieldValue("Fake", fieldId: fieldId)) });

			var filteredItem = new FilteredItem(testItem, filter);

			Assert.True(filteredItem.Versions.First().Fields.Any(field => field.FieldId == fieldId));
		}
コード例 #46
0
		public void FilteredItem_DoesNotContainExpectedSharedField()
		{
			Guid fieldId = Guid.NewGuid();

			var filter = new TestFieldFilter(fieldId);
			var testItem = new FakeItem(sharedFields: new[] { new FakeFieldValue("Fake", fieldId: fieldId), });

			var filteredItem = new FilteredItem(testItem, filter);

			Assert.False(filteredItem.SharedFields.Any(field => field.FieldId == fieldId));
		}
コード例 #47
0
        public void Save_ShouldDeserializeItem()
        {
            var deserializer = Substitute.For <IDeserializer>();
            var dataStore    = new SitecoreDataStore(deserializer);

            var item = new FakeItem();

            dataStore.Save(item, null);

            deserializer.Received().Deserialize(item, null);
        }
コード例 #48
0
ファイル: ItemComparerTests.cs プロジェクト: csteeg/Rainbow
        public void FastCompare_IsNotEqual_WhenSharedFieldsAreUnequal()
        {
            var comparer = new TestItemComparer();

            var sourceItem = new FakeItem(sharedFields: new[] { new FakeFieldValue("Hello") });
            var targetItem = new FakeItem(sharedFields: new[] { new FakeFieldValue("Goodbye") });

            var comparison = comparer.FastCompare(sourceItem, targetItem);

            Assert.False(comparison.AreEqual);
        }
コード例 #49
0
        public void FilteredItem_ContainsExpectedVersionedField()
        {
            Guid fieldId = Guid.NewGuid();

            var filter   = new TestFieldFilter();
            var testItem = new FakeItem(versions: new[] { new FakeItemVersion(fields: new FakeFieldValue("Fake", fieldId: fieldId)) });

            var filteredItem = new FilteredItem(testItem, filter);

            Assert.True(filteredItem.Versions.First().Fields.Any(field => field.FieldId == fieldId));
        }
コード例 #50
0
        public void FilteredItem_DoesNotContainExpectedSharedField()
        {
            Guid fieldId = Guid.NewGuid();

            var filter   = new TestFieldFilter(fieldId);
            var testItem = new FakeItem(sharedFields: new[] { new FakeFieldValue("Fake", fieldId: fieldId), });

            var filteredItem = new FilteredItem(testItem, filter);

            Assert.False(filteredItem.SharedFields.Any(field => field.FieldId == fieldId));
        }
コード例 #51
0
        public void ShouldNotAffectProduct()
        {
            // arrange
            IProduct product = new Product(_qualityAdjustment, FakeItem.Instance());

            // act
            IProduct actual = product.WithAdjustedQuality();

            // assert
            actual.Should().Be(product);
        }
コード例 #52
0
		public void ItemComparer_IsEqual_WhenSharedFieldIsInSourceOnly_AndValueIsEmpty()
		{
			var comparer = new TestItemComparer();

			var sourceItem = new FakeItem(sharedFields: new[] { new FakeFieldValue(string.Empty) });
			var targetItem = new FakeItem();

			var comparison = comparer.Compare(sourceItem, targetItem);

			comparison.AreEqual.Should().BeTrue();
			comparison.ChangedSharedFields.Length.Should().Be(0);
		}
コード例 #53
0
        public void FakeItemAddMultipleChildrenChildListShouldHaveAllChildren()
        {
            var child = new FakeItem(new FieldList());
            var fake = new FakeItem(new FieldList());
            fake.AddChild(child);
            fake.AddChild(child);
            fake.AddChild(child);
            fake.AddChild(child);
            fake.AddChild(child);

            fake.Children.Should().HaveCount(5);
        }
コード例 #54
0
        public void GetById_GetsExpectedItem()
        {
            using (var dataStore = new TestSfsDataStore("/sitecore"))
            {
                var id = Guid.NewGuid();
                var item = new FakeItem(path: "/sitecore", id:id);

                dataStore.Save(item);

                Assert.NotNull(dataStore.GetById(id, "master"));
            }
        }
コード例 #55
0
        public void GetById_ReturnsNull_WhenDatabaseIsIncorrect()
        {
            using (var dataStore = new TestSfsDataStore("/sitecore"))
            {
                var id = Guid.NewGuid();
                var item = new FakeItem(path: "/sitecore", id: id);

                dataStore.Save(item);

                Assert.Null(dataStore.GetById(id, "core"));
            }
        }
コード例 #56
0
ファイル: ItemComparerTests.cs プロジェクト: csteeg/Rainbow
        public void ItemComparer_IsEqual_WhenSharedFieldIsInTargetOnly_AndValueIsEmpty()
        {
            var comparer = new TestItemComparer();

            var sourceItem = new FakeItem();
            var targetItem = new FakeItem(sharedFields: new[] { new FakeFieldValue(string.Empty) });

            var comparison = comparer.Compare(sourceItem, targetItem);

            Assert.True(comparison.AreEqual);
            Assert.Equal(0, comparison.ChangedSharedFields.Length);
        }
コード例 #57
0
        public void Clear_ClearsTree()
        {
            using (var dataStore = new TestSfsDataStore("/sitecore"))
            {
                var item = new FakeItem(path:"/sitecore");

                dataStore.Save(item);

                dataStore.Clear();

                Assert.Empty(dataStore.GetByPath("/sitecore", "master"));
            }
        }
コード例 #58
0
ファイル: RealTest.cs プロジェクト: VGBenjamin/Sitecore-Fakes
        public void ItemTest()
        {
            var demo =  new Demo();

            var fieldId = demo.FieldName;
            const string fieldValue = "demoText";
            var stubList = new FieldList {{fieldId, fieldValue}};
            var fakeItem = new FakeItem(stubList);

            var item = fakeItem;

            demo.GetField(item).ShouldAllBeEquivalentTo(fieldValue);
        }
コード例 #59
0
        public void GetByPathAndId_RetrievesItemByMetadataPath()
        {
            using (var dataStore = new TestSfsDataStore("/sitecore"))
            {
                var item = new FakeItem(path: "/sitecore", name: "sitecore", id: Guid.NewGuid());

                dataStore.Save(item);

                var retrieved = dataStore.GetByPathAndId(item.Path, item.Id, "master");

                Assert.NotNull(retrieved);
                Assert.Equal("/sitecore", retrieved.Path);
            }
        }
コード例 #60
0
        public void GetByPath_RetrievesItemByPath()
        {
            using (var dataStore = new TestSfsDataStore("/sitecore"))
            {
                var item = new FakeItem(path: "/sitecore", name: "sitecore");

                dataStore.Save(item);

                var retrieved = dataStore.GetByPath("/sitecore", "master").ToArray();

                Assert.NotEmpty(retrieved);
                Assert.Equal("/sitecore", retrieved.First().Path);
            }
        }