From d77414f939133fc3427d19f14cbc3ca2317b6b8c Mon Sep 17 00:00:00 2001
From: Tom Niget <zippedfire@free.fr>
Date: Tue, 18 Jun 2024 14:24:42 +0200
Subject: [PATCH] py2to3: fix various python2 test and types breakings

---
 re6st/registry.py                                | 2 +-
 re6st/tests/test_end2end/test_registry_client.py | 9 +++++----
 re6st/tests/test_network/test_net.py             | 3 +--
 re6st/tests/test_unit/test_registry.py           | 2 +-
 4 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/re6st/registry.py b/re6st/registry.py
index 85e7a9a..a75b9ae 100644
--- a/re6st/registry.py
+++ b/re6st/registry.py
@@ -816,7 +816,7 @@ class RegistryClient(object):
             kw = getcallargs(*args, **kw)
             query = '/' + name
             if kw:
-                if any(type(v) is not str for v in kw.values()):
+                if any(not isinstance(v, (str, bytes)) for v in kw.values()):
                     raise TypeError(kw)
                 query += '?' + urlencode(kw)
             url = self._path + query
diff --git a/re6st/tests/test_end2end/test_registry_client.py b/re6st/tests/test_end2end/test_registry_client.py
index ad62851..1488362 100644
--- a/re6st/tests/test_end2end/test_registry_client.py
+++ b/re6st/tests/test_end2end/test_registry_client.py
@@ -70,7 +70,7 @@ class TestRegistryClientInteract(unittest.TestCase):
             self.fail("Request token failed, no token in database")
         # token: tuple[unicode,]
         token = str(token[0])
-        self.assertEqual(client.isToken(token), "1")
+        self.assertEqual(client.isToken(token).decode(), "1")
 
         # request ca
         ca = client.getCa()
@@ -78,7 +78,7 @@ class TestRegistryClientInteract(unittest.TestCase):
         # request a cert and get cn
         key, csr = tools.generate_csr()
         cert = client.requestCertificate(token, csr)
-        self.assertEqual(client.isToken(token), '', "token should be deleted")
+        self.assertEqual(client.isToken(token).decode(), '', "token should be deleted")
 
         # creat x509.cert object
         def write_to_temp(text):
@@ -97,18 +97,19 @@ class TestRegistryClientInteract(unittest.TestCase):
 
         # verfiy cn and prefix
         prefix = client.cert.prefix
-        cn = client.getNodePrefix(email)
+        cn = client.getNodePrefix(email).decode()
         self.assertEqual(tools.prefix2cn(prefix), cn)
 
         # simulate the process in cache
         # just prove works
         net_config = client.getNetworkConfig(prefix)
+        self.assertIsNotNone(net_config)
         net_config = json.loads(zlib.decompress(net_config))
         self.assertEqual(net_config[u'max_clients'], self.max_clients)
 
         # no re6stnet, empty result
         bootpeer = client.getBootstrapPeer(prefix)
-        self.assertEqual(bootpeer, "")
+        self.assertEqual(bootpeer.decode(), "")
 
         # server should not die
         self.assertIsNone(self.server.proc.poll())
diff --git a/re6st/tests/test_network/test_net.py b/re6st/tests/test_network/test_net.py
index e298ace..25030c3 100644
--- a/re6st/tests/test_network/test_net.py
+++ b/re6st/tests/test_network/test_net.py
@@ -8,8 +8,7 @@ import logging
 import random
 from pathlib import Path
 
-import network_build
-import re6st_wrap
+from . import network_build, re6st_wrap
 
 PING_PATH = str(Path(__file__).parent.resolve() / "ping.py")
 
diff --git a/re6st/tests/test_unit/test_registry.py b/re6st/tests/test_unit/test_registry.py
index 4e3cf9a..288f998 100644
--- a/re6st/tests/test_unit/test_registry.py
+++ b/re6st/tests/test_unit/test_registry.py
@@ -177,7 +177,7 @@ class TestRegistryServer(unittest.TestCase):
         request.send_header.assert_any_call("Content-Length", str(len(result)))
         request.send_header.assert_any_call(
             registry.HMAC_HEADER,
-            base64.b64encode(hmac.HMAC(key, result, hashlib.sha1).digest()))
+            base64.b64encode(hmac.HMAC(key, result, hashlib.sha1).digest()).decode("ascii"))
         request.wfile.write.assert_called_once_with(result)
 
         # remove the create session \n
-- 
2.30.9