예제 #1
0
        private GameDataRepository GetGameDataRepository()
        {
            var dropMapper              = new DropMapper();
            var passiveEffectMapper     = new PassiveEffectMapper();
            var effectRequirementMapper = new EffectRequirementMapper();
            var triggeredEffectMapper   = new TriggeredEffectMapper(effectRequirementMapper);
            var effectsMapper           = new EffectsGroupMapper(passiveEffectMapper, triggeredEffectMapper);
            var propertyMapper          = new PropertyMapper();
            var entityMapper            = new EntityMapper(dropMapper, effectsMapper, propertyMapper);
            var entitiesMapper          = new EntitiesMapper(entityMapper);

            var entityGroupSubscriptionMapper = new EntityGroupSubscriptionMapper();
            var entityGroupMapper             = new EntityGroupMapper(entityGroupSubscriptionMapper);
            var entityGroupsMapper            = new EntityGroupsMapper(entityGroupMapper);

            var mapperFactory           = new MapperFactory(entitiesMapper, entityGroupsMapper);
            var fileStorageService      = new LocalFileService();
            var xmlSerializationService = new XmlSerializationService();

            var userSettingsService = new Mock <IUserSettingsService>();

            userSettingsService.Setup(obj => obj.Get()).Returns(new UserSettings()
            {
                GameInstallLocation = ".."
            });

            return(new GameDataRepository(fileStorageService, mapperFactory, xmlSerializationService, userSettingsService.Object));
        }
예제 #2
0
        public void ConvertToXml_MapsCorrectly()
        {
            //Arrange
            var passiveEffectMapper = new PassiveEffectMapper();
            var domainSource        = new PassiveEffect("name")
            {
                MatchAllTags = "true",
                Operation    = "operation",
                Tags         = "tags",
                Value        = "value"
            };

            //Act
            var xml = passiveEffectMapper.Convert(domainSource);

            //Assert
            Assert.IsInstanceOfType(xml, typeof(entity_classesEntity_classEffect_groupPassive_effect));
            Assert.AreEqual("name", xml.name);
            Assert.AreEqual("true", xml.match_all_tags);
            Assert.AreEqual("operation", xml.operation);
            Assert.AreEqual("tags", xml.tags);
            Assert.AreEqual("value", xml.value);
        }
예제 #3
0
        public void ConvertToDomain_MapsCorrectly()
        {
            //Arrange
            var passiveEffectMapper = new PassiveEffectMapper();
            var xmlSource           = new entity_classesEntity_classEffect_groupPassive_effect()
            {
                match_all_tags = "true",
                name           = "name",
                operation      = "operation",
                tags           = "tags",
                value          = "value"
            };

            //Act
            var passiveEffect = passiveEffectMapper.Convert(xmlSource);

            //Assert
            Assert.IsInstanceOfType(passiveEffect, typeof(PassiveEffect));
            Assert.AreEqual("true", passiveEffect.MatchAllTags);
            Assert.AreEqual("name", passiveEffect.Name);
            Assert.AreEqual("operation", passiveEffect.Operation);
            Assert.AreEqual("tags", passiveEffect.Tags);
            Assert.AreEqual("value", passiveEffect.Value);
        }