[Checkins] SVN: lovely.rating/trunk/ - provide the value not the rating object in the events

Juergen Kartnaller juergen at kartnaller.at
Mon Sep 10 06:42:38 EDT 2007


Log message for revision 79551:
  - provide the value not the rating object in the events
  

Changed:
  U   lovely.rating/trunk/CHANGES.txt
  U   lovely.rating/trunk/setup.py
  U   lovely.rating/trunk/src/lovely/rating/README.txt
  U   lovely.rating/trunk/src/lovely/rating/manager.py

-=-
Modified: lovely.rating/trunk/CHANGES.txt
===================================================================
--- lovely.rating/trunk/CHANGES.txt	2007-09-10 09:16:40 UTC (rev 79550)
+++ lovely.rating/trunk/CHANGES.txt	2007-09-10 10:42:37 UTC (rev 79551)
@@ -2,8 +2,13 @@
  Changes for lovely.rating package
 ===================================
 
+2007/09/10 0.3.2
+================
 
-2007/09/07 0.3.1
+- provide the value not the rating object in the events
+
+
+2007/09/10 0.3.1
 ================
 
 - added rating specific events

Modified: lovely.rating/trunk/setup.py
===================================================================
--- lovely.rating/trunk/setup.py	2007-09-10 09:16:40 UTC (rev 79550)
+++ lovely.rating/trunk/setup.py	2007-09-10 10:42:37 UTC (rev 79551)
@@ -2,7 +2,7 @@
 from setuptools import setup, find_packages
 
 setup(name='lovely.rating',
-      version='0.3.1',
+      version='0.3.2',
       author = "Lovelysystems",
       author_email = "office at lovelysystems.com",
       description = "A rating engine for zope 3",

Modified: lovely.rating/trunk/src/lovely/rating/README.txt
===================================================================
--- lovely.rating/trunk/src/lovely/rating/README.txt	2007-09-10 09:16:40 UTC (rev 79550)
+++ lovely.rating/trunk/src/lovely/rating/README.txt	2007-09-10 10:42:37 UTC (rev 79551)
@@ -91,6 +91,16 @@
    <lovely.rating.interfaces.RatingAddedEvent object at ...>,
    <lovely.rating.interfaces.RatingAddedEvent object at ...>]
 
+  >>> ev = eventtesting.getEvents()[0]
+  >>> ev.id
+  'usability'
+  >>> ev.obj
+  <Application u'KDE'>
+  >>> ev.user
+  u'srichter'
+  >>> ev.value
+  u'Okay'
+
 Setting a rating with the aready existing value doesn't fire an event.
 
   >>> eventtesting.clearEvents()
@@ -107,6 +117,16 @@
   [<lovely.rating.interfaces.RatingChangedEvent object at ...>,
    <lovely.rating.interfaces.RatingChangedEvent object at ...>]
 
+  >>> ev = eventtesting.getEvents()[0]
+  >>> ev.id
+  'usability'
+  >>> ev.obj
+  <Application u'KDE'>
+  >>> ev.user
+  u'srichter'
+  >>> ev.value
+  u'Good'
+
   >>> manager.rate('usability', u'Okay', u'srichter')
   True
 
@@ -247,6 +267,14 @@
   [<lovely.rating.interfaces.RatingRemovedEvent object at ...>,
    <lovely.rating.interfaces.RatingRemovedEvent object at ...>]
 
+  >>> ev = eventtesting.getEvents()[0]
+  >>> ev.id
+  'usability'
+  >>> ev.obj
+  <Application u'KDE'>
+  >>> ev.user
+  'badcarma'
+
 Finally, the manager also provides some basic statistical features:
 
   >>> manager.computeAverage('usability')

Modified: lovely.rating/trunk/src/lovely/rating/manager.py
===================================================================
--- lovely.rating/trunk/src/lovely/rating/manager.py	2007-09-10 09:16:40 UTC (rev 79550)
+++ lovely.rating/trunk/src/lovely/rating/manager.py	2007-09-10 10:42:37 UTC (rev 79551)
@@ -27,8 +27,6 @@
 
 from BTrees import OOBTree
 
-from zope.app.container.contained import ObjectAddedEvent, ObjectRemovedEvent
-
 from zope.app.container import contained
 
 from lovely.rating import IRatable, IRatingsManager, IRatingDefinition, rating
@@ -65,8 +63,7 @@
         if existing is not None and existing.value == value:
             # do nothing if no change
             return False
-        value = rating.Rating(id, value, user)
-        self._storage[id][user] = value
+        self._storage[id][user] = rating.Rating(id, value, user)
         if existing is None:
             zope.event.notify(interfaces.RatingAddedEvent(
                                         id, self.__parent__, user, value))



More information about the Checkins mailing list