public void GivenAnyCondition_ActiveByIndex_MustBeActived() { var prov = new NullIProposalProvider(); var f = new ValueServiceScopeFactory { Factory = new Dictionary <Type, Func <object> > { [typeof(NullIProposalProvider)] = () => prov } }; var eng = new ProposalEngine(f); eng.Add(new NullProposalDescription { DescritionUri = new Uri("http://localhost:4200"), Name = "any", ProviderType = typeof(NullIProposalProvider) }); Assert.AreEqual(1, eng.Count); var obj = eng.Active(0); Assert.IsNotNull(obj.Provider); Assert.AreEqual(prov, obj.Provider); obj.Dispose(); }
public void GivenAnyCondition_ActiveOutOfRang_MustThrowException(int count, int index) { var prov = new NullIProposalProvider(); var f = new ValueServiceScopeFactory { Factory = new Dictionary <Type, Func <object> > { [typeof(NullIProposalProvider)] = () => prov } }; var eng = new ProposalEngine(f); for (int i = 0; i < count; i++) { eng.Add(new NullProposalDescription { DescritionUri = new Uri("http://localhost:420" + i), Name = "any" + i, ProviderType = typeof(NullIProposalProvider) }); } Assert.ThrowsException <ArgumentOutOfRangeException>(() => eng.Active(index)); }
public static void AddProposalEngine(this ProposalEngine proEng) { proEng.Add(new Dm5ProposalDescrition()); proEng.Add(new BilibiliProposalDescription()); }