public void Test_When_CtorMissing_Then_Activator_ThrowsException() { // Arrange var builder = new ExpressionNewObjectBuilder(); // Act var activator = builder.GetActivator <Customer, Sale>(); }
public void Test_When_CtorExist_Then_CorrectActivator_Returns() { // Arrange var builder = new ExpressionNewObjectBuilder(); // Act var activator = builder.GetActivator <CustomerDto, Customer>(); // Assert Assert.IsNotNull(activator); Assert.IsInstanceOfType(activator, typeof(Func <CustomerDto, Customer>)); }
public void Test_When_CtorExist_Then_Call_Returns_Instance() { // Arrange var builder = new ExpressionNewObjectBuilder(); var dto = new CustomerDto { Id = 1, Title = "LLC" }; // Act var activator = builder.GetActivator <CustomerDto, Customer>(); var instance = activator(dto); // Assert Assert.IsNotNull(instance); Assert.IsInstanceOfType(instance, typeof(Customer)); Assert.AreEqual(1, instance.Id); }