using AutobusApi.Application.Addresses.Queries; using AutobusApi.Application.Buses.Queries; using AutobusApi.Application.Cities.Queries; using AutobusApi.Application.Companies.Queries; using AutobusApi.Application.Countries.Queries; using AutobusApi.Application.Employees.Queries; using AutobusApi.Application.Regions.Queries; using AutobusApi.Application.Routes.Queries; using AutobusApi.Application.TicketGroups.Queries; using AutobusApi.Application.VehicleEnrollments.Queries; using AutobusApi.Domain.Entities; using AutoMapper; namespace AutobusApi.UnitTests.Common.Mappings; public class MappingTests : IClassFixture { private readonly IConfigurationProvider _configuration; private readonly IMapper _mapper; public MappingTests(MappingTestsFixture fixure) { _configuration = fixure.ConfigurationProvider; _mapper = fixure.Mapper; } [Fact] public void ShouldHaveValidConfiguraion() { _configuration.AssertConfigurationIsValid(); } [Theory] [InlineData(typeof(Country), typeof(CountryDto))] [InlineData(typeof(Region), typeof(RegionDto))] [InlineData(typeof(City), typeof(CityDto))] [InlineData(typeof(Address), typeof(AddressDto))] [InlineData(typeof(Route), typeof(RouteDto))] [InlineData(typeof(RouteAddress), typeof(RouteAddressDto))] [InlineData(typeof(VehicleEnrollment), typeof(VehicleEnrollmentDto))] [InlineData(typeof(RouteAddressDetails), typeof(RouteAddressDetailsDto))] // [InlineData(typeof(TicketGroup), typeof(TicketGroupDto))] [InlineData(typeof(Ticket), typeof(TicketDto))] [InlineData(typeof(Company), typeof(CompanyDto))] [InlineData(typeof(Employee), typeof(EmployeeDto))] [InlineData(typeof(EmployeeDocument), typeof(EmployeeDocumentDto))] [InlineData(typeof(Bus), typeof(BusDto))] // [InlineData(typeof(), typeof())] public void ShouldSupportMappingFromSourceDoDestination(Type source, Type destination) { var instance = Activator.CreateInstance(source); _mapper.Map(instance, source, destination); } }