On 11/12/14 12:13, Martin Basti wrote:
On 11/12/14 11:19, Jan Cholasta wrote:
Hi,

Dne 9.12.2014 v 16:07 Martin Basti napsal(a):
Ticket: https://fedorahosted.org/freeipa/ticket/4793

I'm able to reproduce it only in one nose test.

Which test?
If you apply my patch 170 and add a random forwardzone, then DNS root zone tests failed.


Patch attached.

What about:

result['messages'] = result.get('messages', ()) + (message.to_dict(),)

(My point is, don't support both lists and tuples, pick just one.)

Honza

This is question for framework guru (you?), I tried to preserve format unchanged.
Shouldn't be all values in lists in server part?

Martin^2

As was requested, I convert tuple to list instead handling both types.

Updated patch attached.



--
Martin Basti

From 55948536aa37a4625fb84f8e0c0a5ece65b649d3 Mon Sep 17 00:00:00 2001
From: Martin Basti <mba...@redhat.com>
Date: Tue, 16 Dec 2014 12:28:07 +0100
Subject: [PATCH] Fix add message on client side

https://fedorahosted.org/freeipa/ticket/4793
---
 .idea/inspectionProfiles/Project_Default.xml   | 15 +++++++++++++++
 .idea/inspectionProfiles/profiles_settings.xml |  7 +++++++
 ipalib/frontend.py                             |  6 ++++++
 3 files changed, 28 insertions(+)
 create mode 100644 .idea/inspectionProfiles/Project_Default.xml
 create mode 100644 .idea/inspectionProfiles/profiles_settings.xml

diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml
new file mode 100644
index 0000000000000000000000000000000000000000..2288d89872ce51c1f8b2e2d4ffeb91213c56600c
--- /dev/null
+++ b/.idea/inspectionProfiles/Project_Default.xml
@@ -0,0 +1,15 @@
+<component name="InspectionProjectProfileManager">
+  <profile version="1.0" is_locked="false">
+    <option name="myName" value="Project Default" />
+    <option name="myLocal" value="false" />
+    <inspection_tool class="PyPackageRequirementsInspection" enabled="true" level="WARNING" enabled_by_default="true">
+      <option name="ignoredPackages">
+        <value>
+          <list size="1">
+            <item index="0" class="java.lang.String" itemvalue="dns" />
+          </list>
+        </value>
+      </option>
+    </inspection_tool>
+  </profile>
+</component>
\ No newline at end of file
diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml
new file mode 100644
index 0000000000000000000000000000000000000000..3b312839bf2e939fea3ebdef15630a4b33e57caf
--- /dev/null
+++ b/.idea/inspectionProfiles/profiles_settings.xml
@@ -0,0 +1,7 @@
+<component name="InspectionProjectProfileManager">
+  <settings>
+    <option name="PROJECT_PROFILE" value="Project Default" />
+    <option name="USE_PROJECT_PROFILE" value="true" />
+    <version value="1.0" />
+  </settings>
+</component>
\ No newline at end of file
diff --git a/ipalib/frontend.py b/ipalib/frontend.py
index a9a3dfeaac2ab7047c036ea7bbed7655dd93be56..565e1af29df5d39b80048f2af33281a31c374b9e 100644
--- a/ipalib/frontend.py
+++ b/ipalib/frontend.py
@@ -438,6 +438,12 @@ class Command(HasParam):
         (args, options) = self.params_2_args_options(**params)
         ret = self.run(*args, **options)
         if not version_provided and isinstance(ret, dict):
+            # on client side the messages can be stored in tuple
+            # convert them into list first
+            ret_messages = ret.get('messages')
+            if isinstance(ret_messages, tuple):
+                ret['messages'] = list(ret_messages)
+
             messages.add_message(
                 API_VERSION, ret,
                 messages.VersionMissing(server_version=API_VERSION))
-- 
1.8.3.1

_______________________________________________
Freeipa-devel mailing list
Freeipa-devel@redhat.com
https://www.redhat.com/mailman/listinfo/freeipa-devel

Reply via email to