def test_one_jid_can_be_removed_from_sessions(self):
        self.set_date('2011-09-21 01:05:10')
        control = '/tmp/stream_test'
        open(control, 'w')

        session = StreamSessionManager()

        session.add('*****@*****.**', timeout = 10)
        session.add('*****@*****.**', timeout = 20, condition = lambda: os.path.exists(control))
        session.add('*****@*****.**', timeout = 30)
        session.add('*****@*****.**', condition = lambda: os.path.exists(control))

        self.set_date('2011-09-21 01:05:11')
        self.assertEquals(len(session.receivers), 3)
        self.assertTrue('*****@*****.**' in session.receivers)
        self.assertTrue('*****@*****.**' in session.receivers)
        self.assertTrue('*****@*****.**' in session.receivers)

        session.remove('*****@*****.**')
        self.assertEquals(len(session.receivers), 2)
        self.assertTrue('*****@*****.**' in session.receivers)
        self.assertTrue('*****@*****.**' in session.receivers)
        self.assertTrue('*****@*****.**' not in session.receivers)