Esempio n. 1
0
        public void TeamDataEntityOnTeamEntityProfile_WhenMappingFromPopulatedCarNumbersObject_ExpectPopulatedTeamEntity()
        {
            var carNumbersObjectFactory = new CarNumbersObjectFactory(() => new CarNumbersObject());       // TODO: Mock it
            var teamEntityFactory       = new IntegerIdentityFactory <TeamEntity>(() => new TeamEntity()); // TODO: Mock it

            var assembly            = Assembly.GetAssembly(typeof(ApplicationMaps));
            var mapperConfiguration = new MapperConfiguration(c => c.AddProfiles(assembly));
            var mapper        = mapperConfiguration.CreateMapper();
            var mapperService = new AutoMapperMapperService(mapper);

            const int teamDataEntityId = 1;
            var       carNumbersObject = carNumbersObjectFactory.Create(teamDataEntityId);

            carNumbersObject.CarNumberDriver1 = 23;
            carNumbersObject.CarNumberDriver2 = 24;

            const int teamEntityId = 1;
            var       sut          = teamEntityFactory.Create(teamEntityId);

            mapperService.Map(carNumbersObject, sut);

            sut.Should().NotBeNull();
            sut.CarNumberDriver1.Should().Be(carNumbersObject.CarNumberDriver1);
            sut.CarNumberDriver2.Should().Be(carNumbersObject.CarNumberDriver2);
        }
        public void CarNumberDataEntitiesToCarNumbersObjectMapper_WhenInvokingMapMethodWithNullParameter_ExpectException()
        {
            var factory = new CarNumbersObjectFactory(() => new CarNumbersObject()); // TODO: Mock it
            var mapper  = new Application.Maps.Manual.CarNumberDataEntitiesToCarNumbersObjectMapper(factory);

            var action = new Action(() =>
            {
                var _ = mapper.Map(null);
            });

            action.Should().Throw <ArgumentNullException>();
        }
        public void CarNumberDataEntitiesToCarNumbersObjectMapper_WhenInvokingMapMethodWithEmptyList_ExpectException()
        {
            var factory = new CarNumbersObjectFactory(() => new CarNumbersObject()); // TODO: Mock it
            var mapper  = new Application.Maps.Manual.CarNumberDataEntitiesToCarNumbersObjectMapper(factory);

            // ReSharper disable once CollectionNeverUpdated.Local
            var list = new List <CarNumberDataEntity>();

            var action = new Action(() =>
            {
                var _ = mapper.Map(list);
            });

            action.Should().Throw <ArgumentOutOfRangeException>();
        }
        public void CarNumberDataEntitiesToCarNumbersObjectMapper_WhenInvokingMapMethodWithOverpopulatedList_ExpectException()
        {
            var factory = new CarNumbersObjectFactory(() => new CarNumbersObject()); // TODO: Mock it
            var mapper  = new Application.Maps.Manual.CarNumberDataEntitiesToCarNumbersObjectMapper(factory);

            var list = new List <CarNumberDataEntity> {
                new CarNumberDataEntity(), new CarNumberDataEntity(), new CarNumberDataEntity()
            };

            var action = new Action(() =>
            {
                var _ = mapper.Map(list);
            });

            action.Should().Throw <ArgumentOutOfRangeException>();
        }
 public TeamDomainModelExportService(
     TeamDomainService domainService,
     DataService dataService,
     IIntegerIdentityFactory <TeamDataEntity> teamDataEntityFactory,
     IIntegerIdentityFactory <ChassisHandlingDataEntity> chassisHandlingDataEntityFactory,
     CarNumbersObjectFactory carNumbersObjectFactory,
     IMapperService mapperService,
     CarNumbersObjectToCarNumberDataEntitiesMapper carNumbersMapper)
 {
     _domainService                    = domainService ?? throw new ArgumentNullException(nameof(domainService));
     _dataService                      = dataService ?? throw new ArgumentNullException(nameof(dataService));
     _teamDataEntityFactory            = teamDataEntityFactory ?? throw new ArgumentNullException(nameof(teamDataEntityFactory));
     _chassisHandlingDataEntityFactory = chassisHandlingDataEntityFactory ?? throw new ArgumentNullException(nameof(chassisHandlingDataEntityFactory));
     _carNumbersObjectFactory          = carNumbersObjectFactory ?? throw new ArgumentNullException(nameof(carNumbersObjectFactory));
     _mapperService                    = mapperService ?? throw new ArgumentNullException(nameof(mapperService));
     _carNumbersMapper                 = carNumbersMapper ?? throw new ArgumentNullException(nameof(carNumbersMapper));
 }
