diff --git a/mozilla/embedding/qa/testembed/Tests.cpp b/mozilla/embedding/qa/testembed/Tests.cpp index 6e62c21826c..347a4e0fe20 100644 --- a/mozilla/embedding/qa/testembed/Tests.cpp +++ b/mozilla/embedding/qa/testembed/Tests.cpp @@ -69,6 +69,7 @@ #include "nsICommandMgr.h" #include "nsICmdParams.h" #include "QaUtils.h" +#include "nsIIOService.h" #include #ifdef _DEBUG @@ -94,8 +95,8 @@ BEGIN_MESSAGE_MAP(CTests, CWnd) ON_COMMAND(ID_TESTS_ADDURICONTENTLISTENER_ADDFROMNSIWEBBROWSER, OnTestsAddUriContentListenerByWebBrowser) ON_COMMAND(ID_TESTS_ADDURICONTENTLISTENER_ADDFROMNSIURILOADER, OnTestsAddUriContentListenerByUriLoader) ON_COMMAND(ID_TESTS_ADDURICONTENTLISTENER_OPENURI, OnTestsAddUriContentListenerByOpenUri) - ON_COMMAND(ID_TESTS_NSNEWCHANNEL, OnTestsNSNewChannel) - + ON_COMMAND(ID_TESTS_NSNEWCHANNEL, OnTestsNSNewChannelAndAsyncOpen) + ON_COMMAND(ID_TESTS_NSIIOSERVICENEWURI, OnTestsIOServiceNewURI) ON_COMMAND(ID_TOOLS_REMOVEGHPAGE, OnToolsRemoveGHPage) ON_COMMAND(ID_TOOLS_REMOVEALLGH, OnToolsRemoveAllGH) ON_COMMAND(ID_TOOLS_TESTYOURMETHOD, OnToolsTestYourMethod) @@ -103,6 +104,8 @@ BEGIN_MESSAGE_MAP(CTests, CWnd) ON_COMMAND(ID_VERIFYBUGS_70228, OnVerifybugs70228) ON_COMMAND(ID_VERIFYBUGS_90195, OnVerifybugs90195) + ON_COMMAND(ID_VERIFYBUGS_169617, OnVerifybugs169617) + ON_COMMAND(ID_VERIFYBUGS_170274, OnVerifybugs170274) ON_COMMAND(ID_INTERFACES_NSIDIRECTORYSERVICE_INIT, OnInterfacesNsidirectoryservice) ON_COMMAND(ID_INTERFACES_NSIDIRECTORYSERVICE_REGISTERPROVIDER, OnInterfacesNsidirectoryservice) @@ -312,14 +315,12 @@ CTests::~CTests() } -// depstein: Start QA test cases here // ********************************************************* +// depstein: Start QA test cases here // ********************************************************* void CTests::OnTestsChangeUrl() { - CUrlDialog myDialog; - if (!qaWebNav) { QAOutput("Web navigation object not found. Change URL test not performed.", 2); @@ -349,8 +350,6 @@ void CTests::OnTestsGlobalHistory() // create instance of myHistory object. Call's XPCOM // service manager to pass the contract ID. - CUrlDialog myDialog; - PRBool theRetVal = PR_FALSE; nsCOMPtr myHistory(do_GetService(NS_GLOBALHISTORY_CONTRACTID)); @@ -438,7 +437,6 @@ void CTests::OnTestsCreateprofile() if (myDialog.DoModal() == IDOK) { -// NS_WITH_SERVICE(nsIProfile, profileService, NS_PROFILE_CONTRACTID, &rv); nsCOMPtr theProfServ(do_GetService(NS_PROFILE_CONTRACTID,&rv)); if (NS_FAILED(rv)) { @@ -481,6 +479,8 @@ void CTests::OnTestsAddHistoryListener() RvTestResult(rv, "AddWebBrowserListener(). Add History Lstnr test", 2); } +// ********************************************************* + void CTests::OnTestsRemovehistorylistener() { // RemoveSHistoryListener test @@ -490,6 +490,8 @@ void CTests::OnTestsRemovehistorylistener() RvTestResult(rv, "RemoveWebBrowserListener(). Remove History Lstnr test", 2); } +// ********************************************************* + void CTests::OnTestsAddUriContentListenerByWebBrowser() { nsWeakPtr weakling( @@ -499,6 +501,8 @@ void CTests::OnTestsAddUriContentListenerByWebBrowser() RvTestResult(rv, "AddWebBrowserListener(). add nsIURIContentListener test", 2); } +// ********************************************************* + void CTests::OnTestsAddUriContentListenerByUriLoader() { nsCOMPtr myLoader(do_GetService(NS_URI_LOADER_CONTRACTID,&rv)); @@ -518,17 +522,16 @@ void CTests::OnTestsAddUriContentListenerByUriLoader() } } +// ********************************************************* + void CTests::OnTestsAddUriContentListenerByOpenUri() { - CUrlDialog myDialog; nsCOMPtr myLoader(do_GetService(NS_URI_LOADER_CONTRACTID,&rv)); RvTestResult(rv, "nsIURILoader() object test", 1); if (!myLoader) { QAOutput("Didn't get urILoader object. test failed", 2); return; } - nsCOMPtr theChannel; - nsCOMPtr theURI; if (myDialog.DoModal() == IDOK) { @@ -551,12 +554,13 @@ void CTests::OnTestsAddUriContentListenerByOpenUri() RvTestResult(rv, "nsIUriLoader->OpenURI() test", 2); } -void CTests::OnTestsNSNewChannel() +// ********************************************************* + +void CTests::OnTestsNSNewChannelAndAsyncOpen() { - CUrlDialog myDialog; nsCOMPtr theChannel; nsCOMPtr theLoadGroup(do_CreateInstance(NS_LOADGROUP_CONTRACTID)); - nsCOMPtr theURI; + if (myDialog.DoModal() == IDOK) { nsCAutoString theStr; @@ -567,6 +571,40 @@ void CTests::OnTestsNSNewChannel() RvTestResult(rv, "NS_NewURI() test", 2); rv = NS_NewChannel(getter_AddRefs(theChannel), theURI, nsnull, nsnull); RvTestResult(rv, "NS_NewChannel() test", 2); + + QAOutput("AynchOpen() test.", 2); + nsCOMPtr listener(NS_STATIC_CAST(nsIStreamListener*, qaBrowserImpl)); + nsCOMPtr thisListener(dont_AddRef(NS_GetWeakReference(listener))); + qaWebBrowser->AddWebBrowserListener(thisListener, NS_GET_IID(nsIStreamListener)); + + // this calls nsIStreamListener::OnDataAvailable() + rv = theChannel->AsyncOpen(listener, nsnull); + RvTestResult(rv, "AsyncOpen()", 2); + } +} + +// ********************************************************* + +void CTests::OnTestsIOServiceNewURI() +{ + nsCOMPtr ioService(do_GetIOService(&rv)); + if (!ioService) { + QAOutput("We didn't get the IOService object.", 2); + return; + } + if (myDialog.DoModal() == IDOK) + { + nsCAutoString theStr, retURI; + + theStr = myDialog.m_urlfield; + rv = ioService->NewURI(theStr, nsnull, nsnull, getter_AddRefs(theURI)); + RvTestResult(rv, "ioService->NewURI() test", 2); + if (!theURI) + QAOutput("We didn't get the nsIURI object for IOService test.", 2); + else { + retURI = GetTheUri(theURI, 1); + FormatAndPrintOutput("The ioService->NewURI() output uri = ", retURI, 2); + } } } @@ -577,9 +615,7 @@ void CTests::OnTestsNSNewChannel() void CTests::OnToolsRemoveGHPage() { - CUrlDialog myDialog; PRBool theRetVal = PR_FALSE; - //nsresult rv; nsCOMPtr myGHistory(do_GetService(NS_GLOBALHISTORY_CONTRACTID)); if (!myGHistory) { @@ -630,7 +666,7 @@ void CTests::OnToolsRemoveAllGH() QAOutput("Begin removal of all pages from the GH file.", 2); rv = myHistory->RemoveAllPages(); - RvTestResult(rv, "removeAllPages(). Test .", 2); + RvTestResult(rv, "removeAllPages().", 2); QAOutput("End removal of all pages from the GH file.", 2); @@ -640,14 +676,6 @@ void CTests::OnToolsRemoveAllGH() void CTests::OnToolsTestYourMethod() { // place your test code here - - nsCOMPtr theChannel; - nsCOMPtr theLoadGroup(do_CreateInstance(NS_LOADGROUP_CONTRACTID)); - nsCOMPtr theURI; - rv = NS_NewURI(getter_AddRefs(theURI), "http://www.yahoo.com"); - RvTestResult(rv, "NS_NewURI(). Test .", 2); - rv = NS_NewChannel(getter_AddRefs(theChannel), theURI, nsnull, nsnull); - RvTestResult(rv, "NS_NewChannel(). Test .", 2); } // *********************************************************************** @@ -668,13 +696,6 @@ void CTests::OnVerifybugs70228() QAOutput("Object not created. It should be. It's a component!", 2); else QAOutput("Object is created. It's a component!", 2); - -/* -nsCOMPtr - myHAL(do_CreateInstance(NS_IHELPERAPPLAUNCHERDLG_CONTRACTID)); - - rv = myHALD->show(myHal, nsnull); -*/ } void CTests::OnVerifybugs90195() @@ -691,6 +712,42 @@ void CTests::OnVerifybugs90195() */ } +void CTests::OnVerifybugs169617() +{ + nsCOMPtr myLoader(do_GetService(NS_URI_LOADER_CONTRACTID,&rv)); + nsCAutoString theStr; + + QAOutput("Verification for bug 169617!", 2); + theStr = "file://C|/Program Files"; + rv = NS_NewURI(getter_AddRefs(theURI), theStr); + RvTestResult(rv, "NS_NewURI() test for file url", 1); + GetTheUri(theURI, 1); + rv = NS_NewChannel(getter_AddRefs(theChannel), theURI, nsnull, nsnull); + RvTestResult(rv, "NS_NewChannel() test for file url", 1); + + nsCOMPtr mySupports = do_QueryInterface(NS_STATIC_CAST(nsIURIContentListener*, qaBrowserImpl)); + rv = myLoader->OpenURI(theChannel, PR_TRUE, mySupports); + RvTestResult(rv, "nsIUriLoader->OpenURI() test for file url", 2); +} + +void CTests::OnVerifybugs170274() +{ + nsCOMPtr myLoader(do_GetService(NS_URI_LOADER_CONTRACTID,&rv)); + nsCAutoString theStr; + + QAOutput("Verification for bug 170274!", 2); + theStr = "data:text/plain;charset=iso-8859-7,%be%fg%be"; + rv = NS_NewURI(getter_AddRefs(theURI), theStr); + RvTestResult(rv, "NS_NewURI() test for data url", 1); + GetTheUri(theURI, 1); + rv = NS_NewChannel(getter_AddRefs(theChannel), theURI, nsnull, nsnull); + RvTestResult(rv, "NS_NewChannel() test for data url", 1); + + nsCOMPtr mySupports = do_QueryInterface(NS_STATIC_CAST(nsIURIContentListener*, qaBrowserImpl)); + rv = myLoader->OpenURI(theChannel, PR_TRUE, mySupports); + RvTestResult(rv, "nsIUriLoader->OpenURI() test for data url", 2); +} + // *********************************************************************** BOOL CTests::OnCmdMsg(UINT nID, int nCode, void* pExtra, AFX_CMDHANDLERINFO* pHandlerInfo) diff --git a/mozilla/embedding/qa/testembed/Tests.h b/mozilla/embedding/qa/testembed/Tests.h index ef346a0397e..cd4750273cc 100644 --- a/mozilla/embedding/qa/testembed/Tests.h +++ b/mozilla/embedding/qa/testembed/Tests.h @@ -51,6 +51,7 @@ #include "BrowserView.h" #include "BrowserImpl.h" #include "StdAfx.h" +#include "UrlDialog.h" ///////////////////////////////////////////////////////////////////////////// @@ -78,6 +79,7 @@ public: nsCOMPtr qaBaseWindow; nsCOMPtr qaWebNav; CBrowserImpl *qaBrowserImpl; + CUrlDialog myDialog; // local test methods @@ -93,7 +95,8 @@ private: // local test variables PRBool exists; - nsCOMPtr theUri; + nsCOMPtr theURI; + nsCOMPtr theChannel; UINT nCommandID; protected: //{{AFX_MSG(CTests) @@ -113,7 +116,8 @@ protected: afx_msg void OnTestsAddUriContentListenerByWebBrowser(); afx_msg void OnTestsAddUriContentListenerByUriLoader(); afx_msg void OnTestsAddUriContentListenerByOpenUri(); - afx_msg void OnTestsNSNewChannel(); + afx_msg void OnTestsNSNewChannelAndAsyncOpen(); + afx_msg void OnTestsIOServiceNewURI(); afx_msg void OnInterfacesNsifile(); afx_msg void OnToolsRemoveGHPage(); afx_msg void OnToolsRemoveAllGH(); @@ -121,6 +125,8 @@ protected: afx_msg void OnToolsTestYourMethod2(); afx_msg void OnVerifybugs70228(); afx_msg void OnVerifybugs90195(); + afx_msg void OnVerifybugs169617(); + afx_msg void OnVerifybugs170274(); afx_msg void OnPasteTest(); afx_msg void OnCopyTest(); afx_msg void OnSelectAllTest(); diff --git a/mozilla/embedding/qa/testembed/nsirequest.cpp b/mozilla/embedding/qa/testembed/nsirequest.cpp index a293b0e0ae8..6ac201b95f7 100644 --- a/mozilla/embedding/qa/testembed/nsirequest.cpp +++ b/mozilla/embedding/qa/testembed/nsirequest.cpp @@ -90,7 +90,6 @@ Element ReqTable[] = { {"https://www.yahoo.com/", 1, 1, 1, 1, 0, 1, 1}, {" data:text/plain;charset=iso-8859-7,%be%fg%be", 1, 1, 1, 1, 0, 1, 1}, -// {"mailto:name@netscape.com", 1, 1, 1, 1, 0, 1, 1}, {"file://C|/Program Files/", 1, 1, 1, 1, 0, 1, 1}, {"ftp://ftp.netscape.com/", 1, 1, 1, 1, 0, 1, 1}, {"ftp://ftp.mozilla.org/", 0, 0, 0, 0, 1, 0, 0}, @@ -99,9 +98,9 @@ Element ReqTable[] = { void CNsIRequest::OnStartTests(UINT nMenuID) { if (nMenuID == ID_INTERFACES_NSIREQUEST_RUNALLTESTS) - RunAllTests(10); + RunAllTests(9); else - RunIndividualTests(nMenuID, 10); + RunIndividualTests(nMenuID, 9); } void CNsIRequest::RunIndividualTests(UINT nMenuID, int reqTotal) @@ -237,9 +236,9 @@ nsIChannel * CNsIRequest::GetTheChannel(int i, nsILoadGroup *theLoadGroup) retURI = GetTheUri(theURI, 1); // simple string compare to see if input & output URLs match if (strcmp(ReqTable[i].theUrl, retURI.get()) == 0) - QAOutput("The URIs MATCH. Compare test passed.", 1); + QAOutput("The in/out URIs MATCH.", 1); else - QAOutput("The URIs didn't MATCH. Compare test failed.", 1); + QAOutput("The in/out URIs don't MATCH.", 1); RvTestResult(rv, "NS_NewURI", 1); } diff --git a/mozilla/embedding/qa/testembed/resource.h b/mozilla/embedding/qa/testembed/resource.h index a7c1d4611de..012f63bed7e 100644 --- a/mozilla/embedding/qa/testembed/resource.h +++ b/mozilla/embedding/qa/testembed/resource.h @@ -269,6 +269,9 @@ #define ID_TESTS_ADDURICONTENTLISTENER_ADDFROMNSIURILOADER 32999 #define ID_TESTS_ADDURICONTENTLISTENER_OPENURI 33000 #define ID_TESTS_NSNEWCHANNEL 33001 +#define ID_VERIFYBUGS_169617 33002 +#define ID_VERIFYBUGS_170274 33003 +#define ID_TESTS_NSIIOSERVICENEWURI 33005 #define ID_CLIPBOARDCMD_PASTE 42789 #define ID_CLIPBOARDCMD_COPYSELECTION 42790 #define ID_CLIPBOARDCMD_SELECTALL 42791 @@ -285,7 +288,7 @@ #ifndef APSTUDIO_READONLY_SYMBOLS #define _APS_3D_CONTROLS 1 #define _APS_NEXT_RESOURCE_VALUE 153 -#define _APS_NEXT_COMMAND_VALUE 33002 +#define _APS_NEXT_COMMAND_VALUE 33006 #define _APS_NEXT_CONTROL_VALUE 1033 #define _APS_NEXT_SYMED_VALUE 101 #endif diff --git a/mozilla/embedding/qa/testembed/testembed.aps b/mozilla/embedding/qa/testembed/testembed.aps index c5ea8dcc089..9f841013019 100644 Binary files a/mozilla/embedding/qa/testembed/testembed.aps and b/mozilla/embedding/qa/testembed/testembed.aps differ diff --git a/mozilla/embedding/qa/testembed/testembed.rc b/mozilla/embedding/qa/testembed/testembed.rc index dcea935060d..8166171db59 100644 --- a/mozilla/embedding/qa/testembed/testembed.rc +++ b/mozilla/embedding/qa/testembed/testembed.rc @@ -166,7 +166,8 @@ BEGIN MENUITEM "OpenUri()", ID_TESTS_ADDURICONTENTLISTENER_OPENURI END - MENUITEM "NS_NewChannel", ID_TESTS_NSNEWCHANNEL + MENUITEM "NSNewChannel/AyncOpen", ID_TESTS_NSNEWCHANNEL + MENUITEM "nsIIOService->NewURI()", ID_TESTS_NSIIOSERVICENEWURI END POPUP "&Interfaces" BEGIN @@ -604,6 +605,8 @@ BEGIN BEGIN MENUITEM "&70228", ID_VERIFYBUGS_70228 MENUITEM "90195", ID_VERIFYBUGS_90195 + MENUITEM "169617", ID_VERIFYBUGS_169617 + MENUITEM "170274", ID_VERIFYBUGS_170274 END END