public void AddCriteriaEvent(CriteriaId id, ICriteriaEvent @event) { AddEventToMap(criteriaEventMap, id, @event); }
public void TestAddCriteriaEvent() { ShardImpl shard = new ShardImpl(new ShardId(1), Stub <ISessionFactoryImplementor>());//new SessionFactoryDefaultMock() try { shard.AddCriteriaEvent(null, null); Assert.Fail("expected nre"); } catch (NullReferenceException nre) { // good } CriteriaId criteriaId = new CriteriaId(2); try { shard.AddCriteriaEvent(criteriaId, null); Assert.Fail("expected nre"); } catch (NullReferenceException nre) { // good } ICriteriaEvent ce = Stub <ICriteriaEvent>();//new CriteriaEventDefaultMock() try { shard.AddCriteriaEvent(null, ce); Assert.Fail("expected nre"); } catch (NullReferenceException nre) { // good } shard.AddCriteriaEvent(criteriaId, ce); //Assert.IsNotNull(shard.GetCriteriaEventMap()); //Assert.Equals(1, shard.getCriteriaEventMap().size()); //Assert.Equals(1, shard.getCriteriaEventMap().get(criteriaId).size()); //Assert.AreSame(ce, shard.getCriteriaEventMap().get(criteriaId).get(0)); // now add another event to the same criteria ICriteriaEvent anotherCe = Stub <ICriteriaEvent>(); //shard.AddCriteriaEvent(criteriaId, anotherCe); //Assert.IsNotNull(shard.getCriteriaEventMap()); //Assert.Equals(1, shard.getCriteriaEventMap().size()); //Assert.Equals(2, shard.getCriteriaEventMap().get(criteriaId).size()); //Assert.AreSame(ce, shard.getCriteriaEventMap().get(criteriaId).get(0)); //Assert.AreSame(anotherCe, shard.getCriteriaEventMap().get(criteriaId).get(1)); // now add an event to a different criteria CriteriaId anotherCriteriaId = new CriteriaId(3); ICriteriaEvent yetAnotherCe = Stub <ICriteriaEvent>(); shard.AddCriteriaEvent(anotherCriteriaId, yetAnotherCe); //Assert.IsNotNull(shard.getCriteriaEventMap()); //Assert.Equals(2, shard.getCriteriaEventMap().size()); //Assert.Equals(2, shard.getCriteriaEventMap().get(criteriaId).size()); //Assert.AreSame(ce, shard.getCriteriaEventMap().get(criteriaId).get(0)); //Assert.AreSame(anotherCe, shard.getCriteriaEventMap().get(criteriaId).get(1)); //Assert.Equals(1, shard.getCriteriaEventMap().get(anotherCriteriaId).size()); //Assert.AreSame(yetAnotherCe, shard.getCriteriaEventMap().get(anotherCriteriaId).get(0)); }