public void testCallManagerIndexer() { Assert.AreEqual(0, _manager.Count); // create a call instance IStateMachine sm = _manager.createOutboundCall("1234"); Assert.AreEqual(1, _manager.Count); // check if index match Assert.AreEqual(sm, _manager[sm.Session]); // destroy call instance _manager.DestroySession(sm.Session); Assert.AreEqual(0, _manager.Count); // check nonexisting index (NullStateMachine expected Assert.AreEqual(-1, _manager[1].Session); Assert.AreEqual(EStateId.NULL, _manager[1].StateId); // Many call instances IStateMachine sm1 = _manager.createOutboundCall("1234"); IStateMachine sm2 = this.makeIncomingCall(2); // check if index match Assert.AreEqual(sm1, _manager[sm1.Session]); Assert.AreEqual(sm2, _manager[sm2.Session]); // destroy calls _manager.DestroySession(sm1.Session); _manager.DestroySession(sm2.Session); }