diff options
Diffstat (limited to 'cpp/test/Ice/enums/AllTests.cpp')
-rw-r--r-- | cpp/test/Ice/enums/AllTests.cpp | 180 |
1 files changed, 113 insertions, 67 deletions
diff --git a/cpp/test/Ice/enums/AllTests.cpp b/cpp/test/Ice/enums/AllTests.cpp index dafb05cb46b..bb531fb4019 100644 --- a/cpp/test/Ice/enums/AllTests.cpp +++ b/cpp/test/Ice/enums/AllTests.cpp @@ -15,60 +15,61 @@ using namespace std; using namespace Test; -TestIntfPrx +TestIntfPrxPtr allTests(const Ice::CommunicatorPtr& communicator) { string ref = "test:default -p 12010"; - Ice::ObjectPrx obj = communicator->stringToProxy(ref); + Ice::ObjectPrxPtr obj = communicator->stringToProxy(ref); test(obj); - TestIntfPrx proxy = TestIntfPrx::checkedCast(obj); + TestIntfPrxPtr proxy = ICE_CHECKED_CAST(TestIntfPrx, obj); test(proxy); cout << "testing enum values... " << flush; - test(static_cast<int>(benum1) == 0); - test(static_cast<int>(benum2) == 1); - test(static_cast<int>(benum3) == ByteConst1); - test(static_cast<int>(benum4) == ByteConst1 + 1); - test(static_cast<int>(benum5) == ShortConst1); - test(static_cast<int>(benum6) == ShortConst1 + 1); - test(static_cast<int>(benum7) == IntConst1); - test(static_cast<int>(benum8) == IntConst1 + 1); - test(static_cast<int>(benum9) == LongConst1); - test(static_cast<int>(benum10) == LongConst1 + 1); - test(static_cast<int>(benum11) == ByteConst2); - - test(static_cast<int>(senum1) == 3); - test(static_cast<int>(senum2) == 4); - test(static_cast<int>(senum3) == ByteConst1); - test(static_cast<int>(senum4) == ByteConst1 + 1); - test(static_cast<int>(senum5) == ShortConst1); - test(static_cast<int>(senum6) == ShortConst1 + 1); - test(static_cast<int>(senum7) == IntConst1); - test(static_cast<int>(senum8) == IntConst1 + 1); - test(static_cast<int>(senum9) == LongConst1); - test(static_cast<int>(senum10) == LongConst1 + 1); - test(static_cast<int>(senum11) == ShortConst2); - - test(static_cast<int>(ienum1) == 0); - test(static_cast<int>(ienum2) == 1); - test(static_cast<int>(ienum3) == ByteConst1); - test(static_cast<int>(ienum4) == ByteConst1 + 1); - test(static_cast<int>(ienum5) == ShortConst1); - test(static_cast<int>(ienum6) == ShortConst1 + 1); - test(static_cast<int>(ienum7) == IntConst1); - test(static_cast<int>(ienum8) == IntConst1 + 1); - test(static_cast<int>(ienum9) == LongConst1); - test(static_cast<int>(ienum10) == LongConst1 + 1); - test(static_cast<int>(ienum11) == IntConst2); - test(static_cast<int>(ienum12) == LongConst2); - - test(static_cast<int>(red) == 0); - test(static_cast<int>(green) == 1); - test(static_cast<int>(blue) == 2); + test(static_cast<int>(ICE_ENUM(ByteEnum, benum1)) == 0); + test(static_cast<int>(ICE_ENUM(ByteEnum, benum2)) == 1); + test(static_cast<int>(ICE_ENUM(ByteEnum, benum3)) == ByteConst1); + test(static_cast<int>(ICE_ENUM(ByteEnum, benum4)) == ByteConst1 + 1); + test(static_cast<int>(ICE_ENUM(ByteEnum, benum5)) == ShortConst1); + test(static_cast<int>(ICE_ENUM(ByteEnum, benum6)) == ShortConst1 + 1); + test(static_cast<int>(ICE_ENUM(ByteEnum, benum7)) == IntConst1); + test(static_cast<int>(ICE_ENUM(ByteEnum, benum8)) == IntConst1 + 1); + test(static_cast<int>(ICE_ENUM(ByteEnum, benum9)) == LongConst1); + test(static_cast<int>(ICE_ENUM(ByteEnum, benum10)) == LongConst1 + 1); + test(static_cast<int>(ICE_ENUM(ByteEnum, benum11)) == ByteConst2); + + test(static_cast<int>(ICE_ENUM(ShortEnum, senum1)) == 3); + test(static_cast<int>(ICE_ENUM(ShortEnum, senum2)) == 4); + test(static_cast<int>(ICE_ENUM(ShortEnum, senum3)) == ByteConst1); + test(static_cast<int>(ICE_ENUM(ShortEnum, senum4)) == ByteConst1 + 1); + test(static_cast<int>(ICE_ENUM(ShortEnum, senum5)) == ShortConst1); + test(static_cast<int>(ICE_ENUM(ShortEnum, senum6)) == ShortConst1 + 1); + test(static_cast<int>(ICE_ENUM(ShortEnum, senum7)) == IntConst1); + test(static_cast<int>(ICE_ENUM(ShortEnum, senum8)) == IntConst1 + 1); + test(static_cast<int>(ICE_ENUM(ShortEnum, senum9)) == LongConst1); + test(static_cast<int>(ICE_ENUM(ShortEnum, senum10)) == LongConst1 + 1); + test(static_cast<int>(ICE_ENUM(ShortEnum, senum11)) == ShortConst2); + + test(static_cast<int>(ICE_ENUM(IntEnum, ienum1)) == 0); + test(static_cast<int>(ICE_ENUM(IntEnum, ienum2)) == 1); + test(static_cast<int>(ICE_ENUM(IntEnum, ienum3)) == ByteConst1); + test(static_cast<int>(ICE_ENUM(IntEnum, ienum4)) == ByteConst1 + 1); + test(static_cast<int>(ICE_ENUM(IntEnum, ienum5)) == ShortConst1); + test(static_cast<int>(ICE_ENUM(IntEnum, ienum6)) == ShortConst1 + 1); + test(static_cast<int>(ICE_ENUM(IntEnum, ienum7)) == IntConst1); + test(static_cast<int>(ICE_ENUM(IntEnum, ienum8)) == IntConst1 + 1); + test(static_cast<int>(ICE_ENUM(IntEnum, ienum9)) == LongConst1); + test(static_cast<int>(ICE_ENUM(IntEnum, ienum10)) == LongConst1 + 1); + test(static_cast<int>(ICE_ENUM(IntEnum, ienum11)) == IntConst2); + test(static_cast<int>(ICE_ENUM(IntEnum, ienum12)) == LongConst2); + + test(static_cast<int>(ICE_ENUM(SimpleEnum, red)) == 0); + test(static_cast<int>(ICE_ENUM(SimpleEnum, green)) == 1); + test(static_cast<int>(ICE_ENUM(SimpleEnum, blue)) == 2); cout << "ok" << endl; +#ifndef ICE_CPP11_MAPPING cout << "testing enum streaming... " << flush; Ice::OutputStreamPtr out; @@ -77,59 +78,73 @@ allTests(const Ice::CommunicatorPtr& communicator) const bool encoding_1_0 = communicator->getProperties()->getProperty("Ice.Default.EncodingVersion") == "1.0"; out = Ice::createOutputStream(communicator); - out->write(benum11); + out->write(ICE_ENUM(ByteEnum, benum11)); out->finished(bytes); test(bytes.size() == 1); // ByteEnum should require one byte out = Ice::createOutputStream(communicator); - out->write(senum11); + out->write(ICE_ENUM(ShortEnum, senum11)); out->finished(bytes); test(bytes.size() == (encoding_1_0 ? 2 : 5)); out = Ice::createOutputStream(communicator); - out->write(ienum11); + out->write(ICE_ENUM(IntEnum, ienum11)); out->finished(bytes); test(bytes.size() == (encoding_1_0 ? 4 : 5)); out = Ice::createOutputStream(communicator); - out->write(blue); + out->write(ICE_ENUM(SimpleEnum, blue)); out->finished(bytes); test(bytes.size() == 1); // SimpleEnum should require one byte cout << "ok" << endl; +#endif cout << "testing enum operations... " << flush; ByteEnum byteEnum; - test(proxy->opByte(benum1, byteEnum) == benum1); - test(byteEnum == benum1); - test(proxy->opByte(benum11, byteEnum) == benum11); - test(byteEnum == benum11); + test(proxy->opByte(ICE_ENUM(ByteEnum, benum1), byteEnum) == ICE_ENUM(ByteEnum, benum1)); + test(byteEnum == ICE_ENUM(ByteEnum, benum1)); + test(proxy->opByte(ICE_ENUM(ByteEnum, benum11), byteEnum) == ICE_ENUM(ByteEnum, benum11)); + test(byteEnum == ICE_ENUM(ByteEnum, benum11)); ShortEnum shortEnum; - test(proxy->opShort(senum1, shortEnum) == senum1); - test(shortEnum == senum1); - test(proxy->opShort(senum11, shortEnum) == senum11); - test(shortEnum == senum11); + test(proxy->opShort(ICE_ENUM(ShortEnum, senum1), shortEnum) == ICE_ENUM(ShortEnum, senum1)); + test(shortEnum == ICE_ENUM(ShortEnum, senum1)); + test(proxy->opShort(ICE_ENUM(ShortEnum, senum11), shortEnum) == ICE_ENUM(ShortEnum, senum11)); + test(shortEnum == ICE_ENUM(ShortEnum, senum11)); IntEnum intEnum; - test(proxy->opInt(ienum1, intEnum) == ienum1); - test(intEnum == ienum1); - test(proxy->opInt(ienum11, intEnum) == ienum11); - test(intEnum == ienum11); - test(proxy->opInt(ienum12, intEnum) == ienum12); - test(intEnum == ienum12); + test(proxy->opInt(ICE_ENUM(IntEnum, ienum1), intEnum) == ICE_ENUM(IntEnum, ienum1)); + test(intEnum == ICE_ENUM(IntEnum, ienum1)); + test(proxy->opInt(ICE_ENUM(IntEnum, ienum11), intEnum) == ICE_ENUM(IntEnum, ienum11)); + test(intEnum == ICE_ENUM(IntEnum, ienum11)); + test(proxy->opInt(ICE_ENUM(IntEnum, ienum12), intEnum) == ICE_ENUM(IntEnum, ienum12)); + test(intEnum == ICE_ENUM(IntEnum, ienum12)); SimpleEnum s; - test(proxy->opSimple(green, s) == green); - test(s == green); + test(proxy->opSimple(ICE_ENUM(SimpleEnum, green), s) == ICE_ENUM(SimpleEnum, green)); + test(s == ICE_ENUM(SimpleEnum, green)); cout << "ok" << endl; cout << "testing enum sequences operations... " << flush; { - ByteEnum values[] = { benum1, benum2, benum3, benum4, benum5, benum6, benum7, benum8, benum9, benum10, benum11}; + ByteEnum values[] = + { + ICE_ENUM(ByteEnum, benum1), + ICE_ENUM(ByteEnum, benum2), + ICE_ENUM(ByteEnum, benum3), + ICE_ENUM(ByteEnum, benum4), + ICE_ENUM(ByteEnum, benum5), + ICE_ENUM(ByteEnum, benum6), + ICE_ENUM(ByteEnum, benum7), + ICE_ENUM(ByteEnum, benum8), + ICE_ENUM(ByteEnum, benum9), + ICE_ENUM(ByteEnum, benum10), + ICE_ENUM(ByteEnum, benum11) + }; ByteEnumSeq b1(&values[0], &values[0] + sizeof(values) / sizeof(ByteEnum)); ByteEnumSeq b2; @@ -143,7 +158,20 @@ allTests(const Ice::CommunicatorPtr& communicator) } { - ShortEnum values[] = { senum1, senum2, senum3, senum4, senum5, senum6, senum7, senum8, senum9, senum10, senum11}; + ShortEnum values[] = + { + ICE_ENUM(ShortEnum, senum1), + ICE_ENUM(ShortEnum, senum2), + ICE_ENUM(ShortEnum, senum3), + ICE_ENUM(ShortEnum, senum4), + ICE_ENUM(ShortEnum, senum5), + ICE_ENUM(ShortEnum, senum6), + ICE_ENUM(ShortEnum, senum7), + ICE_ENUM(ShortEnum, senum8), + ICE_ENUM(ShortEnum, senum9), + ICE_ENUM(ShortEnum, senum10), + ICE_ENUM(ShortEnum, senum11) + }; ShortEnumSeq s1(&values[0], &values[0] + sizeof(values) / sizeof(ShortEnum)); ShortEnumSeq s2; @@ -157,7 +185,20 @@ allTests(const Ice::CommunicatorPtr& communicator) } { - IntEnum values[] = { ienum1, ienum2, ienum3, ienum4, ienum5, ienum6, ienum7, ienum8, ienum9, ienum10, ienum11}; + IntEnum values[] = + { + ICE_ENUM(IntEnum, ienum1), + ICE_ENUM(IntEnum, ienum2), + ICE_ENUM(IntEnum, ienum3), + ICE_ENUM(IntEnum, ienum4), + ICE_ENUM(IntEnum, ienum5), + ICE_ENUM(IntEnum, ienum6), + ICE_ENUM(IntEnum, ienum7), + ICE_ENUM(IntEnum, ienum8), + ICE_ENUM(IntEnum, ienum9), + ICE_ENUM(IntEnum, ienum10), + ICE_ENUM(IntEnum, ienum11) + }; IntEnumSeq i1(&values[0], &values[0] + sizeof(values) / sizeof(IntEnum)); IntEnumSeq i2; @@ -171,7 +212,12 @@ allTests(const Ice::CommunicatorPtr& communicator) } { - SimpleEnum values[] = { red, green, blue }; + SimpleEnum values[] = + { + ICE_ENUM(SimpleEnum, red), + ICE_ENUM(SimpleEnum, green), + ICE_ENUM(SimpleEnum, blue) + }; SimpleEnumSeq s1(&values[0], &values[0] + sizeof(values) / sizeof(SimpleEnum)); SimpleEnumSeq s2; |