blob: 7f45c4f1a428f89ec029448002d8c84976538d3b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
/**
* @file
*
* @brief Unit test for unbounded sequences of forward declared object
* references.
*
* @author Johnny Willemsen <jwillemsen@remedy.nl>
*/
#include "testing_object_reference_traits.hpp"
#include "testing_allocation_traits.hpp"
#include "testing_range_checking.hpp"
#include "fwd_mock_reference.hpp"
#include "tao/Unbounded_Object_Reference_Sequence_T.h"
#include "test_macros.h"
using namespace TAO_VERSIONED_NAMESPACE_NAME::TAO;
struct Tester
{
typedef unbounded_object_reference_sequence<fwd_mock_reference, fwd_mock_reference_var> tested_sequence;
typedef tested_sequence::value_type value_type;
typedef tested_sequence::const_value_type const_value_type;
typedef tested_sequence::element_traits tested_element_traits;
typedef tested_sequence::allocation_traits tested_allocation_traits;
typedef TAO::details::range_checking<value_type,true> range;
int test_default_constructor()
{
expected_calls a(tested_allocation_traits::allocbuf_calls);
expected_calls f(tested_allocation_traits::freebuf_calls);
expected_calls i(tested_element_traits::default_initializer_calls);
{
tested_sequence x;
CHECK_EQUAL(CORBA::ULong(0), x.maximum());
CHECK_EQUAL(CORBA::ULong(0), x.length());
CHECK_EQUAL(false, x.release());
}
FAIL_RETURN_IF_NOT(a.expect(0), a);
FAIL_RETURN_IF_NOT(f.expect(0), f);
FAIL_RETURN_IF_NOT(i.expect(0), i);
return 0;
}
};
int ACE_TMAIN(int,ACE_TCHAR*[])
{
int status = 0;
Tester x;
status += x.test_default_constructor ();
return status;
}
|