public override void Warmup(Adapters.IContainerAdapter container) { if (!container.SupportsChildContainer) { return; } using (var childContainer = container.CreateChildContainerAdapter()) { childContainer.Prepare(); ICombined1 scopedCombined1 = (ICombined1)childContainer.Resolve(typeof(ICombined1)); ICombined2 scopedCombined2 = (ICombined2)childContainer.Resolve(typeof(ICombined2)); ICombined3 scopedCombined3 = (ICombined3)childContainer.Resolve(typeof(ICombined3)); if (scopedCombined1 == null || scopedCombined2 == null || scopedCombined3 == null) { throw new Exception(string.Format("Child Container {0} could not create type {1}", container.Name, typeof(ICombined1))); } if (!(scopedCombined1 is ScopedCombined1) || !(scopedCombined2 is ScopedCombined2) || !(scopedCombined3 is ScopedCombined3)) { throw new Exception(string.Format( "Child Container {0} resolved type incorrectly should have been {1} but was {2}", container.Name, typeof(ICombined1), scopedCombined1.GetType())); } } ScopedCombined1.Instances = 0; ScopedCombined2.Instances = 0; ScopedCombined3.Instances = 0; }
public void Combined() { ICombined1 value = _benchmark.Combined(); Assert.IsType <Combined1>(value); }