[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[certi-cvs] certi/libHLA TestHLAtypes.cc
From: |
certi-cvs |
Subject: |
[certi-cvs] certi/libHLA TestHLAtypes.cc |
Date: |
Thu, 15 Oct 2009 15:33:52 +0000 |
CVSROOT: /sources/certi
Module name: certi
Changes by: Eric NOULARD <erk> 09/10/15 15:33:52
Modified files:
libHLA : TestHLAtypes.cc
Log message:
Add test for HLAbasicType
Missing OPLE, OPBE.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/certi/libHLA/TestHLAtypes.cc?cvsroot=certi&r1=1.4&r2=1.5
Patches:
Index: TestHLAtypes.cc
===================================================================
RCS file: /sources/certi/certi/libHLA/TestHLAtypes.cc,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- TestHLAtypes.cc 12 Jun 2009 08:29:15 -0000 1.4
+++ TestHLAtypes.cc 15 Oct 2009 15:33:51 -0000 1.5
@@ -11,7 +11,7 @@
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Lesser General Public License for more details.
//
-// $Id: TestHLAtypes.cc,v 1.4 2009/06/12 08:29:15 gotthardp Exp $
+// $Id: TestHLAtypes.cc,v 1.5 2009/10/15 15:33:51 erk Exp $
// ----------------------------------------------------------------------------
#include <memory>
@@ -21,6 +21,140 @@
using namespace libhla;
+int test0() {
+ int retval=0;
+ std::stringstream result2b;
+ std::stringstream result4b;
+ std::stringstream result8b;
+ std::string expected;
+
+ HLAdata<HLAinteger16LE> I16LE;
+ HLAdata<HLAinteger32LE> I32LE;
+ HLAdata<HLAinteger64LE> I64LE;
+ HLAdata<HLAfloat32LE> F32LE;
+ HLAdata<HLAfloat64LE> F64LE;
+ HLAdata<HLAoctetPairLE> OPLE;
+
+ HLAdata<HLAinteger16BE> I16BE;
+ HLAdata<HLAinteger32BE> I32BE;
+ HLAdata<HLAinteger64BE> I64BE;
+ HLAdata<HLAfloat32BE> F32BE;
+ HLAdata<HLAfloat64BE> F64BE;
+ HLAdata<HLAoctetPairBE> OPBE;
+
+ (*I16LE) = 1;
+ expected = "0000: 01 00\n";
+ I16LE.print(result2b);
+ if(result2b.str()!=expected) {
+ std::cerr << "test0: <output> does not match expected result"
<< std::endl
+ << "result=" << result2b.str() << std::endl
+ << "expected=" << expected << std::endl;
+ retval+= 1;
+ }
+
+ (*I16BE) = 1;
+ expected = "0000: 00 01\n";
+ result2b.seekp(0);
+ I16BE.print(result2b);
+ if(result2b.str()!=expected) {
+ std::cerr << "test0: <output> does not match expected result"
<< std::endl
+ << "result=" << result2b.str() << std::endl
+ << "expected=" << expected << std::endl;
+ retval+= 1;
+ }
+
+ (*I32LE) = -255;
+ expected = "0000: 01 ff ff ff\n";
+ result4b.seekp(0);
+ I32LE.print(result4b);
+ if(result4b.str()!=expected) {
+ std::cerr << "test0: <output> does not match expected result"
<< std::endl
+ << "result=" << result4b.str() << std::endl
+ << "expected=" << expected << std::endl;
+ retval+= 1;
+ }
+
+ (*I32BE) = -255;
+ expected = "0000: ff ff ff 01\n";
+ result4b.seekp(0);
+ I32BE.print(result4b);
+ if(result4b.str()!=expected) {
+ std::cerr << "test0: <output> does not match expected result"
<< std::endl
+ << "result=" << result4b.str() << std::endl
+ << "expected=" << expected << std::endl;
+ retval+= 1;
+ }
+
+ (*I64LE) = 256;
+ expected = "0000: 00 01 00 00 00 00 00 00\n";
+ result8b.seekp(0);
+ I64LE.print(result8b);
+ if(result8b.str()!=expected) {
+ std::cerr << "test0: <output> does not match expected result"
<< std::endl
+ << "result=" << result8b.str() << std::endl
+ << "expected=" << expected << std::endl;
+ retval+= 1;
+ }
+
+ (*I64BE) = 256;
+ expected = "0000: 00 00 00 00 00 00 01 00\n";
+ result8b.seekp(0);
+ I64BE.print(result8b);
+ if(result8b.str()!=expected) {
+ std::cerr << "test0: <output> does not match expected result"
<< std::endl
+ << "result=" << result8b.str() << std::endl
+ << "expected=" << expected << std::endl;
+ retval+= 1;
+ }
+
+ (*F32LE) = 10.0;
+ expected = "0000: 00 00 20 41\n";
+ result4b.seekp(0);
+ F32LE.print(result4b);
+ if(result4b.str()!=expected) {
+ std::cerr << "test0: <output> does not match expected result"
<< std::endl
+ << "result=" << result4b.str() << std::endl
+ << "expected=" << expected << std::endl;
+ retval+= 1;
+ }
+
+ (*F32BE) = 10.0;
+ expected = "0000: 41 20 00 00\n";
+ result4b.seekp(0);
+ F32BE.print(result4b);
+ if(result4b.str()!=expected) {
+ std::cerr << "test0: <output> does not match expected result"
<< std::endl
+ << "result=" << result4b.str() << std::endl
+ << "expected=" << expected << std::endl;
+ retval+= 1;
+ }
+
+ (*F64LE) = 10.0;
+ expected = "0000: 00 00 00 00 00 00 24 40\n";
+ result8b.seekp(0);
+ F64LE.print(result8b);
+ if(result8b.str()!=expected) {
+ std::cerr << "test0: <output> does not match expected result"
<< std::endl
+ << "result=" << result8b.str() << std::endl
+ << "expected=" << expected << std::endl;
+ retval+= 1;
+ }
+
+ (*F64BE) = 10.0;
+ expected = "0000: 40 24 00 00 00 00 00 00\n";
+ result8b.seekp(0);
+ F64BE.print(result8b);
+ if(result8b.str()!=expected) {
+ std::cerr << "test0: <output> does not match expected result"
<< std::endl
+ << "result=" << result8b.str() << std::endl
+ << "expected=" << expected << std::endl;
+ retval+= 1;
+ }
+
+ /* FIXME need to add test for OPLE/OPBE */
+ return retval;
+} /* end of test0 */
+
// IEEE 1516.2, Section 4.12.9.1
int test1()
{
@@ -221,7 +355,7 @@
#else
<< "little-endian" << std::endl;
#endif
-
+ result += test0();
result += test1();
result += test3();
result += test4();
@@ -232,4 +366,4 @@
return result;
}
-// $Id: TestHLAtypes.cc,v 1.4 2009/06/12 08:29:15 gotthardp Exp $
+// $Id: TestHLAtypes.cc,v 1.5 2009/10/15 15:33:51 erk Exp $
- [certi-cvs] certi/libHLA TestHLAtypes.cc,
certi-cvs <=