Piotr Caban : msxml3/tests: Added tests for ISAXXMLReader_putErrorHandler and ISAXXMLReader_getErrorHandler .

Alexandre Julliard julliard at winehq.org
Mon Jul 21 08:51:38 CDT 2008


Module: wine
Branch: master
Commit: 918a46ce2cd6d749d56715ea2a431fd3ab125ac0
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=918a46ce2cd6d749d56715ea2a431fd3ab125ac0

Author: Piotr Caban <piotr.caban at gmail.com>
Date:   Sat Jul 19 22:32:03 2008 +0200

msxml3/tests: Added tests for ISAXXMLReader_putErrorHandler and ISAXXMLReader_getErrorHandler.

---

 dlls/msxml3/tests/saxreader.c |   82 ++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 81 insertions(+), 1 deletions(-)

diff --git a/dlls/msxml3/tests/saxreader.c b/dlls/msxml3/tests/saxreader.c
index 5547d72..3bb7983 100644
--- a/dlls/msxml3/tests/saxreader.c
+++ b/dlls/msxml3/tests/saxreader.c
@@ -125,7 +125,7 @@ static void test_locator(unsigned line, int loc_line, int loc_column)
     ok_(__FILE__,line) (rline == loc_line,
             "unexpected line %d, expected %d\n", rline, loc_line);
     ok_(__FILE__,line) (rcolumn == loc_column,
-            "unexpected columnt %d, expected %d\n", rcolumn, loc_column);
+            "unexpected column %d, expected %d\n", rcolumn, loc_column);
 }
 
 static HRESULT WINAPI contentHandler_QueryInterface(
@@ -357,6 +357,75 @@ static const ISAXContentHandlerVtbl contentHandlerVtbl =
 
 static ISAXContentHandler contentHandler = { &contentHandlerVtbl };
 
+static HRESULT WINAPI isaxerrorHandler_QueryInterface(
+        ISAXErrorHandler* iface,
+        REFIID riid,
+        void **ppvObject)
+{
+    *ppvObject = NULL;
+
+    if(IsEqualGUID(riid, &IID_IUnknown) || IsEqualGUID(riid, &IID_ISAXErrorHandler))
+    {
+        *ppvObject = iface;
+    }
+    else
+    {
+        return E_NOINTERFACE;
+    }
+
+    return S_OK;
+}
+
+static ULONG WINAPI isaxerrorHandler_AddRef(
+        ISAXErrorHandler* iface)
+{
+    return 2;
+}
+
+static ULONG WINAPI isaxerrorHandler_Release(
+        ISAXErrorHandler* iface)
+{
+    return 1;
+}
+
+static HRESULT WINAPI isaxerrorHandler_error(
+        ISAXErrorHandler* iface,
+        ISAXLocator *pLocator,
+        const WCHAR *pErrorMessage,
+        HRESULT hrErrorCode)
+{
+    return S_OK;
+}
+
+static HRESULT WINAPI isaxerrorHandler_fatalError(
+        ISAXErrorHandler* iface,
+        ISAXLocator *pLocator,
+        const WCHAR *pErrorMessage,
+        HRESULT hrErrorCode)
+{
+    return S_OK;
+}
+
+static HRESULT WINAPI isaxerrorHanddler_ignorableWarning(
+        ISAXErrorHandler* iface,
+        ISAXLocator *pLocator,
+        const WCHAR *pErrorMessage,
+        HRESULT hrErrorCode)
+{
+    return S_OK;
+}
+
+static const ISAXErrorHandlerVtbl errorHandlerVtbl =
+{
+    isaxerrorHandler_QueryInterface,
+    isaxerrorHandler_AddRef,
+    isaxerrorHandler_Release,
+    isaxerrorHandler_error,
+    isaxerrorHandler_fatalError,
+    isaxerrorHanddler_ignorableWarning
+};
+
+static ISAXErrorHandler errorHandler = { &errorHandlerVtbl };
 
 static void test_saxreader(void)
 {
@@ -364,6 +433,7 @@ static void test_saxreader(void)
     ISAXXMLReader *reader = NULL;
     VARIANT var;
     ISAXContentHandler *lpContentHandler;
+    ISAXErrorHandler *lpErrorHandler;
 
     hr = CoCreateInstance(&CLSID_SAXXMLReader, NULL, CLSCTX_INPROC_SERVER,
             &IID_ISAXXMLReader, (LPVOID*)&reader);
@@ -377,16 +447,26 @@ static void test_saxreader(void)
     hr = ISAXXMLReader_getContentHandler(reader, NULL);
     ok(hr == E_POINTER, "Expected E_POINTER, got %08x\n", hr);
 
+    hr = ISAXXMLReader_getErrorHandler(reader, NULL);
+    ok(hr == E_POINTER, "Expected E_POINTER, got %08x\n", hr);
+
     hr = ISAXXMLReader_getContentHandler(reader, &lpContentHandler);
     ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
     ok(lpContentHandler == NULL, "Expected %p, got %p\n", NULL, lpContentHandler);
 
+    hr = ISAXXMLReader_getErrorHandler(reader, &lpErrorHandler);
+    ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
+    ok(lpErrorHandler == NULL, "Expected %p, got %p\n", NULL, lpErrorHandler);
+
     hr = ISAXXMLReader_putContentHandler(reader, NULL);
     ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
 
     hr = ISAXXMLReader_putContentHandler(reader, &contentHandler);
     ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
 
+    hr = ISAXXMLReader_putErrorHandler(reader, &errorHandler);
+    ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
+
     hr = ISAXXMLReader_getContentHandler(reader, &lpContentHandler);
     ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
     ok(lpContentHandler == &contentHandler, "Expected %p, got %p\n", &contentHandler, lpContentHandler);




More information about the wine-cvs mailing list