95 lines
3.0 KiB
C++
95 lines
3.0 KiB
C++
|
#include <cxxtest/TestSuite.h>
|
||
|
|
||
|
#include "calibrationrequest.hh"
|
||
|
|
||
|
class CalibrationRequest_test: public CxxTest::TestSuite
|
||
|
{
|
||
|
public:
|
||
|
|
||
|
void test_constructors(void)
|
||
|
{
|
||
|
// Default constructor
|
||
|
CalibrationRequest calibrationrequest00 ;
|
||
|
std::vector<int> vi1 ;
|
||
|
CalibrationRequest calibrationrequest01(Request(), NULL) ;
|
||
|
TS_ASSERT_EQUALS(calibrationrequest00, calibrationrequest01) ;
|
||
|
|
||
|
// Copy constructor
|
||
|
Mobile mobile1 ;
|
||
|
Timestamp timestamp1 ;
|
||
|
timestamp1.now() ;
|
||
|
Request request1(&mobile1, timestamp1) ;
|
||
|
ReferencePoint referencepoint1 ;
|
||
|
CalibrationRequest calibrationrequest1(request1, &referencepoint1) ;
|
||
|
CalibrationRequest calibrationrequest2(calibrationrequest1) ;
|
||
|
TS_ASSERT_EQUALS(calibrationrequest1, calibrationrequest2) ;
|
||
|
|
||
|
// Request copy constructor
|
||
|
CalibrationRequest calibrationrequest3(request1) ;
|
||
|
TS_ASSERT_EQUALS(request1, calibrationrequest3) ;
|
||
|
}
|
||
|
|
||
|
|
||
|
void test_accessors(void)
|
||
|
{
|
||
|
// Note: for the moment, I leave the test of get_measurements() and
|
||
|
// set_measurements() to Request_test.
|
||
|
|
||
|
// Simple read accessors
|
||
|
Mobile mobile1 ;
|
||
|
Timestamp timestamp1 ;
|
||
|
timestamp1.now() ;
|
||
|
Request request1(&mobile1, timestamp1) ;
|
||
|
ReferencePoint referencepoint1(1,2,3) ;
|
||
|
CalibrationRequest calibrationrequest1(request1, &referencepoint1) ;
|
||
|
TS_ASSERT_EQUALS(calibrationrequest1.get_mobile(), &mobile1) ;
|
||
|
TS_ASSERT_EQUALS(calibrationrequest1.get_timestamp(), timestamp1) ;
|
||
|
TS_ASSERT_EQUALS(calibrationrequest1.get_reference_point(),
|
||
|
&referencepoint1) ;
|
||
|
|
||
|
// Write & read accessors
|
||
|
Mobile mobile2 ;
|
||
|
calibrationrequest1.set_mobile(&mobile2) ;
|
||
|
TS_ASSERT_EQUALS(calibrationrequest1.get_mobile(), &mobile2) ;
|
||
|
|
||
|
timestamp1.set_timestamp_ms(42) ;
|
||
|
calibrationrequest1.set_timestamp(timestamp1) ;
|
||
|
TS_ASSERT_EQUALS(calibrationrequest1.get_timestamp(), timestamp1) ;
|
||
|
|
||
|
ReferencePoint referencepoint2(4,3,2) ;
|
||
|
calibrationrequest1.set_reference_point(&referencepoint2) ;
|
||
|
TS_ASSERT_EQUALS(calibrationrequest1.get_reference_point(),
|
||
|
&referencepoint2) ;
|
||
|
|
||
|
calibrationrequest1.clear() ;
|
||
|
CalibrationRequest calibrationrequest2 ;
|
||
|
TS_ASSERT_EQUALS(calibrationrequest1, calibrationrequest2) ;
|
||
|
}
|
||
|
|
||
|
|
||
|
void test_operators(void)
|
||
|
{
|
||
|
// ==
|
||
|
Mobile mobile1 ;
|
||
|
Timestamp timestamp1 ;
|
||
|
timestamp1.now() ;
|
||
|
Request request1(&mobile1, timestamp1) ;
|
||
|
ReferencePoint referencepoint1 ;
|
||
|
CalibrationRequest calibrationrequest1(request1, &referencepoint1) ;
|
||
|
CalibrationRequest calibrationrequest2(request1, &referencepoint1) ;
|
||
|
TS_ASSERT_EQUALS(calibrationrequest1, calibrationrequest2) ;
|
||
|
|
||
|
// !=
|
||
|
timestamp1.now() ;
|
||
|
Request request2(&mobile1, timestamp1) ;
|
||
|
ReferencePoint referencepoint2 ;
|
||
|
CalibrationRequest calibrationrequest3(request2, &referencepoint2) ;
|
||
|
TS_ASSERT_DIFFERS(calibrationrequest1, calibrationrequest3) ;
|
||
|
|
||
|
// =
|
||
|
calibrationrequest2 = calibrationrequest3 ;
|
||
|
TS_ASSERT_EQUALS(calibrationrequest2, calibrationrequest3) ;
|
||
|
}
|
||
|
|
||
|
} ;
|