Some additional error checking for observer service. Direct rv results to screen dialog for nsIEditingSession tests. Not part of the build.

This commit is contained in:
depstein%netscape.com 2002-11-05 04:19:33 +00:00
Родитель d716a6471a
Коммит 1d8f1eb68d
3 изменённых файлов: 54 добавлений и 31 удалений

Просмотреть файл

@ -81,45 +81,51 @@ nsIEditingSession * CnsIEditSession::GetEditSessionObject()
return (editingSession); return (editingSession);
} }
void CnsIEditSession::InitTest() void CnsIEditSession::InitTest(PRInt16 displayMode)
{ {
editingSession = GetEditSessionObject(); editingSession = GetEditSessionObject();
domWindow = GetTheDOMWindow(qaWebBrowser); domWindow = GetTheDOMWindow(qaWebBrowser);
if (domWindow && editingSession) { if (domWindow && editingSession) {
rv = editingSession->Init(domWindow); rv = editingSession->Init(domWindow);
RvTestResult(rv, "Init() test", 2); RvTestResult(rv, "Init() test", displayMode);
if (displayMode == 1)
RvTestResultDlg(rv, "Init() test", true);
} }
else else
QAOutput("Didn't get object(s) for InitTest() test. Test failed.", 1); QAOutput("Didn't get object(s) for InitTest() test. Test failed.", 1);
} }
void CnsIEditSession::MakeWinEditTest(PRBool afterUriLoad) void CnsIEditSession::MakeWinEditTest(PRBool afterUriLoad, PRInt16 displayMode)
{ {
editingSession = GetEditSessionObject(); editingSession = GetEditSessionObject();
domWindow = GetTheDOMWindow(qaWebBrowser); domWindow = GetTheDOMWindow(qaWebBrowser);
if (domWindow && editingSession) { if (domWindow && editingSession) {
// aEditorType (2nd param) is crashing with null entry. bug 174151 // aEditorType (2nd param) is crashing with null entry. bug 174151
rv= editingSession->MakeWindowEditable(domWindow, "text", afterUriLoad); rv= editingSession->MakeWindowEditable(domWindow, "text", afterUriLoad);
RvTestResult(rv, "MakeWindowEditable() test", 2); RvTestResult(rv, "MakeWindowEditable() test", displayMode);
if (displayMode == 1)
RvTestResultDlg(rv, "MakeWindowEditable() test");
} }
else else
QAOutput("Didn't get object(s) for MakeWindowEditable() test. Test failed.", 1); QAOutput("Didn't get object(s) for MakeWindowEditable() test. Test failed.", 1);
} }
void CnsIEditSession::WinIsEditTest(PRBool outIsEditable) void CnsIEditSession::WinIsEditTest(PRBool outIsEditable, PRInt16 displayMode)
{ {
editingSession = GetEditSessionObject(); editingSession = GetEditSessionObject();
domWindow = GetTheDOMWindow(qaWebBrowser); domWindow = GetTheDOMWindow(qaWebBrowser);
if (domWindow && editingSession) { if (domWindow && editingSession) {
rv = editingSession->WindowIsEditable(domWindow, &outIsEditable); rv = editingSession->WindowIsEditable(domWindow, &outIsEditable);
RvTestResult(rv, "WindowIsEditable() test", 2); RvTestResult(rv, "WindowIsEditable() test", displayMode);
FormatAndPrintOutput("the outIsEditable boolean = ", outIsEditable, 2); if (displayMode == 1)
RvTestResultDlg(rv, "WindowIsEditable() test");
FormatAndPrintOutput("the outIsEditable boolean = ", outIsEditable, displayMode);
} }
else else
QAOutput("Didn't get object(s) for WinIsEditTest() test. Test failed.", 1); QAOutput("Didn't get object(s) for WinIsEditTest() test. Test failed.", 1);
} }
void CnsIEditSession::GetEditorWinTest() void CnsIEditSession::GetEditorWinTest(PRInt16 displayMode)
{ {
nsCOMPtr<nsIEditor> theEditor; nsCOMPtr<nsIEditor> theEditor;
// nsIEditor *theEditor = nsnull; // nsIEditor *theEditor = nsnull;
@ -127,7 +133,9 @@ void CnsIEditSession::GetEditorWinTest()
domWindow = GetTheDOMWindow(qaWebBrowser); domWindow = GetTheDOMWindow(qaWebBrowser);
if (domWindow && editingSession) { if (domWindow && editingSession) {
rv = editingSession->GetEditorForWindow(domWindow, getter_AddRefs(theEditor)); rv = editingSession->GetEditorForWindow(domWindow, getter_AddRefs(theEditor));
RvTestResult(rv, "GetEditorForWindow() test", 2); RvTestResult(rv, "GetEditorForWindow() test", displayMode);
if (displayMode == 1)
RvTestResultDlg(rv, "GetEditorForWindow() test");
if (!theEditor) if (!theEditor)
QAOutput("Didn't get the Editor object."); QAOutput("Didn't get the Editor object.");
} }
@ -135,25 +143,29 @@ void CnsIEditSession::GetEditorWinTest()
QAOutput("Didn't get object(s) for WinIsEditTest() test. Test failed.", 1); QAOutput("Didn't get object(s) for WinIsEditTest() test. Test failed.", 1);
} }
void CnsIEditSession::SetEditorWinTest() void CnsIEditSession::SetEditorWinTest(PRInt16 displayMode)
{ {
editingSession = GetEditSessionObject(); editingSession = GetEditSessionObject();
domWindow = GetTheDOMWindow(qaWebBrowser); domWindow = GetTheDOMWindow(qaWebBrowser);
if (domWindow && editingSession) { if (domWindow && editingSession) {
rv = editingSession->SetupEditorOnWindow(domWindow); rv = editingSession->SetupEditorOnWindow(domWindow);
RvTestResult(rv, "SetupEditorOnWindow() test", 2); RvTestResult(rv, "SetupEditorOnWindow() test", displayMode);
if (displayMode == 1)
RvTestResultDlg(rv, "SetupEditorOnWindow() test");
} }
else else
QAOutput("Didn't get object(s) for SetEditorWinTest() test. Test failed.", 1); QAOutput("Didn't get object(s) for SetEditorWinTest() test. Test failed.", 1);
} }
void CnsIEditSession::TearEditorWinTest() void CnsIEditSession::TearEditorWinTest(PRInt16 displayMode)
{ {
editingSession = GetEditSessionObject(); editingSession = GetEditSessionObject();
domWindow = GetTheDOMWindow(qaWebBrowser); domWindow = GetTheDOMWindow(qaWebBrowser);
if (domWindow && editingSession) { if (domWindow && editingSession) {
rv = editingSession->TearDownEditorOnWindow(domWindow); rv = editingSession->TearDownEditorOnWindow(domWindow);
RvTestResult(rv, "TearDownEditorOnWindow() test", 2); RvTestResult(rv, "TearDownEditorOnWindow() test", displayMode);
if (displayMode == 1)
RvTestResultDlg(rv, "TearDownEditorOnWindow() test");
} }
else else
QAOutput("Didn't get object(s) for TearEditorWinTest() test. Test failed.", 1); QAOutput("Didn't get object(s) for TearEditorWinTest() test. Test failed.", 1);
@ -167,34 +179,34 @@ void CnsIEditSession::OnStartTests(UINT nMenuID)
RunAllTests(); RunAllTests();
break; break;
case ID_INTERFACES_NSIEDITINGSESSION_INIT : case ID_INTERFACES_NSIEDITINGSESSION_INIT :
InitTest(); InitTest(2);
break; break;
case ID_INTERFACES_NSIEDITINGSESSION_MAKEWINDOWEDITABLE : case ID_INTERFACES_NSIEDITINGSESSION_MAKEWINDOWEDITABLE :
MakeWinEditTest(PR_FALSE); MakeWinEditTest(PR_FALSE, 2);
break; break;
case ID_INTERFACES_NSIEDITINGSESSION_WINDOWISEDITABLE : case ID_INTERFACES_NSIEDITINGSESSION_WINDOWISEDITABLE :
WinIsEditTest(PR_TRUE); WinIsEditTest(PR_TRUE, 2);
break; break;
case ID_INTERFACES_NSIEDITINGSESSION_GETEDITORFORWINDOW : case ID_INTERFACES_NSIEDITINGSESSION_GETEDITORFORWINDOW :
GetEditorWinTest(); GetEditorWinTest(2);
break; break;
case ID_INTERFACES_NSIEDITINGSESSION_SETUPEDITORONWINDOW : case ID_INTERFACES_NSIEDITINGSESSION_SETUPEDITORONWINDOW :
SetEditorWinTest(); SetEditorWinTest(2);
break; break;
case ID_INTERFACES_NSIEDITINGSESSION_TEARDOWNEDITORONWINDOW : case ID_INTERFACES_NSIEDITINGSESSION_TEARDOWNEDITORONWINDOW :
TearEditorWinTest(); TearEditorWinTest(2);
break; break;
} }
} }
void CnsIEditSession::RunAllTests() void CnsIEditSession::RunAllTests()
{ {
InitTest(); InitTest(1);
MakeWinEditTest(PR_FALSE); MakeWinEditTest(PR_FALSE, 1);
WinIsEditTest(PR_TRUE); WinIsEditTest(PR_TRUE, 1);
GetEditorWinTest(); GetEditorWinTest(1);
// SetEditorWinTest(); // SetEditorWinTest(1);
TearEditorWinTest(); TearEditorWinTest(1);
} }
///////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////

