예제 #1
0
        public void When_Tag_Mvc_Is_Assigned_Then_TagsList_Contains_Mvc()
        {
            Mock<ITagTarget> targetMock = CreateStandardTargetMock();

            var storageMock = new Mock<ITagStorageAdapter>();

            storageMock
                .Setup(x => x.LoadTagMappingsFor(It.IsAny<TagTargetReference>()))
                .Returns(new List<TagMapping>());

            storageMock.Setup(x => x.SaveTagMapping(It.IsAny<TagMapping>())).Verifiable();

            Tagger tagger = new Tagger(targetMock.Object, storageMock.Object);

            tagger.AddTag(new Tag("Mvc"));

            Assert.That(tagger.Tags, Contains.Item(new Tag("Mvc")));
        }
예제 #2
0
        public void When_Tag_Mvc_Is_Assigned_And_Has_Been_Already_Assigned_Then_Storage_Is_Not_Called()
        {
            Mock<ITagTarget> targetMock = CreateStandardTargetMock();

            var storageMock = new Mock<ITagStorageAdapter>();

            storageMock.WithTagInStorage("Mvc");
            storageMock.Setup(x => x.SaveTagMapping(It.IsAny<TagMapping>())).Throws<Exception>();

            Tagger tagger = new Tagger(targetMock.Object, storageMock.Object);

            Assert.DoesNotThrow(() => tagger.AddTag(new Tag("Mvc")));
        }