Skip to content

Commit

Permalink
Restyled by yapf
Browse files Browse the repository at this point in the history
  • Loading branch information
restyled-commits committed Feb 23, 2024
1 parent 4d24ae7 commit 6973e1a
Showing 1 changed file with 58 additions and 55 deletions.
113 changes: 58 additions & 55 deletions test/auto_tests/self_connection_status_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@ class FriendInfo:
status_message: bytes = b""
name: bytes = b""
request_message: bytes = b""
messages: list[tuple[core.Tox_Message_Type, bytes]] = field(default_factory=list)
messages: list[tuple[core.Tox_Message_Type, bytes]] = field(
default_factory=list)
lossy_packets: list[bytes] = field(default_factory=list)
lossless_packets: list[bytes] = field(default_factory=list)

Expand All @@ -35,9 +36,9 @@ def __init__(self, index: int) -> None:
self.index = index
self.friends = collections.defaultdict(FriendInfo)

def handle_self_connection_status(
self, connection_status: core.Tox_Connection
) -> None:
def handle_self_connection_status(self,
connection_status: core.Tox_Connection
) -> None:
self.connection_status_from_cb = connection_status
raise TestException(connection_status)

Expand All @@ -46,33 +47,35 @@ def handle_friend_request(self, public_key: bytes, message: bytes) -> None:
self.friends[friend_number].request_message = message

def handle_friend_connection_status(
self, friend_number: int, connection_status: core.Tox_Connection,
self,
friend_number: int,
connection_status: core.Tox_Connection,
) -> None:
self.friends[friend_number].connection_status = connection_status

def handle_friend_message(
self, friend_number: int, type_: core.Tox_Message_Type, message: bytes
) -> None:
def handle_friend_message(self, friend_number: int,
type_: core.Tox_Message_Type,
message: bytes) -> None:
self.friends[friend_number].messages.append((type_, message))

def handle_friend_lossy_packet(self, friend_number: int, message: bytes) -> None:
def handle_friend_lossy_packet(self, friend_number: int,
message: bytes) -> None:
self.friends[friend_number].lossy_packets.append(message)
raise Exception("OMG")

def handle_friend_lossless_packet(self, friend_number: int, message: bytes) -> None:
def handle_friend_lossless_packet(self, friend_number: int,
message: bytes) -> None:
self.friends[friend_number].lossless_packets.append(message)

def handle_friend_name(self, friend_number: int, name: bytes) -> None:
self.friends[friend_number].name = name

def handle_friend_status(
self, friend_number: int, status: core.Tox_User_Status
) -> None:
def handle_friend_status(self, friend_number: int,
status: core.Tox_User_Status) -> None:
self.friends[friend_number].status = status

def handle_friend_status_message(
self, friend_number: int, status_message: bytes
) -> None:
def handle_friend_status_message(self, friend_number: int,
status_message: bytes) -> None:
self.friends[friend_number].status_message = status_message


Expand All @@ -98,22 +101,24 @@ def is_online() -> bool:
return bool(
self.tox1.connection_status == core.TOX_CONNECTION_NONE
or self.tox2.connection_status == core.TOX_CONNECTION_NONE
or self.tox3.connection_status == core.TOX_CONNECTION_NONE
)
or self.tox3.connection_status == core.TOX_CONNECTION_NONE)

# At most 20 seconds.
self._iterate(
1000, is_online,
1000,
is_online,
)

def _wait_for_friend_online(self) -> None:
def is_online() -> bool:
return (
self.tox1.friends[0].connection_status == core.TOX_CONNECTION_NONE
or self.tox2.friends[0].connection_status == core.TOX_CONNECTION_NONE
or self.tox2.friends[1].connection_status == core.TOX_CONNECTION_NONE
or self.tox3.friends[0].connection_status == core.TOX_CONNECTION_NONE
)
return (self.tox1.friends[0].connection_status ==
core.TOX_CONNECTION_NONE
or self.tox2.friends[0].connection_status ==
core.TOX_CONNECTION_NONE
or self.tox2.friends[1].connection_status ==
core.TOX_CONNECTION_NONE
or self.tox3.friends[0].connection_status ==
core.TOX_CONNECTION_NONE)

# At most 5 seconds.
self._iterate(250, is_online)
Expand All @@ -123,42 +128,43 @@ def test_connection_status_cb(self) -> None:
# Test that exceptions can pass through C code.
with self.assertRaises(TestException) as ex:
self._wait_for_self_online()
self.assertEqual(tox.connection_status, tox.connection_status_from_cb)
self.assertEqual(tox.connection_status,
tox.connection_status_from_cb)
self.assertEqual(ex.exception.status, tox.connection_status)

