예제 #1
0
        public void CreateItemFromRequest_ShouldFillChargeIfPresentInItemTemplateData()
        {
            var itemData                = new ItemData();
            var itemTemplate            = CreateItemTemplate();
            var partialItemTemplateData = new PartialItemTemplateData {
                Charge = 2
            };

            _jsonUtil.DeserializeOrCreate <PartialItemTemplateData>("some-item-template-data")
            .Returns(partialItemTemplateData);
            _jsonUtil.SerializeNonNull(Arg.Any <ItemData>())
            .Returns("some-json");
            _jsonUtil.When(x => x.Serialize(itemData))
            .Do(_ => itemData.Charge.Should().Be(2));

            var actualItem = _factory.CreateItem(ItemOwnerType.Character, 10, itemTemplate, itemData);

            actualItem.Data.Should().BeEquivalentTo("some-json");
        }