You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@bloodhound.apache.org by an...@apache.org on 2013/03/18 15:12:07 UTC

svn commit: r1457774 - in /incubator/bloodhound/trunk: bloodhound_dashboard/bhdashboard/model.py bloodhound_multiproduct/tests/model.py

Author: andrej
Date: Mon Mar 18 14:12:07 2013
New Revision: 1457774

URL: http://svn.apache.org/r1457774
Log:
adding consistent behaivour of old_values parameter of IResourceChangeLisntener to bhdashboard/model.py  - towards #411

Modified:
    incubator/bloodhound/trunk/bloodhound_dashboard/bhdashboard/model.py
    incubator/bloodhound/trunk/bloodhound_multiproduct/tests/model.py

Modified: incubator/bloodhound/trunk/bloodhound_dashboard/bhdashboard/model.py
URL: http://svn.apache.org/viewvc/incubator/bloodhound/trunk/bloodhound_dashboard/bhdashboard/model.py?rev=1457774&r1=1457773&r2=1457774&view=diff
==============================================================================
--- incubator/bloodhound/trunk/bloodhound_dashboard/bhdashboard/model.py (original)
+++ incubator/bloodhound/trunk/bloodhound_dashboard/bhdashboard/model.py Mon Mar 18 14:12:07 2013
@@ -203,14 +203,16 @@ class ModelBase(object):
         sdata.update(self._meta)
         sql = """UPDATE %(table_name)s SET %(values)s
                  WHERE %(where)s""" % sdata
-        old_data = self._old_data.copy()
+
+        old_values = dict((k, v) for k, v in self._old_data.iteritems()
+                          if self._data.get(k) != v)
         with self._env.db_transaction as db:
             db(sql, setvalues + values)
             self._update_relations(db)
             self._old_data.update(self._data)
             TicketSystem(self._env).reset_ticket_fields()
 
-        ResourceSystem(self._env).resource_changed(self, old_data)
+        ResourceSystem(self._env).resource_changed(self, old_values)
 
     
     @classmethod

Modified: incubator/bloodhound/trunk/bloodhound_multiproduct/tests/model.py
URL: http://svn.apache.org/viewvc/incubator/bloodhound/trunk/bloodhound_multiproduct/tests/model.py?rev=1457774&r1=1457773&r2=1457774&view=diff
==============================================================================
--- incubator/bloodhound/trunk/bloodhound_multiproduct/tests/model.py (original)
+++ incubator/bloodhound/trunk/bloodhound_multiproduct/tests/model.py Mon Mar 18 14:12:07 2013
@@ -240,12 +240,7 @@ class ProductTestCase(unittest.TestCase)
         self.assertEqual('changed', self.listener.action)
         self.assertIsInstance(self.listener.resource, Product)
         self.assertEqual(CHANGED_NAME, self.name)
-        self.assertEqual(
-            self.INITIAL_PREFIX, self.listener.old_values["prefix"])
-        self.assertEqual(
-            self.INITIAL_NAME, self.listener.old_values["name"])
-        self.assertEqual(
-            self.INITIAL_DESCRIPTION, self.listener.old_values["description"])
+        self.assertEqual({"name":self.INITIAL_NAME}, self.listener.old_values)
 
     def test_change_listener_deleted(self):
         self.product.delete()