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