Esempio n. 1
0
        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);
        }