about summary refs log blame commit diff stats
path: root/tests/unittests/test_server_events.h
blob: 81a436f4188cc48982e3570705e37266e7dda74e (plain) (tree)
1
2
3
4
5
6
7
8
9





                  
void console_doesnt_show_online_presence_when_set_none(void **state);
void console_shows_online_presence_when_set_online(void **state);
void console_shows_online_presence_when_set_all(void **state);
void console_doesnt_show_dnd_presence_when_set_none(void **state);
void console_doesnt_show_dnd_presence_when_set_online(void **state);
void console_shows_dnd_presence_when_set_all(void **state);
void handle_message_error_when_no_recipient(void **state);
void handle_message_error_when_recipient_cancel(void **state);
void handle_message_error_when_recipient_cancel_disables_chat_session(void **state);
void handle_message_error_when_recipient_and_no_type(void **state);
void handle_presence_error_when_no_recipient(void **state);
void handle_presence_error_when_from_recipient(void **state);
void handle_offline_removes_chat_session(void **state);
void lost_connection_clears_chat_sessions(void **state);
n>.signal_bind('x', addn(6)) sd.signal_bind('x', addn(3), priority=1) sd.signal_bind('x', addn(2), priority=1) sd.signal_bind('x', addn(9), priority=0) sd.signal_bind('x', addn(1337), priority=0.7) sd.signal_emit('x') self.assert_(lst.index(3) < lst.index(6)) self.assert_(lst.index(2) < lst.index(6)) self.assert_(lst.index(6) < lst.index(9)) self.assert_(lst.index(1337) < lst.index(6)) self.assert_(lst.index(1337) < lst.index(9)) self.assert_(lst.index(1337) > lst.index(2)) def test_modifying_arguments(self): sd = self.sd lst = [] def modify(s): s.number = 5 def set_number(s): lst.append(s.number) def stopit(s): s.stop() sd.signal_bind('setnumber', set_number) sd.signal_emit('setnumber', number=100) self.assertEqual(100, lst[-1]) sd.signal_bind('setnumber', modify, priority=1) sd.signal_emit('setnumber', number=100) self.assertEqual(5, lst[-1]) lst.append(None) sd.signal_bind('setnumber', stopit, priority=1) sd.signal_emit('setnumber', number=100) self.assertEqual(None, lst[-1]) def test_weak_refs(self): sd = self.sd is_deleted = [False] class Foo(object): def __init__(self): self.alphabet = ['a'] def calc(self, signal): self.alphabet.append(chr(ord(self.alphabet[-1]) + 1)) def __del__(self): is_deleted[0] = True foo = Foo() alphabet = foo.alphabet calc = foo.calc del foo self.assertEqual('a', ''.join(alphabet)) sd.signal_bind('mysignal', calc, weak=True) sd.signal_emit('mysignal') self.assertEqual('ab', ''.join(alphabet)) self.assertFalse(is_deleted[0]) del calc self.assertTrue(is_deleted[0]) def test_weak_refs_dead_on_arrival(self): sd = self.sd is_deleted = [False] class Foo(object): def __init__(self): self.alphabet = ['a'] def calc(self, signal): self.alphabet.append(chr(ord(self.alphabet[-1]) + 1)) def __del__(self): is_deleted[0] = True foo = Foo() alphabet = foo.alphabet self.assertEqual('a', ''.join(alphabet)) sd.signal_bind('mysignal', foo.calc, weak=True) sd.signal_emit('mysignal') self.assertEqual('ab', ''.join(alphabet)) self.assertFalse(is_deleted[0]) del foo sd.signal_emit('mysignal') self.assertEqual('ab', ''.join(alphabet)) self.assertTrue(is_deleted[0]) if __name__ == '__main__': unittest.main()