blob: e4d8d0dbebee50cf98c72865ac295f00c63d1f74 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
include protocol PTestShutdownSub;
namespace mozilla {
namespace _ipdltest {
intr protocol PTestShutdown {
manages PTestShutdownSub;
child:
async Start();
parent:
// NB: we test deletion and crashing only, not shutdown, because
// crashing is the same code path as shutdown, and other IPDL unit
// tests check shutdown semantics
async PTestShutdownSub(bool expectCrash);
// Used to synchronize between parent and child, to avoid races
// around flushing socket write queues
sync Sync();
async __delete__();
state START:
send Start goto TESTING;
state TESTING:
recv PTestShutdownSub goto TESTING;
recv Sync goto DYING;
state DYING:
recv __delete__;
};
} // namespace _ipdltest
} // namespace mozilla
|