1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/ipc/ipdl/test/cxx/TestDesc.cpp Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,105 @@ 1.4 +#include "TestDesc.h" 1.5 + 1.6 +#include "IPDLUnitTests.h" // fail etc. 1.7 + 1.8 +namespace mozilla { 1.9 +namespace _ipdltest { 1.10 + 1.11 +//----------------------------------------------------------------------------- 1.12 +// parent 1.13 +void 1.14 +TestDescParent::Main() 1.15 +{ 1.16 + PTestDescSubParent* p = CallPTestDescSubConstructor(0); 1.17 + if (!p) 1.18 + fail("can't allocate Sub"); 1.19 + 1.20 + PTestDescSubsubParent* pp = p->CallPTestDescSubsubConstructor(); 1.21 + if (!pp) 1.22 + fail("can't allocate Subsub"); 1.23 + 1.24 + if (!SendTest(pp)) 1.25 + fail("can't send Subsub"); 1.26 +} 1.27 + 1.28 +bool 1.29 +TestDescParent::RecvOk(PTestDescSubsubParent* a) 1.30 +{ 1.31 + if (!a) 1.32 + fail("didn't receive Subsub"); 1.33 + 1.34 + if (!PTestDescSubsubParent::Call__delete__(a)) 1.35 + fail("deleting Subsub"); 1.36 + 1.37 + Close(); 1.38 + 1.39 + return true; 1.40 +} 1.41 + 1.42 + 1.43 +PTestDescSubParent* 1.44 +TestDescParent::AllocPTestDescSubParent(PTestDescSubsubParent* dummy) { 1.45 + if (dummy) 1.46 + fail("actor supposed to be null"); 1.47 + return new TestDescSubParent(); 1.48 +} 1.49 +bool 1.50 +TestDescParent::DeallocPTestDescSubParent(PTestDescSubParent* actor) 1.51 +{ 1.52 + delete actor; 1.53 + return true; 1.54 +} 1.55 + 1.56 +PTestDescSubsubParent* 1.57 +TestDescSubParent::AllocPTestDescSubsubParent() 1.58 +{ 1.59 + return new TestDescSubsubParent(); 1.60 +} 1.61 +bool 1.62 +TestDescSubParent::DeallocPTestDescSubsubParent(PTestDescSubsubParent* actor) 1.63 +{ 1.64 + delete actor; 1.65 + return true; 1.66 +} 1.67 + 1.68 + 1.69 +//----------------------------------------------------------------------------- 1.70 +// child 1.71 + 1.72 +bool 1.73 +TestDescChild::RecvTest(PTestDescSubsubChild* a) 1.74 +{ 1.75 + if (!a) 1.76 + fail("didn't receive Subsub"); 1.77 + if (!SendOk(a)) 1.78 + fail("couldn't send Ok()"); 1.79 + return true; 1.80 +} 1.81 + 1.82 +PTestDescSubChild* 1.83 +TestDescChild::AllocPTestDescSubChild(PTestDescSubsubChild* dummy) { 1.84 + if (dummy) 1.85 + fail("actor supposed to be null"); 1.86 + return new TestDescSubChild(); 1.87 +} 1.88 +bool 1.89 +TestDescChild::DeallocPTestDescSubChild(PTestDescSubChild* actor) 1.90 +{ 1.91 + delete actor; 1.92 + return true; 1.93 +} 1.94 + 1.95 +PTestDescSubsubChild* 1.96 +TestDescSubChild::AllocPTestDescSubsubChild() 1.97 +{ 1.98 + return new TestDescSubsubChild(); 1.99 +} 1.100 +bool 1.101 +TestDescSubChild::DeallocPTestDescSubsubChild(PTestDescSubsubChild* actor) 1.102 +{ 1.103 + delete actor; 1.104 + return true; 1.105 +} 1.106 + 1.107 +} // namespace _ipdltest 1.108 +} // namespace mozilla