diff options
| author | Oz Linden <oz@lindenlab.com> | 2012-06-24 07:27:34 -0400 | 
|---|---|---|
| committer | Oz Linden <oz@lindenlab.com> | 2012-06-24 07:27:34 -0400 | 
| commit | f92e7d30a8ae4b1017968c253bb90f5eb05e1725 (patch) | |
| tree | 6fb402c32570e911b79e19c9a131b5e335b7ef18 /indra | |
| parent | fb1fa8434a1a84105f67e72fdf72d300be2951bb (diff) | |
Add logging during tests (debug level, to test-specific files)
Diffstat (limited to 'indra')
| -rw-r--r-- | indra/llcommon/llerror.cpp | 9 | ||||
| -rw-r--r-- | indra/llcommon/llerror.h | 3 | ||||
| -rw-r--r-- | indra/llcommon/llerrorcontrol.h | 2 | ||||
| -rw-r--r-- | indra/test/test.cpp | 16 | 
4 files changed, 19 insertions, 11 deletions
diff --git a/indra/llcommon/llerror.cpp b/indra/llcommon/llerror.cpp index e4381dbbd6..5701e73b05 100644 --- a/indra/llcommon/llerror.cpp +++ b/indra/llcommon/llerror.cpp @@ -534,7 +534,7 @@ namespace  	} -	void commonInit(const std::string& dir) +	void commonInit(const std::string& dir, bool log_to_stderr = true)  	{  		LLError::Settings::reset(); @@ -542,7 +542,8 @@ namespace  		LLError::setFatalFunction(LLError::crashAndLoop);  		LLError::setTimeFunction(LLError::utcTime); -		if (shouldLogToStderr()) +		// log_to_stderr is only false in the unit and integration tests to keep builds quieter +		if (log_to_stderr && shouldLogToStderr())  		{  			LLError::addRecorder(new RecordToStderr(stderrLogWantsTime()));  		} @@ -580,9 +581,9 @@ namespace LLError  #endif  	} -	void initForApplication(const std::string& dir) +	void initForApplication(const std::string& dir, bool log_to_stderr)  	{ -		commonInit(dir); +		commonInit(dir, log_to_stderr);  	}  	void setPrintLocation(bool print) diff --git a/indra/llcommon/llerror.h b/indra/llcommon/llerror.h index a72e9a4892..b65b410153 100644 --- a/indra/llcommon/llerror.h +++ b/indra/llcommon/llerror.h @@ -35,7 +35,7 @@  #include "stdtypes.h" -/* Error Logging Facility +/** Error Logging Facility  	Information for most users: @@ -100,7 +100,6 @@  	even release.  Which means you can use them to help debug even when deployed  	to a real grid.  */ -  namespace LLError  {  	enum ELevel diff --git a/indra/llcommon/llerrorcontrol.h b/indra/llcommon/llerrorcontrol.h index ed9de002f5..add983c60f 100644 --- a/indra/llcommon/llerrorcontrol.h +++ b/indra/llcommon/llerrorcontrol.h @@ -62,7 +62,7 @@ namespace LLError  		// logs to stderr, syslog, and windows debug log  		// the identity string is used for in the syslog -	LL_COMMON_API void initForApplication(const std::string& dir); +	LL_COMMON_API void initForApplication(const std::string& dir, bool log_to_stderr = true);  		// resets all logging settings to defaults needed by applicaitons  		// logs to stderr and windows debug log  		// sets up log configuration from the file logcontrol.xml in dir diff --git a/indra/test/test.cpp b/indra/test/test.cpp index e58e7293fb..abe8f4f77b 100644 --- a/indra/test/test.cpp +++ b/indra/test/test.cpp @@ -113,13 +113,16 @@ public:  	virtual void run_started()  	{  		//std::cout << "run_started" << std::endl; +		LL_INFOS("TestRunner")<<"Test Started"<< LL_ENDL;  	}  	virtual void group_started(const std::string& name) { +		LL_INFOS("TestRunner")<<"Unit test group_started name=" << name << LL_ENDL;  		*mStream << "Unit test group_started name=" << name << std::endl;  	}  	virtual void group_completed(const std::string& name) { +		LL_INFOS("TestRunner")<<"Unit test group_completed name=" << name << LL_ENDL;  		*mStream << "Unit test group_completed name=" << name << std::endl;  	} @@ -167,9 +170,11 @@ public:  			if(!tr.message.empty())  			{  				*mStream << ": '" << tr.message << "'"; +				LL_WARNS("TestRunner") << "not ok : "<<tr.message << LL_ENDL;  			}  			*mStream << std::endl;  		} +		LL_INFOS("TestRunner")<<out.str()<<LL_ENDL;  	}  	virtual int getFailedTests() const { return mFailedTests; } @@ -389,11 +394,14 @@ int main(int argc, char **argv)  #ifndef LL_WINDOWS  	::testing::InitGoogleMock(&argc, argv);  #endif -	LLError::initForApplication("."); +	LLError::initForApplication(".", false /* do not log to stderr */);  	LLError::setFatalFunction(wouldHaveCrashed); -	LLError::setDefaultLevel(LLError::LEVEL_ERROR); -	//< *TODO: should come from error config file. Note that we -	// have a command line option that sets this to debug. +	LLError::setDefaultLevel(LLError::LEVEL_DEBUG); +	LLError::setPrintLocation(true); +	std::string test_app_name(argv[0]); +	std::string test_log = test_app_name + ".log"; +	LLFile::remove(test_log); +	LLError::logToFile(test_log);  #ifdef CTYPE_WORKAROUND  	ctype_workaround();  | 
