[SSSD] [PATCH] SSSDConfig: Return correct types in python3
Lukas Slebodnik
lslebodn at redhat.com
Tue Aug 4 13:13:15 UTC 2015
ehlo,
attached patch fixes ticket #2699
On other places we do not require to return list by dict.keys().
There were patterns:
something in a_dictionary.keys()
", ".join(a_dictionary.keys()))
LS
-------------- next part --------------
>From 952680d95bbc399d965cb09853e326f7f8e99554 Mon Sep 17 00:00:00 2001
From: Lukas Slebodnik <lslebodn at redhat.com>
Date: Tue, 4 Aug 2015 15:03:44 +0200
Subject: [PATCH] SSSDConfig: Return correct types in python3
In Python 3, dict.keys() returns a view rather than a list. Since dict keys
aren't in any particular order, indexing them doesn't make sense.
Resolves:
https://fedorahosted.org/sssd/ticket/2699
---
src/config/SSSDConfig/__init__.py.in | 4 ++--
src/config/SSSDConfigTest.py | 2 ++
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/config/SSSDConfig/__init__.py.in b/src/config/SSSDConfig/__init__.py.in
index 7d361026c09ce8fd8d6a69f6bb3f3817bc3d68ba..ac244d8bf71a683e217afc3f93f40446bc241f86 100644
--- a/src/config/SSSDConfig/__init__.py.in
+++ b/src/config/SSSDConfig/__init__.py.in
@@ -1498,7 +1498,7 @@ class SSSDConfig(SSSDChangeConf):
if srv not in configured_services:
del service_dict[srv]
- active_services = service_dict.keys()
+ active_services = list(service_dict.keys())
else:
active_services = []
@@ -1781,7 +1781,7 @@ class SSSDConfig(SSSDChangeConf):
if dom not in configured_domains:
del domain_dict[dom]
- active_domains = domain_dict.keys()
+ active_domains = list(domain_dict.keys())
else:
active_domains = []
diff --git a/src/config/SSSDConfigTest.py b/src/config/SSSDConfigTest.py
index 1d6107ceac1bde7acbfd2682cc144a4ef0881311..67289e012b863501cfae7761794633193e6a51c0 100755
--- a/src/config/SSSDConfigTest.py
+++ b/src/config/SSSDConfigTest.py
@@ -1299,6 +1299,7 @@ class SSSDConfigTestSSSDConfig(unittest.TestCase):
'nss',
'pam']
active_services = sssdconfig.list_active_services()
+ self.assertTrue(isinstance(active_services, list))
for service in control_list:
self.assertTrue(service in active_services,
@@ -1521,6 +1522,7 @@ class SSSDConfigTestSSSDConfig(unittest.TestCase):
'IPA',
'LOCAL']
active_domains = sssdconfig.list_active_domains()
+ self.assertTrue(isinstance(active_domains, list))
for domain in control_list:
self.assertTrue(domain in active_domains,
--
2.5.0
More information about the sssd-devel
mailing list