public void Should_run_phased_resolution_actions() { var handlerCount = 0; var currentPhase = NameResolutionPhase.ResolvePackageNames; Action <INameManager, NameResolutionPhase> expectPhase = (nm, p) => { Assert.IsTrue(p >= currentPhase); currentPhase = p; handlerCount++; }; var r = new Random(); for (var i = 0; i < 1000; i++) { var phase = (NameResolutionPhase)(r.Next((int)NameResolutionPhase.ResolvePackageNames, (int)NameResolutionPhase.InitializeRunables + 1)); _nameManager.AddResolutionHandler(phase, expectPhase, phase); } _nameManager.Bind(); Assert.AreEqual(1000, handlerCount); }