autobus-api_old/AutobusApi.UnitTests/Common/Mappings/MappingTests.cs

56 lines
2.1 KiB
C#

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<MappingTestsFixture>
{
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);
}
}