diff --git a/tests/DOM/DOMTest/DTest.cpp b/tests/DOM/DOMTest/DTest.cpp
index ab05a8860b88d54010f6739fdefc8c14866c3a2f..52a739020faacd090831fad728163cf6dc0885cf 100644
--- a/tests/DOM/DOMTest/DTest.cpp
+++ b/tests/DOM/DOMTest/DTest.cpp
@@ -56,6 +56,9 @@
 
 /*
  * $Log$
+ * Revision 1.26  2002/08/16 13:49:56  tng
+ * [Bug 11360] Release user data using handler.
+ *
  * Revision 1.25  2002/08/09 20:21:21  tng
  * Test DOM L3 compareTreePosition.
  *
@@ -1022,6 +1025,11 @@ bool DOMTest::testAttr(DOMDocument* document)
     DOMNode* myimport = document->importNode(userTest,true);
     USERDATAHANDLERTEST(userhandler, DOMUserDataHandler::NODE_IMPORTED, tempStr2, document, userTest, myimport, __LINE__);
 
+    // test delete
+    myimport->setUserData(tempStr2, (void*) userTest, &userhandler);
+    myimport->release();
+    USERDATAHANDLERTEST(userhandler, DOMUserDataHandler::NODE_DELETED, tempStr2, userTest, 0, 0, __LINE__);
+
     // Test isSameNode
     if (!userTest->isSameNode(userTest)) {
         fprintf(stderr, "isSameNode failed in line %i\n", __LINE__);
@@ -1385,6 +1393,11 @@ bool DOMTest::testCDATASection(DOMDocument* document)
     DOMNode* myimport = document->importNode(userTest,true);
     USERDATAHANDLERTEST(userhandler, DOMUserDataHandler::NODE_IMPORTED, tempStr2, document, userTest, myimport, __LINE__);
 
+    // test delete
+    myimport->setUserData(tempStr2, (void*) userTest, &userhandler);
+    myimport->release();
+    USERDATAHANDLERTEST(userhandler, DOMUserDataHandler::NODE_DELETED, tempStr2, userTest, 0, 0, __LINE__);
+
     // Test isSameNode
     if (!userTest->isSameNode(userTest)) {
         fprintf(stderr, "isSameNode failed in line %i\n", __LINE__);
@@ -1645,6 +1658,11 @@ bool DOMTest::testCharacterData(DOMDocument* document)
     DOMNode* myimport = document->importNode(userTest,true);
     USERDATAHANDLERTEST(userhandler, DOMUserDataHandler::NODE_IMPORTED, tempStr2, document, userTest, myimport, __LINE__);
 
+    // test delete
+    myimport->setUserData(tempStr2, (void*) userTest, &userhandler);
+    myimport->release();
+    USERDATAHANDLERTEST(userhandler, DOMUserDataHandler::NODE_DELETED, tempStr2, userTest, 0, 0, __LINE__);
+
     // Test isSameNode
     if (!userTest->isSameNode(userTest)) {
         fprintf(stderr, "isSameNode failed in line %i\n", __LINE__);
@@ -1831,6 +1849,11 @@ bool DOMTest::testComment(DOMDocument* document)
     DOMNode* myimport = document->importNode(userTest,true);
     USERDATAHANDLERTEST(userhandler, DOMUserDataHandler::NODE_IMPORTED, tempStr2, document, userTest, myimport, __LINE__);
 
+    // test delete
+    myimport->setUserData(tempStr2, (void*) userTest, &userhandler);
+    myimport->release();
+    USERDATAHANDLERTEST(userhandler, DOMUserDataHandler::NODE_DELETED, tempStr2, userTest, 0, 0, __LINE__);
+
     // Test isSameNode
     if (!userTest->isSameNode(userTest)) {
         fprintf(stderr, "isSameNode failed in line %i\n", __LINE__);
@@ -2162,6 +2185,11 @@ bool DOMTest::testDocument(DOMDocument* document)
     DOMNode* myimport = document->importNode(userTest,true);
     USERDATAHANDLERTEST(userhandler, DOMUserDataHandler::NODE_IMPORTED, tempStr2, document, userTest, myimport, __LINE__);
 
+    // test delete
+    myimport->setUserData(tempStr2, (void*) userTest, &userhandler);
+    myimport->release();
+    USERDATAHANDLERTEST(userhandler, DOMUserDataHandler::NODE_DELETED, tempStr2, userTest, 0, 0, __LINE__);
+
     // Test isSameNode
     if (!userTest->isSameNode(userTest)) {
         fprintf(stderr, "isSameNode failed in line %i\n", __LINE__);
@@ -2775,6 +2803,11 @@ bool DOMTest::testElement(DOMDocument* document)
     DOMNode* myimport = document->importNode(userTest,true);
     USERDATAHANDLERTEST(userhandler, DOMUserDataHandler::NODE_IMPORTED, tempStr2, document, userTest, myimport, __LINE__);
 
+    // test delete
+    myimport->setUserData(tempStr2, (void*) userTest, &userhandler);
+    myimport->release();
+    USERDATAHANDLERTEST(userhandler, DOMUserDataHandler::NODE_DELETED, tempStr2, userTest, 0, 0, __LINE__);
+
     // Test isSameNode
     if (!userTest->isSameNode(userTest)) {
         fprintf(stderr, "isSameNode failed in line %i\n", __LINE__);
@@ -3173,6 +3206,11 @@ bool DOMTest::testEntity(DOMDocument* document)
     DOMNode* myimport = document->importNode(userTest,true);
     USERDATAHANDLERTEST(userhandler, DOMUserDataHandler::NODE_IMPORTED, tempStr2, document, userTest, myimport, __LINE__);
 
+    // test delete
+    myimport->setUserData(tempStr2, (void*) userTest, &userhandler);
+    myimport->release();
+    USERDATAHANDLERTEST(userhandler, DOMUserDataHandler::NODE_DELETED, tempStr2, userTest, 0, 0, __LINE__);
+
     // Test isSameNode
     if (!userTest->isSameNode(userTest)) {
         fprintf(stderr, "isSameNode failed in line %i\n", __LINE__);
@@ -3331,6 +3369,11 @@ bool DOMTest::testEntityReference(DOMDocument* document)
     DOMNode* myimport = document->importNode(userTest,true);
     USERDATAHANDLERTEST(userhandler, DOMUserDataHandler::NODE_IMPORTED, tempStr2, document, userTest, myimport, __LINE__);
 
+    // test delete
+    myimport->setUserData(tempStr2, (void*) userTest, &userhandler);
+    myimport->release();
+    USERDATAHANDLERTEST(userhandler, DOMUserDataHandler::NODE_DELETED, tempStr2, userTest, 0, 0, __LINE__);
+
     // Test isSameNode
     if (!userTest->isSameNode(userTest)) {
         fprintf(stderr, "isSameNode failed in line %i\n", __LINE__);
@@ -3504,6 +3547,11 @@ bool DOMTest::testNode(DOMDocument* document)
     DOMNode* myimport = document->importNode(userTest,true);
     USERDATAHANDLERTEST(userhandler, DOMUserDataHandler::NODE_IMPORTED, tempStr2, document, userTest, myimport, __LINE__);
 
+    // test delete
+    myimport->setUserData(tempStr2, (void*) userTest, &userhandler);
+    myimport->release();
+    USERDATAHANDLERTEST(userhandler, DOMUserDataHandler::NODE_DELETED, tempStr2, userTest, 0, 0, __LINE__);
+
     // Test isSameNode
     if (!userTest->isSameNode(userTest)) {
         fprintf(stderr, "isSameNode failed in line %i\n", __LINE__);
@@ -3661,6 +3709,11 @@ bool DOMTest::testNotation(DOMDocument* document)
     DOMNode* myimport = document->importNode(userTest,true);
     USERDATAHANDLERTEST(userhandler, DOMUserDataHandler::NODE_IMPORTED, tempStr2, document, userTest, myimport, __LINE__);
 
+    // test delete
+    myimport->setUserData(tempStr2, (void*) userTest, &userhandler);
+    myimport->release();
+    USERDATAHANDLERTEST(userhandler, DOMUserDataHandler::NODE_DELETED, tempStr2, userTest, 0, 0, __LINE__);
+
     // Test isSameNode
     if (!userTest->isSameNode(userTest)) {
         fprintf(stderr, "isSameNode failed in line %i\n", __LINE__);
@@ -3844,6 +3897,11 @@ bool DOMTest::testPI(DOMDocument* document)
     DOMNode* myimport = document->importNode(userTest,true);
     USERDATAHANDLERTEST(userhandler, DOMUserDataHandler::NODE_IMPORTED, tempStr2, document, userTest, myimport, __LINE__);
 
+    // test delete
+    myimport->setUserData(tempStr2, (void*) userTest, &userhandler);
+    myimport->release();
+    USERDATAHANDLERTEST(userhandler, DOMUserDataHandler::NODE_DELETED, tempStr2, userTest, 0, 0, __LINE__);
+
     // Test isSameNode
     if (!userTest->isSameNode(userTest)) {
         fprintf(stderr, "isSameNode failed in line %i\n", __LINE__);
@@ -4030,6 +4088,11 @@ bool DOMTest::testText(DOMDocument* document)
     DOMNode* myimport = document->importNode(userTest,true);
     USERDATAHANDLERTEST(userhandler, DOMUserDataHandler::NODE_IMPORTED, tempStr2, document, userTest, myimport, __LINE__);
 
+    // test delete
+    myimport->setUserData(tempStr2, (void*) userTest, &userhandler);
+    myimport->release();
+    USERDATAHANDLERTEST(userhandler, DOMUserDataHandler::NODE_DELETED, tempStr2, userTest, 0, 0, __LINE__);
+
     // Test isSameNode
     if (!userTest->isSameNode(userTest)) {
         fprintf(stderr, "isSameNode failed in line %i\n", __LINE__);