gecko-dev/ipc/ipdl/test
Kan-Ru Chen 625b54086e Bug 1313200 - Allow IPC messages to async return MozPromises. r=billm,jwwang
This patch implements async returns for IPDL using MozPromises. There
are following changes:

* Initialize AbstractThreads for MessageLoops
* Record promises and their reject functions
  * When async message returns, call their resolve functions
  * When send error or channel close, call their reject functions
* Implement "unresolved-ipc-promises" count for about:memory
* Test cases

See bug attachment for generated code from test cases

MozReview-Commit-ID: 7xmg8gwDGaW

--HG--
rename : ipc/ipdl/test/ipdl/error/AsyncReturn.ipdl => ipc/ipdl/test/ipdl/ok/AsyncReturn.ipdl
extra : rebase_source : 55c4f68a3f8b7d0df5ca9f9c45b9a205b337282d
2017-03-16 17:36:15 +08:00
..
cxx Bug 1313200 - Allow IPC messages to async return MozPromises. r=billm,jwwang 2017-03-16 17:36:15 +08:00
ipdl Bug 1313200 - Allow IPC messages to async return MozPromises. r=billm,jwwang 2017-03-16 17:36:15 +08:00
moz.build Bug 1286877 - do not set c-basic-offset for python-mode; r=gps 2016-07-14 10:16:42 -06:00
README.txt

There are two major categories of tests, segregated into different
top-level directories under test/.

The first category (ipdl/) is IPDL-compiler tests.  These tests check
that the IPDL compiler is successfully compiling correct
specifications, and successfully rejecting erroneous specifications.

The second category (cxx/) is C++ tests of IPDL semantics.  These
tests check that async/sync/rpc semantics are implemented correctly,
ctors/dtors behave as they should, etc.