mirror of
https://github.com/reactos/reactos.git
synced 2025-06-25 12:59:43 +00:00
[ROSAUTOTEST]
- Finish a test run in the database when all tests have successfully been run. This got lost during the C++ rewrite of rosautotest in r40147. - Don't spam the logs with useless OK messages. Only report the web service response if an error occurred. svn path=/trunk/; revision=66516
This commit is contained in:
parent
f268fadf4a
commit
65b4da13f4
3 changed files with 43 additions and 6 deletions
|
@ -94,6 +94,38 @@ CWebService::DoRequest(const string& InputData)
|
||||||
return Data.release();
|
return Data.release();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Interface to other classes for finishing this test run
|
||||||
|
*
|
||||||
|
* @param TestType
|
||||||
|
* Constant pointer to a char array containing the test type to be run (i.e. "wine")
|
||||||
|
*/
|
||||||
|
void
|
||||||
|
CWebService::Finish(const char* TestType)
|
||||||
|
{
|
||||||
|
auto_array_ptr<char> Response;
|
||||||
|
string Data;
|
||||||
|
stringstream ss;
|
||||||
|
|
||||||
|
if (!m_TestID)
|
||||||
|
EXCEPTION("CWebService::Finish was called, but not a single result had been submitted!");
|
||||||
|
|
||||||
|
Data = "action=finish";
|
||||||
|
Data += Configuration.GetAuthenticationRequestString();
|
||||||
|
Data += "&testtype=";
|
||||||
|
Data += TestType;
|
||||||
|
Data += "&testid=";
|
||||||
|
Data += m_TestID;
|
||||||
|
|
||||||
|
Response.reset(DoRequest(Data));
|
||||||
|
|
||||||
|
if (strcmp(Response, "OK"))
|
||||||
|
{
|
||||||
|
ss << "When finishing the test run, the server responded:" << endl << Response << endl;
|
||||||
|
SSEXCEPTION;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Requests a Test ID from the Web Service for our test run.
|
* Requests a Test ID from the Web Service for our test run.
|
||||||
*
|
*
|
||||||
|
@ -206,9 +238,9 @@ CWebService::Submit(const char* TestType, CTestInfo* TestInfo)
|
||||||
|
|
||||||
Response.reset(DoRequest(Data));
|
Response.reset(DoRequest(Data));
|
||||||
|
|
||||||
ss << "The server responded:" << endl << Response << endl;
|
if (strcmp(Response, "OK"))
|
||||||
StringOut(ss.str());
|
{
|
||||||
|
ss << "When submitting the result, the server responded:" << endl << Response << endl;
|
||||||
if(strcmp(Response, "OK"))
|
SSEXCEPTION;
|
||||||
EXCEPTION("Aborted!\n");
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
* PROJECT: ReactOS Automatic Testing Utility
|
* PROJECT: ReactOS Automatic Testing Utility
|
||||||
* LICENSE: GNU GPLv2 or any later version as published by the Free Software Foundation
|
* LICENSE: GNU GPLv2 or any later version as published by the Free Software Foundation
|
||||||
* PURPOSE: Class implementing the interface to the "testman" Web Service
|
* PURPOSE: Class implementing the interface to the "testman" Web Service
|
||||||
* COPYRIGHT: Copyright 2009 Colin Finck <colin@reactos.org>
|
* COPYRIGHT: Copyright 2009-2015 Colin Finck <colin@reactos.org>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
class CWebService
|
class CWebService
|
||||||
|
@ -21,5 +21,6 @@ public:
|
||||||
CWebService();
|
CWebService();
|
||||||
~CWebService();
|
~CWebService();
|
||||||
|
|
||||||
|
void Finish(const char* TestType);
|
||||||
void Submit(const char* TestType, CTestInfo* TestInfo);
|
void Submit(const char* TestType, CTestInfo* TestInfo);
|
||||||
};
|
};
|
||||||
|
|
|
@ -372,6 +372,10 @@ CWineTest::Run()
|
||||||
StringOut("\n\n");
|
StringOut("\n\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* We're done with all tests. Finish this run */
|
||||||
|
if(Configuration.DoSubmit())
|
||||||
|
WebService->Finish("wine");
|
||||||
|
|
||||||
/* Restore the original error mode */
|
/* Restore the original error mode */
|
||||||
if(!Configuration.IsInteractive())
|
if(!Configuration.IsInteractive())
|
||||||
SetErrorMode(ErrorMode);
|
SetErrorMode(ErrorMode);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue