@@ -32,15 +32,10 @@ using namespace utest::v1;
32
32
#define TABLE_SIZE (TAB ) (sizeof (TAB) / sizeof (TAB[0 ]))
33
33
34
34
#define NEGATIVE_INTEGERS -32768 ,-3214 ,-999 ,-100 ,-1 ,0 ,1 ,4231 ,999 ,4123 ,32760 ,99999
35
- #define POSITIVE_INTEGERS 32768 ,3214 ,999 ,100 ,1 ,0 ,1 ,4231 ,999 ,4123 ,32760 ,99999
36
35
#define FLOATS 0.002 ,0.92430 ,15.91320 ,791.77368 ,6208.2 ,25719.4952 ,426815.982588 ,6429271.046 ,42468024.93 ,212006462.910
37
36
#define FLOATS_STR " 0.002" ," 0.92430" ," 15.91320" ," 791.77368" ," 6208.2" ," 25719.4952" ," 426815.982588" ," 6429271.046" ," 42468024.93" ," 212006462.910"
38
37
39
-
40
38
namespace {
41
- int p_integers[] = {POSITIVE_INTEGERS};
42
- int n_integers[] = {NEGATIVE_INTEGERS};
43
- float floats[] = {FLOATS};
44
39
45
40
template <class T , class F >
46
41
void BubbleSort (T& _array, size_t array_size, F functor) {
@@ -59,62 +54,49 @@ void BubbleSort(T& _array, size_t array_size, F functor) {
59
54
}
60
55
}
61
56
62
- struct printInt {
63
- void operator ()(int i) { printf (" %d " , i); }
64
- };
65
-
66
- struct printFloat {
67
- void operator ()(float f) { printf (" %f " , f); }
68
- };
69
-
70
- struct printString {
71
- void operator ()(const char * s) { printf (" %s " , s); }
72
- };
73
-
74
57
struct greaterAbs {
75
58
bool operator ()(int a, int b) { return abs (a) > abs (b); }
76
59
};
77
60
78
61
} // namespace
79
62
80
63
void test_case_stl_equal () {
81
- std::vector<int > v_pints (p_integers, p_integers + TABLE_SIZE (p_integers));
82
- TEST_ASSERT_TRUE (std::equal (v_pints.begin (), v_pints.end (), p_integers));
64
+ const int n_integers[] = {NEGATIVE_INTEGERS};
65
+ std::vector<int > v_pints (n_integers, n_integers + TABLE_SIZE (n_integers));
66
+ TEST_ASSERT_TRUE (std::equal (v_pints.begin (), v_pints.end (), n_integers));
83
67
}
84
68
85
69
void test_case_stl_transform () {
70
+ const float floats[] = {FLOATS};
86
71
const char * floats_str[] = {FLOATS_STR};
87
72
float floats_transform[TABLE_SIZE (floats_str)] = {0.0 };
88
73
std::transform (floats_str, floats_str + TABLE_SIZE (floats_str), floats_transform, atof);
89
- // printf("stl_transform::floats_str: ");
90
- // std::for_each(floats_str, floats_str + TABLE_SIZE(floats_str), printString());
91
- // printf("stl_transform::floats_transform: ");
92
- // std::for_each(floats_transform, floats_transform + TABLE_SIZE(floats_transform), printFloat());
93
- // printf("\n");
94
74
95
75
TEST_ASSERT_TRUE (std::equal (floats_transform, floats_transform + TABLE_SIZE (floats_transform), floats));
96
76
}
97
77
98
78
void test_case_stl_sort_greater () {
99
- std::vector< int > v_nints_1 ( n_integers, n_integers + TABLE_SIZE (n_integers)) ;
100
- std::vector< int > v_nints_2 (n_integers, n_integers + TABLE_SIZE (n_integers)) ;
79
+ int n_integers[] = {NEGATIVE_INTEGERS} ;
80
+ int n_integers2[] = {NEGATIVE_INTEGERS} ;
101
81
102
- BubbleSort (v_nints_1, v_nints_1. size ( ), std::greater<int >());
103
- std::sort (v_nints_2. begin (), v_nints_2. end ( ), std::greater<int >());
82
+ BubbleSort (n_integers, TABLE_SIZE (n_integers ), std::greater<int >());
83
+ std::sort (n_integers2, n_integers2 + TABLE_SIZE (n_integers2 ), std::greater<int >());
104
84
105
- TEST_ASSERT_TRUE (std::equal (v_nints_1. begin (), v_nints_1. end ( ), v_nints_2. begin () ));
85
+ TEST_ASSERT_TRUE (std::equal (n_integers2, n_integers2 + TABLE_SIZE (n_integers2 ), n_integers ));
106
86
}
107
87
88
+
108
89
void test_case_stl_sort_abs () {
109
- std::vector< int > v_nints_1 ( n_integers, n_integers + TABLE_SIZE (n_integers)) ;
110
- std::vector< int > v_nints_2 (n_integers, n_integers + TABLE_SIZE (n_integers)) ;
90
+ int n_integers[] = {NEGATIVE_INTEGERS} ;
91
+ int n_integers2[] = {NEGATIVE_INTEGERS} ;
111
92
112
- BubbleSort (v_nints_1, v_nints_1. size ( ), greaterAbs ());
113
- std::sort (v_nints_2. begin (), v_nints_2. end ( ), greaterAbs ());
93
+ BubbleSort (n_integers, TABLE_SIZE (n_integers ), greaterAbs ());
94
+ std::sort (n_integers2, n_integers2 + TABLE_SIZE (n_integers2 ), greaterAbs ());
114
95
115
- TEST_ASSERT_TRUE (std::equal (v_nints_1. begin (), v_nints_1. end ( ), v_nints_2. begin () ));
96
+ TEST_ASSERT_TRUE (std::equal (n_integers2, n_integers2 + TABLE_SIZE (n_integers2 ), n_integers ));
116
97
}
117
98
99
+
118
100
utest::v1::status_t greentea_failure_handler (const Case *const source, const failure_t reason) {
119
101
greentea_case_failure_abort_handler (source, reason);
120
102
return STATUS_CONTINUE;
0 commit comments