ipc/ipdl/test/cxx/TestRaceDeferral.h

Wed, 31 Dec 2014 13:27:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 13:27:57 +0100
branch
TOR_BUG_3246
changeset 6
8bccb770b82d
permissions
-rw-r--r--

Ignore runtime configuration files generated during quality assurance.

     1 #ifndef mozilla__ipdltest_TestRaceDeferral_h
     2 #define mozilla__ipdltest_TestRaceDeferral_h 1
     4 #include "mozilla/_ipdltest/IPDLUnitTests.h"
     6 #include "mozilla/_ipdltest/PTestRaceDeferralParent.h"
     7 #include "mozilla/_ipdltest/PTestRaceDeferralChild.h"
     9 namespace mozilla {
    10 namespace _ipdltest {
    12 class TestRaceDeferralParent :
    13     public PTestRaceDeferralParent
    14 {
    15 public:
    16     TestRaceDeferralParent();
    17     virtual ~TestRaceDeferralParent();
    19     static bool RunTestInProcesses() { return true; }
    20     static bool RunTestInThreads() { return true; }
    22     void Main();
    24 protected:
    25     void Test1();
    27     virtual bool AnswerLose() MOZ_OVERRIDE;
    29     virtual mozilla::ipc::RacyInterruptPolicy
    30     MediateInterruptRace(const Message& parent, const Message& child) MOZ_OVERRIDE;
    32     virtual void ActorDestroy(ActorDestroyReason why) MOZ_OVERRIDE
    33     {
    34         if (NormalShutdown != why)
    35             fail("unexpected destruction!");  
    36         passed("ok");
    37         QuitParent();
    38     }
    40     bool mProcessedLose;
    41 };
    44 class TestRaceDeferralChild :
    45     public PTestRaceDeferralChild
    46 {
    47 public:
    48     TestRaceDeferralChild();
    49     virtual ~TestRaceDeferralChild();
    51 protected:
    52     virtual bool RecvStartRace() MOZ_OVERRIDE;
    54     virtual bool AnswerWin() MOZ_OVERRIDE;
    56     virtual bool AnswerRpc() MOZ_OVERRIDE;
    58     virtual mozilla::ipc::RacyInterruptPolicy
    59     MediateInterruptRace(const Message& parent, const Message& child) MOZ_OVERRIDE;
    61     virtual void ActorDestroy(ActorDestroyReason why) MOZ_OVERRIDE
    62     {
    63         if (NormalShutdown != why)
    64             fail("unexpected destruction!");
    65         QuitChild();
    66     }
    67 };
    70 } // namespace _ipdltest
    71 } // namespace mozilla
    74 #endif // ifndef mozilla__ipdltest_TestRaceDeferral_h

mercurial