diff options
Diffstat (limited to 'test/src/test-arabica-events.cpp')
-rw-r--r-- | test/src/test-arabica-events.cpp | 64 |
1 files changed, 32 insertions, 32 deletions
diff --git a/test/src/test-arabica-events.cpp b/test/src/test-arabica-events.cpp index bfbd570..193b7ae 100644 --- a/test/src/test-arabica-events.cpp +++ b/test/src/test-arabica-events.cpp @@ -11,16 +11,16 @@ using namespace Arabica::DOM; class CapturingEventListener : public Events::EventListener<std::string> { public: - void handleEvent(Events::Event<std::string>& event) { - std::cout << "Handling captured event " << event.getType() << std::endl; - } + void handleEvent(Events::Event<std::string>& event) { + std::cout << "Handling captured event " << event.getType() << std::endl; + } }; class BubblingEventListener : public Events::EventListener<std::string> { public: - void handleEvent(Events::Event<std::string>& event) { - std::cout << "Handling bubbling event " << event.getType() << std::endl; - } + void handleEvent(Events::Event<std::string>& event) { + std::cout << "Handling bubbling event " << event.getType() << std::endl; + } }; int main(int argc, char** argv) { @@ -28,40 +28,40 @@ int main(int argc, char** argv) { std::cerr << "Expected path to test-arabica-events.xml" << std::endl; exit(EXIT_FAILURE); } - - Arabica::SAX::InputSource<std::string> inputSource(argv[1]); - + + Arabica::SAX::InputSource<std::string> inputSource(argv[1]); + Arabica::SAX2DOM::Parser<std::string> domParser; Arabica::SAX::CatchErrorHandler<std::string> errorHandler; domParser.setErrorHandler(errorHandler); if(!domParser.parse(inputSource)) { - return -1; + return -1; } - Document<std::string> doc = domParser.getDocument(); - Element<std::string> elem = doc.getDocumentElement(); - - CapturingEventListener cel; - BubblingEventListener bel; - - Events::EventTarget<std::string> eventTarget(elem); - eventTarget.addEventListener("DOMNodeInserted", cel, true); - eventTarget.addEventListener("DOMNodeInserted", bel, false); - eventTarget.addEventListener("DOMNodeRemoved", cel, true); - eventTarget.addEventListener("DOMNodeRemoved", bel, false); - eventTarget.addEventListener("DOMAttrModified", cel, true); - eventTarget.addEventListener("DOMAttrModified", bel, false); - - Arabica::XPath::XPath<std::string> xpath; - Arabica::XPath::NodeSet<std::string> divs = xpath.evaluate("//div", doc).asNodeSet(); - - for (int i = 0; i < divs.size(); i++) { + Document<std::string> doc = domParser.getDocument(); + Element<std::string> elem = doc.getDocumentElement(); + + CapturingEventListener cel; + BubblingEventListener bel; + + Events::EventTarget<std::string> eventTarget(elem); + eventTarget.addEventListener("DOMNodeInserted", cel, true); + eventTarget.addEventListener("DOMNodeInserted", bel, false); + eventTarget.addEventListener("DOMNodeRemoved", cel, true); + eventTarget.addEventListener("DOMNodeRemoved", bel, false); + eventTarget.addEventListener("DOMAttrModified", cel, true); + eventTarget.addEventListener("DOMAttrModified", bel, false); + + Arabica::XPath::XPath<std::string> xpath; + Arabica::XPath::NodeSet<std::string> divs = xpath.evaluate("//div", doc).asNodeSet(); + + for (int i = 0; i < divs.size(); i++) { Element<std::string> divElem = Element<std::string>(divs[i]); divElem.setAttribute("foo", "true"); divElem.setAttribute("foo", "false"); - - Element<std::string> fooElem = divElem.getOwnerDocument().createElement("foo"); - divElem.appendChild(fooElem); - divElem.removeChild(fooElem); + + Element<std::string> fooElem = divElem.getOwnerDocument().createElement("foo"); + divElem.appendChild(fooElem); + divElem.removeChild(fooElem); } |