1 #ifndef mozilla__ipdltest_TestSyncError_h 2 #define mozilla__ipdltest_TestSyncError_h 1 3 4 #include "mozilla/_ipdltest/IPDLUnitTests.h" 5 6 #include "mozilla/_ipdltest/PTestSyncErrorParent.h" 7 #include "mozilla/_ipdltest/PTestSyncErrorChild.h" 8 9 namespace mozilla { 10 namespace _ipdltest { 11 12 class TestSyncErrorParent : public PTestSyncErrorParent { 13 friend class PTestSyncErrorParent; 14 15 public: 16 TestSyncErrorParent(); 17 virtual ~TestSyncErrorParent(); 18 RunTestInProcesses()19 static bool RunTestInProcesses() { return true; } RunTestInThreads()20 static bool RunTestInThreads() { return true; } 21 22 void Main(); 23 24 protected: 25 mozilla::ipc::IPCResult RecvError(); 26 ProcessingError(Result aCode,const char * aReason)27 virtual void ProcessingError(Result aCode, const char* aReason) override { 28 // Ignore errors 29 } 30 ActorDestroy(ActorDestroyReason why)31 virtual void ActorDestroy(ActorDestroyReason why) override { 32 if (NormalShutdown != why) fail("unexpected destruction!"); 33 passed("ok"); 34 QuitParent(); 35 } 36 }; 37 38 class TestSyncErrorChild : public PTestSyncErrorChild { 39 friend class PTestSyncErrorChild; 40 41 public: 42 TestSyncErrorChild(); 43 virtual ~TestSyncErrorChild(); 44 45 protected: 46 mozilla::ipc::IPCResult RecvStart(); 47 ProcessingError(Result aCode,const char * aReason)48 virtual void ProcessingError(Result aCode, const char* aReason) override { 49 // Ignore errors 50 } 51 ActorDestroy(ActorDestroyReason why)52 virtual void ActorDestroy(ActorDestroyReason why) override { 53 if (NormalShutdown != why) fail("unexpected destruction!"); 54 QuitChild(); 55 } 56 }; 57 58 } // namespace _ipdltest 59 } // namespace mozilla 60 61 #endif // ifndef mozilla__ipdltest_TestSyncError_h 62