Added test cases for NSNewChannel & AsyncOpen, and nsIIOService->NewURI(). These are accessed from the "Tests" menu. Added a couple of bug verifications, accessed from the "Verify Bugs" menu. not part of the build.

git-svn-id: svn://10.0.0.236/trunk@130493 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
depstein%netscape.com
2002-09-26 02:57:09 +00:00
parent 945a20c30b
commit 00c918a49a
6 changed files with 109 additions and 41 deletions

View File

@@ -69,6 +69,7 @@
#include "nsICommandMgr.h"
#include "nsICmdParams.h"
#include "QaUtils.h"
#include "nsIIOService.h"
#include <stdio.h>
#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<nsIGlobalHistory> 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<nsIProfile> 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<nsIURILoader> myLoader(do_GetService(NS_URI_LOADER_CONTRACTID,&rv));
@@ -518,17 +522,16 @@ void CTests::OnTestsAddUriContentListenerByUriLoader()
}
}
// *********************************************************
void CTests::OnTestsAddUriContentListenerByOpenUri()
{
CUrlDialog myDialog;
nsCOMPtr<nsIURILoader> 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<nsIChannel> theChannel;
nsCOMPtr<nsIURI> 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<nsIChannel> theChannel;
nsCOMPtr<nsILoadGroup> theLoadGroup(do_CreateInstance(NS_LOADGROUP_CONTRACTID));
nsCOMPtr<nsIURI> 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<nsIStreamListener> listener(NS_STATIC_CAST(nsIStreamListener*, qaBrowserImpl));
nsCOMPtr<nsIWeakReference> 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<nsIIOService> 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<nsIGlobalHistory> 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<nsIChannel> theChannel;
nsCOMPtr<nsILoadGroup> theLoadGroup(do_CreateInstance(NS_LOADGROUP_CONTRACTID));
nsCOMPtr<nsIURI> 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<nsIHelperAppLauncher>
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<nsIURILoader> 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<nsISupports> 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<nsIURILoader> 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<nsISupports> 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)

View File

@@ -51,6 +51,7 @@
#include "BrowserView.h"
#include "BrowserImpl.h"
#include "StdAfx.h"
#include "UrlDialog.h"
/////////////////////////////////////////////////////////////////////////////
@@ -78,6 +79,7 @@ public:
nsCOMPtr<nsIBaseWindow> qaBaseWindow;
nsCOMPtr<nsIWebNavigation> qaWebNav;
CBrowserImpl *qaBrowserImpl;
CUrlDialog myDialog;
// local test methods
@@ -93,7 +95,8 @@ private:
// local test variables
PRBool exists;
nsCOMPtr<nsIURI> theUri;
nsCOMPtr<nsIURI> theURI;
nsCOMPtr<nsIChannel> 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();

View File

@@ -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);
}

View File

@@ -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

View File

@@ -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