gecko-dev/dom
Paul Adenot c270650bfe Bug 1404977 - Part 16 - Unit test CubebDeviceEnumerator. r=pehrsons
This is done by implementing a fake cubeb backend that implements the subset of
operations we need, while offering an API to be able to control what this
backend is doing.

Because we're reimplementing the private cubeb API, it is necessary to copy
part of a cubeb internal header, and mimick exactly how the vtable mechanism to
do the dynamic dispatch to the diffferent backends in cubeb works. This is not
ideal but works.

When the cubeb API functions are called (from deep in the Gecko process), we
re-bind the call to the mock cubeb backend object and behave exactly like a
normal backend (calling various callbacks and returning fake objects).

Finally, we inject this mock cubeb backend to the running Gecko process (in lieu
of the real one that would have been picked) by setting the global sCubebBackend
variable via a private API exposed only in the test in CubebUtils.h.

MozReview-Commit-ID: 8ZbJhl7pZ2t

--HG--
extra : rebase_source : 922a03fa84803ed04aed633795a54b8d2a305e15
2018-06-22 11:55:31 +02:00
..
abort Bug 1480364 - AbortSignal doesn't need to keep alive AbortController, r=smaug 2018-08-03 07:06:16 +02:00
animation Merge inbound to mozilla-central. a=merge 2018-08-02 11:54:46 +03:00
asmjscache Bug 1453795 - DOM - Initialize member fields in classes/ structures. r=peterv 2018-06-16 17:21:46 +03:00
audiochannel
base Bug 1479544. Remove nsIXULChromeRegistry::ReloadChrome. r=mossop 2018-08-03 15:14:43 +00:00
battery Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot 2018-06-26 17:05:01 -07:00
bindings Merge inbound to mozilla-central. a=merge 2018-08-03 01:28:14 +03:00
broadcastchannel Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot 2018-06-26 17:05:01 -07:00
browser-element Bug 1479363 part 5 - Use JSAutoRealm instead of JSAutoRealmAllowCCW in remaining dom/ directories. r=mccr8 2018-08-02 08:49:00 +02:00
cache Bug 1471189 - Removing 'Terminating' state in workers, r=mrbkap 2018-07-12 19:33:41 +02:00
canvas Bug 1479363 part 5 - Use JSAutoRealm instead of JSAutoRealmAllowCCW in remaining dom/ directories. r=mccr8 2018-08-02 08:49:00 +02:00
chrome-webidl Bug 1477943 - Add a unique id per PerformanceCounter instance - r=baku,froydnj 2018-07-27 11:44:22 +02:00
clients Bug 1479363 part 5 - Use JSAutoRealm instead of JSAutoRealmAllowCCW in remaining dom/ directories. r=mccr8 2018-08-02 08:49:00 +02:00
commandhandler Backed out changeset 9035ff3757ac (bug 1415980) at request from froydnj on the suspicion that it's going to break MSVC builds when it gets merged to central. 2018-07-31 01:19:49 +03:00
console Bug 1479363 part 5 - Use JSAutoRealm instead of JSAutoRealmAllowCCW in remaining dom/ directories. r=mccr8 2018-08-02 08:49:00 +02:00
credentialmanagement Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot 2018-06-26 17:05:01 -07:00
crypto Bug 1453795 - DOM/Crypto - Initialize member fields in classes/ structures. r=mt 2018-07-11 10:37:57 +03:00
encoding Bug 1478955 part 1 - Rename JSAutoRealm to JSAutoRealmAllowCCW. r=luke 2018-07-28 12:12:26 +02:00
events Backed out 3 changesets (bug 1479569) for devtools/client/responsive.html failures. CLOSED TREE 2018-08-03 10:39:12 +03:00
fetch Bug 1474542 - Use the unwrapped object's global in FetchUtil::StreamResponseToJS. r=luke 2018-07-26 10:52:01 +02:00
file Bug 1480354 - Better approach for nested blobs construction, r=smaug 2018-08-03 08:58:32 +02:00
filehandle Bug 1465585: Switch from mozilla::Move to std::move. r=froydnj 2018-06-01 10:45:27 +02:00
filesystem Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot 2018-06-26 17:05:01 -07:00
flex Bug 1477856: In flexbox devtools API, report max-width:none as +infinity. r=bradwerth 2018-07-27 21:38:46 +00:00
gamepad Bug 1473193 - Don't use dom/gamepad/linux on non-Linux OSes. r=qdot 2018-07-03 17:54:32 -07:00
geolocation Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot 2018-06-26 17:05:01 -07:00
grid Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot 2018-06-26 17:05:01 -07:00
html Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-08-03 01:34:26 +03:00
imptests
indexedDB Bug 1479363 part 5 - Use JSAutoRealm instead of JSAutoRealmAllowCCW in remaining dom/ directories. r=mccr8 2018-08-02 08:49:00 +02:00
interfaces Backed out 3 changesets (bug 1479569) for devtools/client/responsive.html failures. CLOSED TREE 2018-08-03 10:39:12 +03:00
ipc Backed out 3 changesets (bug 1479569) for devtools/client/responsive.html failures. CLOSED TREE 2018-08-03 10:39:12 +03:00
jsurl Bug 1382035. Treat Promise return values like undefined for javascript: urls. r=peterv 2018-07-23 16:18:33 -04:00
locales Bug 1471502 - Misleading console error message fixed r=ckerschb 2018-07-08 02:16:12 +03:00
manifest Bug 1405428 - skip-if = verify on mochitests which do not pass test-verify. r=gbrown 2018-06-10 05:01:47 -04:00
mathml Bug 1479860: Remove unused aCompileEventHandlers argument from BindToTree. r=bz 2018-08-01 10:42:54 +02:00
media Bug 1404977 - Part 16 - Unit test CubebDeviceEnumerator. r=pehrsons 2018-06-22 11:55:31 +02:00
messagechannel Bug 1450167. Stop using atom-or-string for event names in the listener manager. r=smaug 2018-07-24 18:15:19 -04:00
midi Bug 1450167. Stop using atom-or-string for event names in the listener manager. r=smaug 2018-07-24 18:15:19 -04:00
network Bug 1478955 part 1 - Rename JSAutoRealm to JSAutoRealmAllowCCW. r=luke 2018-07-28 12:12:26 +02:00
notification Bug 1452743. Stop using the no-arg DOMEventTargetHelper constructor from Notification. r=smaug 2018-07-24 18:15:22 -04:00
offline Bug 1475065 part 13. Remove nsIDOMOfflineResourceList. r=nika 2018-07-13 15:42:08 -07:00
payments Bug 1468356 - Implement onpaymentmethodchange attribute. r=mrbkap 2018-06-30 10:11:00 +03:00
performance Bug 1462883 - Update PerformanceTimingData::mReportCrossOriginRedirect in SetPropertiesFromHttpChannel, r=bz 2018-08-03 13:08:32 +02:00
permission Bug 1278831 - PermissionStatus must keep itself alive when it has a event listener, r=smaug 2018-08-01 00:19:12 +02:00
plugins Backed out changeset 5950c9d63c3b (bug 1090497) for build bustages on several files. CLOSED TREE 2018-08-02 19:59:53 +03:00
power
presentation Bug 1475004 - Enable ESLint for dom/presentation - manual fixes. r=mccr8 2018-07-03 16:25:27 +01:00
promise Bug 1479363 part 5 - Use JSAutoRealm instead of JSAutoRealmAllowCCW in remaining dom/ directories. r=mccr8 2018-08-02 08:49:00 +02:00
push Bug 1476145 part 5. Stop using getInterface(nsIDOMWindowUtils) in DOM code. r=mccr8 2018-07-24 19:47:41 -04:00
quota Bug 1473671 - Don't store persistent block permission if ESC pressed while showing permission doorhanger. r=florian 2018-07-17 14:45:17 +12:00
res
script Bug 1479363 part 5 - Use JSAutoRealm instead of JSAutoRealmAllowCCW in remaining dom/ directories. r=mccr8 2018-08-02 08:49:00 +02:00
security Bug 1476592 - Remove the cache from nsCSPContext - part 2 - sendViolationReports parameter, r=ckerschb, r=aosmond 2018-08-01 06:35:24 +02:00
serviceworkers Bug 1446940 part 5. Stop getting docshells from windows via getInterface in dom/editor/etc code. r=kmag 2018-08-01 13:07:11 -04:00
smil Bug 1479450: Implement nsCSSProps::LookupProperty using Rust. r=xidorn 2018-07-31 12:00:15 +02:00
storage Backed out changeset 5950c9d63c3b (bug 1090497) for build bustages on several files. CLOSED TREE 2018-08-02 19:59:53 +03:00
svg Bug 1479272 - remove svg.marker-improvements.enabled pref r=heycam 2018-07-31 21:45:29 +01:00
system Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot 2018-06-26 17:05:01 -07:00
tests Bug 1479570. Get Add a getter to get a docshell from nsIWindowlessBrowser. r=kmag 2018-08-03 00:05:07 +00:00
u2f Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot 2018-06-26 17:05:01 -07:00
url Bug 1471189 - Removing 'Terminating' state in workers, r=mrbkap 2018-07-12 19:33:41 +02:00
vr Bug 1476797 - Indicate VR session activity indepenently of layer presence r=daoshengmu 2018-07-31 01:41:25 +00:00
webauthn Bug 1474273 - Add xpc::CurrentNativeGlobal and use it instead of NativeGlobal(JS::CurrentGlobalOrNull(cx)). r=bz 2018-07-11 14:07:02 +02:00
webbrowserpersist Bug 1476145 part 9. Drop support for getting window utils via getInterface. r=nika 2018-07-24 19:47:43 -04:00
webgpu Bug 1469376 - Initial stubs for WebGPU sketch API. - r=kvark,qdot 2018-06-13 10:43:48 -07:00
webidl Bug 1480527. Remove QueryInterface from the JS reflection of boxobjects. r=mccr8 2018-08-02 15:26:48 -04:00
websocket Bug 1446940 part 5. Stop getting docshells from windows via getInterface in dom/editor/etc code. r=kmag 2018-08-01 13:07:11 -04:00
workers Bug 1479547 Part 1 - Remove instrumentation related to non-deterministic GCs, r=mccr8. 2018-07-31 19:34:50 +00:00
worklet Bug 1317481 - Optimize away Generator/Promise handling for await in the topmost JS frame with already resolved/rejected Promise. r=anba,smaug 2018-08-02 16:11:57 +09:00
xbl Bug 1479363 part 3 - Use JSAutoRealm instead of JSAutoRealmAllowCCW in dom/xbl and dom/xul. r=bholley 2018-07-31 08:37:07 +02:00
xhr Bug 1456421 - Align XHR username/password precedence rules with current spec. r=baku 2018-07-31 09:49:00 -04:00
xml Bug 1479860: Remove unused aCompileEventHandlers argument from BindToTree. r=bz 2018-08-01 10:42:54 +02:00
xslt Backed out changeset 9035ff3757ac (bug 1415980) at request from froydnj on the suspicion that it's going to break MSVC builds when it gets merged to central. 2018-07-31 01:19:49 +03:00
xul Bug 1476142 part 4. Remove some unnecessary QIs on window in various parts of the tree. r=kmag 2018-08-02 15:26:48 -04:00
jar.mn
moz.build Bug 1475065 part 13. Remove nsIDOMOfflineResourceList. r=nika 2018-07-13 15:42:08 -07:00