namespace mozilla { namespace _ipdltest { intr protocol PTestStackHooks { child: async Start(); // These tests are more fruitful running child->parent, because // children can send |sync| messages parent: async Async(); sync Sync(); intr Rpc(); both: intr StackFrame(); parent: async __delete__(); state START: send Start goto TEST1; state TEST1: recv Async goto TEST2; state TEST2: recv Sync goto TEST3; state TEST3: answer Rpc goto TEST4; state TEST4: answer StackFrame goto TEST4_2; state TEST4_2: call StackFrame goto TEST4_3; state TEST4_3: recv Async goto TEST5; state TEST5: answer StackFrame goto TEST5_2; state TEST5_2: call StackFrame goto TEST5_3; state TEST5_3: recv Sync goto DEAD; state DEAD: recv __delete__; }; } // namespace mozilla } // namespace _ipdltest