Author: hlship
Date: Thu Jun 30 00:38:21 2011
New Revision: 1141348

URL: http://svn.apache.org/viewvc?rev=1141348&view=rev
Log:
TAP5-999: Add a test to show that removing an element via T5.dom.remove() will 
remove publishers and listeners for that element

Modified:
    
tapestry/tapestry5/trunk/tapestry-core/src/test/resources/org/apache/tapestry5/integration/app1/pages/JavaScriptTests.tml

Modified: 
tapestry/tapestry5/trunk/tapestry-core/src/test/resources/org/apache/tapestry5/integration/app1/pages/JavaScriptTests.tml
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/resources/org/apache/tapestry5/integration/app1/pages/JavaScriptTests.tml?rev=1141348&r1=1141347&r2=1141348&view=diff
==============================================================================
--- 
tapestry/tapestry5/trunk/tapestry-core/src/test/resources/org/apache/tapestry5/integration/app1/pages/JavaScriptTests.tml
 (original)
+++ 
tapestry/tapestry5/trunk/tapestry-core/src/test/resources/org/apache/tapestry5/integration/app1/pages/JavaScriptTests.tml
 Thu Jun 30 00:38:21 2011
@@ -275,6 +275,38 @@
         </pre>
     </div>
 
+    <div>
+      <p>Removing an element also removes publishers and subscribers for the 
element.</p>
+      <pre>
+        var pubs = []
+
+        var element = new Element("span").update("Published Message Source")
+
+        document.body.insert({bottom: element})
+
+        sub("bar", null, function() { pubs.push("general") })
+        sub("bar", element, function() { pubs.push("specific") } )
+
+        pub("bar", element, {})
+
+        assertEqual(pubs, ["specific", "general"])
+
+        T5.dom.remove(element)
+
+        pubs = []
+
+        pub("bar", element, {})
+
+        assertEqual(pubs, ["general"])
+
+        pubs = []
+
+        pub("bar", document.body, {})
+
+        assertEqual(pubs, ["general"])
+      </pre>
+    </div>
+
 
   </div>
 


Reply via email to