Esempio n. 6
0
 public CarNumberDataEntitiesToCarNumbersObjectMapper(CarNumbersObjectFactory factory)
 {
     _factory = factory ?? throw new ArgumentNullException(nameof(factory));
 }
Esempio n. 7
0
        public void TeamDataEntityOnTeamEntityProfile_WhenMappingFromPopulatedTeamEntity_ExpectPopulatedCarNumbersObject()
        {
            var teamDataEntityFactory            = new IntegerIdentityFactory <TeamDataEntity>(() => new TeamDataEntity(new LanguageCatalogueValue())); // TODO: Mock it
            var chassisHandlingDataEntityFactory = new IntegerIdentityFactory <ChassisHandlingDataEntity>(() => new ChassisHandlingDataEntity());       // TODO: Mock it
            var carNumbersObjectFactory          = new CarNumbersObjectFactory(() => new CarNumbersObject());                                           // TODO: Mock it
            var teamEntityFactory = new IntegerIdentityFactory <TeamEntity>(() => new TeamEntity());                                                    // TODO: Mock it

            var assembly            = Assembly.GetAssembly(typeof(ApplicationMaps));
            var mapperConfiguration = new MapperConfiguration(c => c.AddProfiles(assembly));
            var mapper        = mapperConfiguration.CreateMapper();
            var mapperService = new AutoMapperMapperService(mapper);

            // Initialise data entities using unique non-default dummy values to verify mappings
            const int teamDataEntityId = 1;
            var       teamDataEntity   = teamDataEntityFactory.Create(teamDataEntityId);

            teamDataEntity.Name.Shared      = "UnitTest";
            teamDataEntity.LastPosition     = 11;
            teamDataEntity.LastPoints       = 12;
            teamDataEntity.FirstGpTrack     = 13;
            teamDataEntity.FirstGpYear      = 14;
            teamDataEntity.Wins             = 15;
            teamDataEntity.YearlyBudget     = 16;
            teamDataEntity.UnknownA         = 17;
            teamDataEntity.CountryMapId     = 18;
            teamDataEntity.LocationPointerX = 19;
            teamDataEntity.LocationPointerY = 20;
            teamDataEntity.TyreSupplierId   = 21;

            const int chassisHandlingDataEntityId = 2;
            var       chassisHandlingDataEntity   = chassisHandlingDataEntityFactory.Create(chassisHandlingDataEntityId);

            chassisHandlingDataEntity.Value = 22;

            var carNumbersObject = carNumbersObjectFactory.Create(teamDataEntityId);

            carNumbersObject.CarNumberDriver1 = 23;
            carNumbersObject.CarNumberDriver2 = 24;

            // Initialise using values used in earlier initialisation to verify reverse mappings
            var teamEntity = teamEntityFactory.Create(teamDataEntity.Id);

            teamEntity.TeamId           = teamDataEntity.Id + 1;
            teamEntity.Name             = teamDataEntity.Name.Shared;
            teamEntity.LastPosition     = teamDataEntity.LastPosition;
            teamEntity.LastPoints       = teamDataEntity.LastPoints;
            teamEntity.FirstGpTrack     = teamDataEntity.FirstGpTrack;
            teamEntity.FirstGpYear      = teamDataEntity.FirstGpYear;
            teamEntity.Wins             = teamDataEntity.Wins;
            teamEntity.YearlyBudget     = teamDataEntity.YearlyBudget;
            teamEntity.CountryMapId     = teamDataEntity.CountryMapId;
            teamEntity.LocationPointerX = teamDataEntity.LocationPointerX;
            teamEntity.LocationPointerY = teamDataEntity.LocationPointerY;
            teamEntity.TyreSupplierId   = teamDataEntity.TyreSupplierId;
            teamEntity.ChassisHandling  = chassisHandlingDataEntity.Value;
            teamEntity.CarNumberDriver1 = carNumbersObject.CarNumberDriver1;
            teamEntity.CarNumberDriver2 = carNumbersObject.CarNumberDriver2;

            var newCarNumbersObject = carNumbersObjectFactory.Create(teamEntity.Id);
            var sut = mapperService.Map(teamEntity, newCarNumbersObject);

            sut.Should().NotBeNull();
            sut.CarNumberDriver1.Should().Be(teamEntity.CarNumberDriver1);
            sut.CarNumberDriver2.Should().Be(teamEntity.CarNumberDriver2);
        }