On Wed, Oct 22, 2014 at 09:29:05AM -0400, Benjamin Smedberg wrote:
> Is there a mechanism for running single gtests that start XPCOM?
> 
> With the current gtest mechanism, "normal" gtests can't start XPCOM
> (NS_InitXPCOM, event loops, component manager, etc) for various reasons:
> 
> * gtests are run in parallel and XPCOM has globals and thread-locals which
> don't allow that kind of multithreading
> * XPCOM doesn't support being re-initialized after it has been shut down,
> and supporting that is a huge task that is unlikely to be a good idea
> 
> However, I've heard that there are some media tests which do initialize
> XPCOM: https://wiki.mozilla.org/Media/WebRTC/Testing

 AFAIK, webrtc tests are "old-school" C++ unit tests.
 
> I am currently attempting to convert at a few C++ unit tests which start
> XPCOM and also end up using bits of JSAPI:
> 
> toolkit/components/places/tests/cpp/test_IHistory.cpp uses JSAPI via
> nsINode->nsWrapperCache->RootingAPI
> media/webrtc/signalingtest uses nsPIDOMWindow -> nsINode -> nsWrapperCache
> -> RootingAPI
> 
> I'd like to convert these to be use the gtest-libxul. Do we have a framework
> for gtests that start XPCOM and therefore need to be run one at a time
> rather than using the normal parallel-gtest mechanism?

We don't. Currently, all gtests are run from a single instance of
firefox.

Mike
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to