def test_friend_add(self) -> None:
self.tox1.friend_add(self.tox2.address, b"are you gonna be my best friend?")
self.tox2.friend_add(self.tox3.address, b"lala lala lala la I'm Mr. Happy Face")
self.tox1.friend_add(self.tox2.address,
b"are you gonna be my best friend?")
self.tox2.friend_add(self.tox3.address,
b"lala lala lala la I'm Mr. Happy Face")
self._wait_for_friend_online()
self.assertEqual(
self.tox2.friends[
self.tox2.friend_by_public_key(self.tox1.public_key)
].request_message,
self.tox2.friends[self.tox2.friend_by_public_key(
self.tox1.public_key)].request_message,
b"are you gonna be my best friend?",
)
self.assertEqual(
self.tox3.friends[
self.tox3.friend_by_public_key(self.tox2.public_key)
].request_message,
self.tox3.friends[self.tox3.friend_by_public_key(
self.tox2.public_key)].request_message,
b"lala lala lala la I'm Mr. Happy Face",
)

def test_friend_by_public_key(self) -> None:
with self.assertRaises(core.ApiException) as ex:
# We're not our own friend.
self.tox1.friend_by_public_key(self.tox1.public_key)
self.assertEqual(
ex.exception.error, core.TOX_ERR_FRIEND_BY_PUBLIC_KEY_NOT_FOUND
)
self.assertEqual(ex.exception.error,
core.TOX_ERR_FRIEND_BY_PUBLIC_KEY_NOT_FOUND)

def test_send_message(self) -> None:
self._wait_for_friend_online()
self.tox1.friend_send_message(0, core.TOX_MESSAGE_TYPE_NORMAL, b"hello there!")
friend = self.tox2.friends[self.tox2.friend_by_public_key(self.tox1.public_key)]
self.tox1.friend_send_message(0, core.TOX_MESSAGE_TYPE_NORMAL,
b"hello there!")
friend = self.tox2.friends[self.tox2.friend_by_public_key(
self.tox1.public_key)]
self._iterate(100, lambda: not friend.messages)
self.assertEqual(
friend.messages[0], (core.TOX_MESSAGE_TYPE_NORMAL, b"hello there!")
)
self.assertEqual(friend.messages[0],
(core.TOX_MESSAGE_TYPE_NORMAL, b"hello there!"))

# TODO(iphydf): This one doesn't pass. Investigate why.
# def test_send_lossy_packet(self) -> None:
Expand All @@ -172,7 +178,8 @@ def test_send_message(self) -> None:
def test_send_lossless_packet(self) -> None:
self._wait_for_friend_online()
self.tox1.friend_send_lossless_packet(0, b"\xa0general kenobi.")
friend = self.tox2.friends[self.tox2.friend_by_public_key(self.tox1.public_key)]
friend = self.tox2.friends[self.tox2.friend_by_public_key(
self.tox1.public_key)]
self._iterate(100, lambda: not friend.lossless_packets)
self.assertEqual(friend.lossless_packets[0], b"\xa0general kenobi.")

Expand All @@ -185,23 +192,20 @@ def test_status(self) -> None:
friend = self.tox2.friends[friend_number]
self._iterate(100, lambda: friend.status == core.TOX_USER_STATUS_NONE)
self.assertEqual(friend.status, core.TOX_USER_STATUS_AWAY)
self.assertEqual(
self.tox2.friend_get_status(friend_number), core.TOX_USER_STATUS_AWAY
)
self.assertEqual(self.tox2.friend_get_status(friend_number),
core.TOX_USER_STATUS_AWAY)

def test_name(self) -> None:
self._wait_for_friend_online()
self.assertEqual(self.tox1.name, b"")
self.tox1.name = b"Now that's a name I haven't heard in a long time"
self.assertEqual(
self.tox1.name, b"Now that's a name I haven't heard in a long time"
)
self.assertEqual(self.tox1.name,
b"Now that's a name I haven't heard in a long time")
friend_number = self.tox2.friend_by_public_key(self.tox1.public_key)
friend = self.tox2.friends[friend_number]
self._iterate(100, lambda: friend.name == b"")
self.assertEqual(
friend.name, b"Now that's a name I haven't heard in a long time"
)
self.assertEqual(friend.name,
b"Now that's a name I haven't heard in a long time")
self.assertEqual(
self.tox2.friend_get_name(friend_number),
b"Now that's a name I haven't heard in a long time",
Expand All @@ -216,9 +220,8 @@ def test_status_message(self) -> None:
friend = self.tox2.friends[friend_number]
self._iterate(100, lambda: friend.status_message == b"")
self.assertEqual(friend.status_message, b"Python rocks!")
self.assertEqual(
self.tox2.friend_get_status_message(friend_number), b"Python rocks!"
)
self.assertEqual(self.tox2.friend_get_status_message(friend_number),
b"Python rocks!")


if __name__ == "__main__":
Expand Down

0 comments on commit 6973e1a

Please sign in to comment.