From c3e1a4a4282f4bbe56a13dbd606b7c9a651334f2 Mon Sep 17 00:00:00 2001
From: Inso <insomniak.fr@gmail.com>
Date: Wed, 27 Jan 2016 20:29:44 +0100
Subject: [PATCH] Fix error when less than 6 nodes are available

---
 src/sakia/core/net/api/bma/access.py                        | 6 ++++--
 .../tests/functional/certification/test_certification.py    | 4 ++--
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/src/sakia/core/net/api/bma/access.py b/src/sakia/core/net/api/bma/access.py
index fd0fa7ee..40938012 100644
--- a/src/sakia/core/net/api/bma/access.py
+++ b/src/sakia/core/net/api/bma/access.py
@@ -297,10 +297,12 @@ class BmaAccess(QObject):
         .. note:: If one node accept the requests (returns 200),
         the broadcast should be considered accepted by the network.
         """
-        nodes = self._network.synced_nodes
+        nodes = random.sample(self._network.synced_nodes, 6) \
+            if len(self._network.synced_nodes) > 6 \
+            else self._network.synced_nodes
         replies = []
         if len(nodes) > 0:
-            for node in random.sample(nodes, 6):
+            for node in nodes:
                 logging.debug("Trying to connect to : " + node.pubkey)
                 conn_handler = node.endpoint.conn_handler()
                 req = request(conn_handler, **req_args)
diff --git a/src/sakia/tests/functional/certification/test_certification.py b/src/sakia/tests/functional/certification/test_certification.py
index 7be9015d..57176680 100644
--- a/src/sakia/tests/functional/certification/test_certification.py
+++ b/src/sakia/tests/functional/certification/test_certification.py
@@ -65,8 +65,8 @@ class TestCertificationDialog(unittest.TestCase, QuamashTest):
             self.assertEqual(result, QDialog.Accepted)
 
         def close_dialog():
-            if certification_dialog.isVisible():
-                certification_dialog.close()
+            if certification_dialog.widget.isVisible():
+                certification_dialog.widget.close()
 
         async def exec_test():
             await asyncio.sleep(1)
-- 
GitLab