Просмотреть файл

@ -83,12 +83,12 @@ public:
// local methods for nsIEditingSession tests // local methods for nsIEditingSession tests
nsIEditingSession * GetEditSessionObject(); nsIEditingSession * GetEditSessionObject();
void InitTest(void); void InitTest(PRInt16);
void MakeWinEditTest(PRBool); void MakeWinEditTest(PRBool, PRInt16);
void WinIsEditTest(PRBool); void WinIsEditTest(PRBool, PRInt16);
void SetEditorWinTest(void); void SetEditorWinTest(PRInt16);
void GetEditorWinTest(void); void GetEditorWinTest(PRInt16);
void TearEditorWinTest(void); void TearEditorWinTest(PRInt16);
void OnStartTests(UINT nMenuID); void OnStartTests(UINT nMenuID);
void RunAllTests(void); void RunAllTests(void);

Просмотреть файл

@ -177,6 +177,12 @@ void CnsIObserServ::NotifyObserversTest(int displayType)
QAOutput("\n nsIObserverService::NotifyObserversTest()."); QAOutput("\n nsIObserverService::NotifyObserversTest().");
if (!observerService)
{
QAOutput("Can't get nsIObserverService object. Tests fail.");
return;
}
for (i=0; i<10; i++) for (i=0; i<10; i++)
{ {
FormatAndPrintOutput("The notified observer = ", ObserverTable[i].theTopic, 1); FormatAndPrintOutput("The notified observer = ", ObserverTable[i].theTopic, 1);
@ -223,6 +229,11 @@ void CnsIObserServ::EnumerateObserversTest(int displayType)
{ {
simpleEnum->GetNext(getter_AddRefs(observer)); simpleEnum->GetNext(getter_AddRefs(observer));
if (!observer)
{
QAOutput("Didn't get the observer object. Tests fail.");
return;
}
rv = observer->Observe(observer, ObserverTable[i].theTopic, 0); rv = observer->Observe(observer, ObserverTable[i].theTopic, 0);
RvTestResult(rv, "nsIObserver() test", 1); RvTestResult(rv, "nsIObserver() test", 1);
RvTestResultDlg(rv, "nsIObserver() test"); RvTestResultDlg(rv, "nsIObserver() test");