public void Resolves_ThrowsWhenUnableToFind() { var resolver = new DefaultForeignKeyPropertyResolver(); var fk = Assert.Throws <InvalidOperationException>(() => resolver.ResolveForeignKeyProperty(typeof(Product), typeof(Product), out var fkRelation)); Assert.Equal("Could not resolve foreign key property. Source type 'Dommel.Tests.Product'; including type: 'Dommel.Tests.Product'.", fk.Message); }
public void Resolves_OneToMany_WithAttributes() { // Arrange var resolver = new DefaultForeignKeyPropertyResolver(); // Act var fk = resolver.ResolveForeignKeyProperty(typeof(ProductDto), typeof(ProductOptionDto), out var fkRelation); // Assert Assert.Equal(typeof(ProductOptionDto).GetProperty(nameof(ProductOptionDto.ProductId)), fk); Assert.Equal(ForeignKeyRelation.OneToMany, fkRelation); }
public void Resolves_OneToOne_WithDefaultConvetions() { // Arrange var resolver = new DefaultForeignKeyPropertyResolver(); // Act var fk = resolver.ResolveForeignKeyProperty(typeof(Product), typeof(Category), out var fkRelation); // Assert Assert.Equal(typeof(Product).GetProperty(nameof(Product.CategoryId)), fk); Assert.Equal(ForeignKeyRelation.OneToOne, fkRelation); }