public void should_fail_if_more_than_one_constructor_matched() { // --arrange var target = new GetConstructorWithMaxParametersCount(); // --act Action actual = () => target.Process(new BuildSessionMock(Unit.IsType <Bad>().ToBuildChain())); // --assert actual.Should().ThrowExactly <ArmatureException>().Which.Message.Should().StartWith("More than one constructor with max parameters count for type"); }
public void should_return_no_constructor() { // --arrange var target = new GetConstructorWithMaxParametersCount(); var actual = new BuildSessionMock(Unit.IsType <NoCtor>().ToBuildChain()); // --act target.Process(actual); // --assert actual.BuildResult.HasValue.Should().BeFalse(); }
public void should_return_constructor() { // --arrange var target = new GetConstructorWithMaxParametersCount(); var actual = new BuildSessionMock(Unit.IsType <Good>().ToBuildChain()); // --act target.Process(actual); // --assert actual.BuildResult.Value.As <ConstructorInfo>().GetParameters().Select(_ => _.ParameterType).Should().Equal(typeof(int), typeof(string), typeof(bool)); }