public void a_new_registry_without_a_ctor_strategy_should_not_overwrite_previous() { var registryA = new StringARegistry(); registryA.UseModestCtor(); var registryB = new StringARegistry(); var construktion = new Construktion(); construktion.AddRegistry(registryA); construktion.AddRegistry(registryB); //act var result = construktion.Construct <MultiCtor>(); result.UsedModestCtor.ShouldBe(true); }
public void should_use_the_last_registered_ctor_strategy() { var registryA = new StringARegistry(); registryA.UseModestCtor(); var registryB = new StringARegistry(); registryB.UseGreedyCtor(); var construktion = new Construktion(); construktion.AddRegistry(registryA); construktion.AddRegistry(registryB); //act var result = construktion.Construct <MultiCtor>(); result.UsedGreedyCtor.ShouldBe(true); }