Version FC

Dependencies:   DmTftLibrary eeprom SX1280Lib filesystem mbed

Fork of MSNV2-Terminal_V1-5 by Francis CHATAIN

Committer:
patrick_duc
Date:
Wed Sep 05 21:58:07 2018 +0000
Revision:
22:a5929d3668b6
Child:
24:92c30dabfda4
Correction d'une erreur dans Value.hpp et renommage d'une m?thode.; Ajout d'un driver de tests unitaires sur la classe Value.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
patrick_duc 22:a5929d3668b6 1 #include <iostream>
patrick_duc 22:a5929d3668b6 2 #include <cstdlib>
patrick_duc 22:a5929d3668b6 3 #include <string>
patrick_duc 22:a5929d3668b6 4 #include <string.h>
patrick_duc 22:a5929d3668b6 5
patrick_duc 22:a5929d3668b6 6 #include "Context.h"
patrick_duc 22:a5929d3668b6 7
patrick_duc 22:a5929d3668b6 8 #include "Value.hpp"
patrick_duc 22:a5929d3668b6 9
patrick_duc 22:a5929d3668b6 10
patrick_duc 22:a5929d3668b6 11 using namespace misnet;
patrick_duc 22:a5929d3668b6 12
patrick_duc 22:a5929d3668b6 13
patrick_duc 22:a5929d3668b6 14 typedef struct {
patrick_duc 22:a5929d3668b6 15 Value * value;
patrick_duc 22:a5929d3668b6 16 Value * value_to_substract;
patrick_duc 22:a5929d3668b6 17 Value * delta;
patrick_duc 22:a5929d3668b6 18 bool expected_result;
patrick_duc 22:a5929d3668b6 19 bool * flag_erreur;
patrick_duc 22:a5929d3668b6 20 } IDGTD_struct;
patrick_duc 22:a5929d3668b6 21
patrick_duc 22:a5929d3668b6 22
patrick_duc 22:a5929d3668b6 23 typedef struct {
patrick_duc 22:a5929d3668b6 24 Value * value;
patrick_duc 22:a5929d3668b6 25 const char * chaine;
patrick_duc 22:a5929d3668b6 26 bool * flag_erreur;
patrick_duc 22:a5929d3668b6 27 } GVAS_struct;
patrick_duc 22:a5929d3668b6 28
patrick_duc 22:a5929d3668b6 29
patrick_duc 22:a5929d3668b6 30 static void testDifferencesWithDelta() {
patrick_duc 22:a5929d3668b6 31 Value value_1, value_to_substract, delta;
patrick_duc 22:a5929d3668b6 32
patrick_duc 22:a5929d3668b6 33 value_1.setUint8Value(220);
patrick_duc 22:a5929d3668b6 34 value_to_substract.setUint8Value(218);
patrick_duc 22:a5929d3668b6 35 delta.setUint8Value(1);
patrick_duc 22:a5929d3668b6 36
patrick_duc 22:a5929d3668b6 37 if (value_1.isAbsoluteDifferenceValueGreaterThanDelta(value_to_substract, delta) == false) {
patrick_duc 22:a5929d3668b6 38 DEBUG("ERREUR sur isAbsoluteDifferenceValueGreaterThanDelta de valeurs uint8 !\n");
patrick_duc 22:a5929d3668b6 39 }
patrick_duc 22:a5929d3668b6 40 else {
patrick_duc 22:a5929d3668b6 41 DEBUG("isAbsoluteDifferenceValueGreaterThanDelta de valeurs uint8 OK\n");
patrick_duc 22:a5929d3668b6 42 }
patrick_duc 22:a5929d3668b6 43
patrick_duc 22:a5929d3668b6 44 delta.setUint8Value(3);
patrick_duc 22:a5929d3668b6 45
patrick_duc 22:a5929d3668b6 46 if (value_1.isAbsoluteDifferenceValueGreaterThanDelta(value_to_substract, delta) == true) {
patrick_duc 22:a5929d3668b6 47 DEBUG("ERREUR sur isAbsoluteDifferenceValueGreaterThanDelta de valeurs uint8 !\n");
patrick_duc 22:a5929d3668b6 48 }
patrick_duc 22:a5929d3668b6 49 else {
patrick_duc 22:a5929d3668b6 50 DEBUG("isAbsoluteDifferenceValueGreaterThanDelta de valeurs uint8 OK\n");
patrick_duc 22:a5929d3668b6 51 }
patrick_duc 22:a5929d3668b6 52
patrick_duc 22:a5929d3668b6 53 bool erreur_bool = false;
patrick_duc 22:a5929d3668b6 54 bool erreur_char = false;
patrick_duc 22:a5929d3668b6 55 bool erreur_uint8 = false;
patrick_duc 22:a5929d3668b6 56 bool erreur_int8 = false;
patrick_duc 22:a5929d3668b6 57 bool erreur_uint16 = false;
patrick_duc 22:a5929d3668b6 58 bool erreur_int16 = false;
patrick_duc 22:a5929d3668b6 59 bool erreur_uint32 = false;
patrick_duc 22:a5929d3668b6 60 bool erreur_int32 = false;
patrick_duc 22:a5929d3668b6 61 bool erreur_float = false;
patrick_duc 22:a5929d3668b6 62 bool erreur_double = false;
patrick_duc 22:a5929d3668b6 63 bool erreur_time = false;
patrick_duc 22:a5929d3668b6 64
patrick_duc 22:a5929d3668b6 65 Value bool_value, bool_value_to_substract, bool_delta;
patrick_duc 22:a5929d3668b6 66 bool_value.setBoolValue(false);
patrick_duc 22:a5929d3668b6 67 bool_value_to_substract.setBoolValue(false);
patrick_duc 22:a5929d3668b6 68 bool_delta.setBoolValue(true);
patrick_duc 22:a5929d3668b6 69
patrick_duc 22:a5929d3668b6 70 Value char_value, char_value_to_substract, char_delta;
patrick_duc 22:a5929d3668b6 71 char_value.setCharValue('r');
patrick_duc 22:a5929d3668b6 72 char_value_to_substract.setCharValue('0');
patrick_duc 22:a5929d3668b6 73 char_delta.setCharValue('0');
patrick_duc 22:a5929d3668b6 74
patrick_duc 22:a5929d3668b6 75 Value uint8_value, uint8_value_to_substract, uint8_delta;
patrick_duc 22:a5929d3668b6 76 uint8_value.setUint8Value(219);
patrick_duc 22:a5929d3668b6 77 uint8_value_to_substract.setUint8Value(212);
patrick_duc 22:a5929d3668b6 78 uint8_delta.setUint8Value(5);
patrick_duc 22:a5929d3668b6 79
patrick_duc 22:a5929d3668b6 80 Value int8_value, int8_value_to_substract, int8_delta;
patrick_duc 22:a5929d3668b6 81 int8_value.setInt8Value(-110);
patrick_duc 22:a5929d3668b6 82 int8_value_to_substract.setInt8Value(-112);
patrick_duc 22:a5929d3668b6 83 int8_delta.setInt8Value(3);
patrick_duc 22:a5929d3668b6 84
patrick_duc 22:a5929d3668b6 85 Value uint16_value, uint16_value_to_substract, uint16_delta;
patrick_duc 22:a5929d3668b6 86 uint16_value.setUint16Value(1016);
patrick_duc 22:a5929d3668b6 87 uint16_value_to_substract.setUint16Value(12);
patrick_duc 22:a5929d3668b6 88 uint16_delta.setUint16Value(15);
patrick_duc 22:a5929d3668b6 89
patrick_duc 22:a5929d3668b6 90 Value int16_value, int16_value_to_substract, int16_delta;
patrick_duc 22:a5929d3668b6 91 int16_value.setInt16Value(1016);
patrick_duc 22:a5929d3668b6 92 int16_value_to_substract.setInt16Value(1015);
patrick_duc 22:a5929d3668b6 93 int16_delta.setInt16Value(2);
patrick_duc 22:a5929d3668b6 94
patrick_duc 22:a5929d3668b6 95 Value uint32_value, uint32_value_to_substract, uint32_delta;
patrick_duc 22:a5929d3668b6 96 uint32_value.setUint32Value(10161016);
patrick_duc 22:a5929d3668b6 97 uint32_value_to_substract.setUint32Value(10161116);
patrick_duc 22:a5929d3668b6 98 uint32_delta.setUint32Value(100);
patrick_duc 22:a5929d3668b6 99
patrick_duc 22:a5929d3668b6 100 Value int32_value, int32_value_to_substract, int32_delta;
patrick_duc 22:a5929d3668b6 101 int32_value.setInt32Value(-10160000);
patrick_duc 22:a5929d3668b6 102 int32_value_to_substract.setInt32Value(-10160001);
patrick_duc 22:a5929d3668b6 103 int32_delta.setInt32Value(15);
patrick_duc 22:a5929d3668b6 104
patrick_duc 22:a5929d3668b6 105 Value float_value, float_value_to_substract, float_delta;
patrick_duc 22:a5929d3668b6 106 float_value.setFloatValue(-1010.876);
patrick_duc 22:a5929d3668b6 107 float_value_to_substract.setFloatValue(-1010.77);
patrick_duc 22:a5929d3668b6 108 float_delta.setFloatValue(0.2);
patrick_duc 22:a5929d3668b6 109
patrick_duc 22:a5929d3668b6 110 Value double_value, double_value_to_substract, double_delta;
patrick_duc 22:a5929d3668b6 111 double_value.setDoubleValue(-1010.876543);
patrick_duc 22:a5929d3668b6 112 double_value_to_substract.setDoubleValue(-1010.876);
patrick_duc 22:a5929d3668b6 113 double_delta.setDoubleValue(0.00001);
patrick_duc 22:a5929d3668b6 114
patrick_duc 22:a5929d3668b6 115 Value time_value, time_value_to_substract, time_delta;
patrick_duc 22:a5929d3668b6 116 time_value.setTimeValue(1010101010);
patrick_duc 22:a5929d3668b6 117 time_value_to_substract.setTimeValue(1010101010);
patrick_duc 22:a5929d3668b6 118 time_delta.setTimeValue(10);
patrick_duc 22:a5929d3668b6 119
patrick_duc 22:a5929d3668b6 120 IDGTD_struct tableau[50] = {
patrick_duc 22:a5929d3668b6 121 { &bool_value, &bool_value_to_substract, &bool_delta, false, &erreur_bool },
patrick_duc 22:a5929d3668b6 122 { &char_value, &char_value_to_substract, &char_delta, true, &erreur_char },
patrick_duc 22:a5929d3668b6 123 { &uint8_value, &uint8_value_to_substract, &uint8_delta, true, &erreur_uint8 },
patrick_duc 22:a5929d3668b6 124 { &int8_value, &int8_value_to_substract, &int8_delta, false, &erreur_int8 },
patrick_duc 22:a5929d3668b6 125 { &uint16_value, &uint16_value_to_substract, &uint16_delta, true, &erreur_uint16 },
patrick_duc 22:a5929d3668b6 126 { &int16_value, &int16_value_to_substract, &int16_delta, false, &erreur_int16 },
patrick_duc 22:a5929d3668b6 127 { &uint32_value, &uint32_value_to_substract, &uint32_delta, false, &erreur_uint32 },
patrick_duc 22:a5929d3668b6 128 { &int32_value, &int32_value_to_substract, &int32_delta, false, &erreur_int32 },
patrick_duc 22:a5929d3668b6 129 { &float_value, &float_value_to_substract, &float_delta, false, &erreur_float },
patrick_duc 22:a5929d3668b6 130 { &double_value, &double_value_to_substract, &double_delta, true, &erreur_double },
patrick_duc 22:a5929d3668b6 131 { &time_value, &time_value_to_substract, &time_delta, false, &erreur_time },
patrick_duc 22:a5929d3668b6 132 };
patrick_duc 22:a5929d3668b6 133
patrick_duc 22:a5929d3668b6 134 for (int i = 0; i < 11; i++) {
patrick_duc 22:a5929d3668b6 135 //DEBUG("Value[%d]= %s\n", i, tableau[i].value->getValueAsString().c_str());
patrick_duc 22:a5929d3668b6 136 if (tableau[i].value->isAbsoluteDifferenceValueGreaterThanDelta(*(tableau[i].value_to_substract),
patrick_duc 22:a5929d3668b6 137 *(tableau[i].delta)) != tableau[i].expected_result) {
patrick_duc 22:a5929d3668b6 138 DEBUG("Expected : %s, obtained : %s\n", tableau[i].expected_result ? "true" : "false",
patrick_duc 22:a5929d3668b6 139 tableau[i].value->isAbsoluteDifferenceValueGreaterThanDelta(*(tableau[i].value_to_substract), *(tableau[i].delta)) ? "true" : "false");
patrick_duc 22:a5929d3668b6 140 *(tableau[i].flag_erreur) = true;
patrick_duc 22:a5929d3668b6 141 }
patrick_duc 22:a5929d3668b6 142 }
patrick_duc 22:a5929d3668b6 143
patrick_duc 22:a5929d3668b6 144
patrick_duc 22:a5929d3668b6 145 if (erreur_bool) {
patrick_duc 22:a5929d3668b6 146 DEBUG("ERREUR sur isAbsoluteDifferenceValueGreaterThanDelta de valeurs bool !\n");
patrick_duc 22:a5929d3668b6 147 }
patrick_duc 22:a5929d3668b6 148 else {
patrick_duc 22:a5929d3668b6 149 DEBUG("isAbsoluteDifferenceValueGreaterThanDelta de valeurs bool OK\n");
patrick_duc 22:a5929d3668b6 150 }
patrick_duc 22:a5929d3668b6 151
patrick_duc 22:a5929d3668b6 152 if (erreur_char) {
patrick_duc 22:a5929d3668b6 153 DEBUG("ERREUR sur isAbsoluteDifferenceValueGreaterThanDelta de valeurs char !\n");
patrick_duc 22:a5929d3668b6 154 }
patrick_duc 22:a5929d3668b6 155 else {
patrick_duc 22:a5929d3668b6 156 DEBUG("isAbsoluteDifferenceValueGreaterThanDelta de valeurs char OK\n");
patrick_duc 22:a5929d3668b6 157 }
patrick_duc 22:a5929d3668b6 158
patrick_duc 22:a5929d3668b6 159 if (erreur_uint8) {
patrick_duc 22:a5929d3668b6 160 DEBUG("ERREUR sur isAbsoluteDifferenceValueGreaterThanDelta de valeurs uint8 !\n");
patrick_duc 22:a5929d3668b6 161 }
patrick_duc 22:a5929d3668b6 162 else {
patrick_duc 22:a5929d3668b6 163 DEBUG("isAbsoluteDifferenceValueGreaterThanDelta de valeurs uint8 OK\n");
patrick_duc 22:a5929d3668b6 164 }
patrick_duc 22:a5929d3668b6 165
patrick_duc 22:a5929d3668b6 166 if (erreur_int8) {
patrick_duc 22:a5929d3668b6 167 DEBUG("ERREUR sur isAbsoluteDifferenceValueGreaterThanDelta de valeurs int8 !\n");
patrick_duc 22:a5929d3668b6 168 }
patrick_duc 22:a5929d3668b6 169 else {
patrick_duc 22:a5929d3668b6 170 DEBUG("isAbsoluteDifferenceValueGreaterThanDelta de valeurs int8 OK\n");
patrick_duc 22:a5929d3668b6 171 }
patrick_duc 22:a5929d3668b6 172
patrick_duc 22:a5929d3668b6 173 if (erreur_uint16) {
patrick_duc 22:a5929d3668b6 174 DEBUG("ERREUR sur isAbsoluteDifferenceValueGreaterThanDelta de valeurs uint16 !\n");
patrick_duc 22:a5929d3668b6 175 }
patrick_duc 22:a5929d3668b6 176 else {
patrick_duc 22:a5929d3668b6 177 DEBUG("isAbsoluteDifferenceValueGreaterThanDelta de valeurs uint16 OK\n");
patrick_duc 22:a5929d3668b6 178 }
patrick_duc 22:a5929d3668b6 179
patrick_duc 22:a5929d3668b6 180 if (erreur_int16) {
patrick_duc 22:a5929d3668b6 181 DEBUG("ERREUR sur isAbsoluteDifferenceValueGreaterThanDelta de valeurs int16 !\n");
patrick_duc 22:a5929d3668b6 182 }
patrick_duc 22:a5929d3668b6 183 else {
patrick_duc 22:a5929d3668b6 184 DEBUG("isAbsoluteDifferenceValueGreaterThanDelta de valeurs int16 OK\n");
patrick_duc 22:a5929d3668b6 185 }
patrick_duc 22:a5929d3668b6 186
patrick_duc 22:a5929d3668b6 187 if (erreur_uint32) {
patrick_duc 22:a5929d3668b6 188 DEBUG("ERREUR sur isAbsoluteDifferenceValueGreaterThanDelta de valeurs uint32 !\n");
patrick_duc 22:a5929d3668b6 189 }
patrick_duc 22:a5929d3668b6 190 else {
patrick_duc 22:a5929d3668b6 191 DEBUG("isAbsoluteDifferenceValueGreaterThanDelta de valeurs uint32 OK\n");
patrick_duc 22:a5929d3668b6 192 }
patrick_duc 22:a5929d3668b6 193
patrick_duc 22:a5929d3668b6 194 if (erreur_int32) {
patrick_duc 22:a5929d3668b6 195 DEBUG("ERREUR sur isAbsoluteDifferenceValueGreaterThanDelta de valeurs int32 !\n");
patrick_duc 22:a5929d3668b6 196 }
patrick_duc 22:a5929d3668b6 197 else {
patrick_duc 22:a5929d3668b6 198 DEBUG("isAbsoluteDifferenceValueGreaterThanDelta de valeurs int32 OK\n");
patrick_duc 22:a5929d3668b6 199 }
patrick_duc 22:a5929d3668b6 200
patrick_duc 22:a5929d3668b6 201 if (erreur_float) {
patrick_duc 22:a5929d3668b6 202 DEBUG("ERREUR sur isAbsoluteDifferenceValueGreaterThanDelta de valeurs float !\n");
patrick_duc 22:a5929d3668b6 203 }
patrick_duc 22:a5929d3668b6 204 else {
patrick_duc 22:a5929d3668b6 205 DEBUG("isAbsoluteDifferenceValueGreaterThanDelta de valeurs float OK\n");
patrick_duc 22:a5929d3668b6 206 }
patrick_duc 22:a5929d3668b6 207
patrick_duc 22:a5929d3668b6 208 if (erreur_double) {
patrick_duc 22:a5929d3668b6 209 DEBUG("ERREUR sur isAbsoluteDifferenceValueGreaterThanDelta de valeurs double !\n");
patrick_duc 22:a5929d3668b6 210 }
patrick_duc 22:a5929d3668b6 211 else {
patrick_duc 22:a5929d3668b6 212 DEBUG("isAbsoluteDifferenceValueGreaterThanDelta de valeurs double OK\n");
patrick_duc 22:a5929d3668b6 213 }
patrick_duc 22:a5929d3668b6 214
patrick_duc 22:a5929d3668b6 215 if (erreur_time) {
patrick_duc 22:a5929d3668b6 216 DEBUG("ERREUR sur isAbsoluteDifferenceValueGreaterThanDelta de valeurs time !\n");
patrick_duc 22:a5929d3668b6 217 }
patrick_duc 22:a5929d3668b6 218 else {
patrick_duc 22:a5929d3668b6 219 DEBUG("isAbsoluteDifferenceValueGreaterThanDelta de valeurs time OK\n");
patrick_duc 22:a5929d3668b6 220 }
patrick_duc 22:a5929d3668b6 221 }
patrick_duc 22:a5929d3668b6 222
patrick_duc 22:a5929d3668b6 223
patrick_duc 22:a5929d3668b6 224 static void testGetValueAsString() {
patrick_duc 22:a5929d3668b6 225 bool erreur_bool = false;
patrick_duc 22:a5929d3668b6 226 bool erreur_char = false;
patrick_duc 22:a5929d3668b6 227 bool erreur_uint8 = false;
patrick_duc 22:a5929d3668b6 228 bool erreur_int8 = false;
patrick_duc 22:a5929d3668b6 229 bool erreur_uint16 = false;
patrick_duc 22:a5929d3668b6 230 bool erreur_int16 = false;
patrick_duc 22:a5929d3668b6 231 bool erreur_uint32 = false;
patrick_duc 22:a5929d3668b6 232 bool erreur_int32 = false;
patrick_duc 22:a5929d3668b6 233 bool erreur_float = false;
patrick_duc 22:a5929d3668b6 234 bool erreur_double = false;
patrick_duc 22:a5929d3668b6 235 bool erreur_time = false;
patrick_duc 22:a5929d3668b6 236
patrick_duc 22:a5929d3668b6 237 Value bool_val_1;
patrick_duc 22:a5929d3668b6 238 bool_val_1.setBoolValue(false);
patrick_duc 22:a5929d3668b6 239
patrick_duc 22:a5929d3668b6 240 Value bool_val_2;
patrick_duc 22:a5929d3668b6 241 bool_val_2.setBoolValue(true);
patrick_duc 22:a5929d3668b6 242
patrick_duc 22:a5929d3668b6 243 Value char_val_1;
patrick_duc 22:a5929d3668b6 244 char_val_1.setCharValue('r');
patrick_duc 22:a5929d3668b6 245
patrick_duc 22:a5929d3668b6 246 Value char_val_2;
patrick_duc 22:a5929d3668b6 247 char_val_2.setCharValue('u');
patrick_duc 22:a5929d3668b6 248
patrick_duc 22:a5929d3668b6 249 Value uint8_val_1;
patrick_duc 22:a5929d3668b6 250 uint8_val_1.setUint8Value(219);
patrick_duc 22:a5929d3668b6 251
patrick_duc 22:a5929d3668b6 252 Value uint8_val_2;
patrick_duc 22:a5929d3668b6 253 uint8_val_2.setUint8Value(100);
patrick_duc 22:a5929d3668b6 254
patrick_duc 22:a5929d3668b6 255 Value int8_val_1;
patrick_duc 22:a5929d3668b6 256 int8_val_1.setInt8Value(-110);
patrick_duc 22:a5929d3668b6 257
patrick_duc 22:a5929d3668b6 258 Value int8_val_2;
patrick_duc 22:a5929d3668b6 259 int8_val_2.setInt8Value(-7);
patrick_duc 22:a5929d3668b6 260
patrick_duc 22:a5929d3668b6 261 Value uint16_val_1;
patrick_duc 22:a5929d3668b6 262 uint16_val_1.setUint16Value(21905);
patrick_duc 22:a5929d3668b6 263
patrick_duc 22:a5929d3668b6 264 Value uint16_val_2;
patrick_duc 22:a5929d3668b6 265 uint16_val_2.setUint16Value(10098);
patrick_duc 22:a5929d3668b6 266
patrick_duc 22:a5929d3668b6 267 Value int16_val_1;
patrick_duc 22:a5929d3668b6 268 int16_val_1.setInt16Value(-11000);
patrick_duc 22:a5929d3668b6 269
patrick_duc 22:a5929d3668b6 270 Value int16_val_2;
patrick_duc 22:a5929d3668b6 271 int16_val_2.setInt16Value(-7654);
patrick_duc 22:a5929d3668b6 272
patrick_duc 22:a5929d3668b6 273 Value uint32_val_1;
patrick_duc 22:a5929d3668b6 274 uint32_val_1.setUint32Value(1905765786);
patrick_duc 22:a5929d3668b6 275
patrick_duc 22:a5929d3668b6 276 Value uint32_val_2;
patrick_duc 22:a5929d3668b6 277 uint32_val_2.setUint32Value(10098654);
patrick_duc 22:a5929d3668b6 278
patrick_duc 22:a5929d3668b6 279 Value int32_val_1;
patrick_duc 22:a5929d3668b6 280 int32_val_1.setInt32Value(-1010000005);
patrick_duc 22:a5929d3668b6 281
patrick_duc 22:a5929d3668b6 282 Value int32_val_2;
patrick_duc 22:a5929d3668b6 283 int32_val_2.setInt32Value(-76543210);
patrick_duc 22:a5929d3668b6 284
patrick_duc 22:a5929d3668b6 285 Value float_val_1;
patrick_duc 22:a5929d3668b6 286 float_val_1.setFloatValue(-1010.876);
patrick_duc 22:a5929d3668b6 287
patrick_duc 22:a5929d3668b6 288 Value float_val_2;
patrick_duc 22:a5929d3668b6 289 float_val_2.setFloatValue(-7.0/5);
patrick_duc 22:a5929d3668b6 290
patrick_duc 22:a5929d3668b6 291 Value double_val_1;
patrick_duc 22:a5929d3668b6 292 double_val_1.setDoubleValue(-1010.876543);
patrick_duc 22:a5929d3668b6 293
patrick_duc 22:a5929d3668b6 294 Value double_val_2;
patrick_duc 22:a5929d3668b6 295 double_val_2.setDoubleValue(-7.0/3);
patrick_duc 22:a5929d3668b6 296
patrick_duc 22:a5929d3668b6 297 Value time_val_1;
patrick_duc 22:a5929d3668b6 298 time_val_1.setTimeValue(1010101010);
patrick_duc 22:a5929d3668b6 299
patrick_duc 22:a5929d3668b6 300 GVAS_struct tableau[50] = {
patrick_duc 22:a5929d3668b6 301 { &bool_val_1, "false", &erreur_bool },
patrick_duc 22:a5929d3668b6 302 { &bool_val_2, "true", &erreur_bool },
patrick_duc 22:a5929d3668b6 303 { &char_val_1, "r", &erreur_char },
patrick_duc 22:a5929d3668b6 304 { &char_val_2, "u", &erreur_char },
patrick_duc 22:a5929d3668b6 305 { &uint8_val_1, "219", &erreur_uint8 },
patrick_duc 22:a5929d3668b6 306 { &uint8_val_2, "100", &erreur_uint8 },
patrick_duc 22:a5929d3668b6 307 { &int8_val_1, "-110", &erreur_int8 },
patrick_duc 22:a5929d3668b6 308 { &int8_val_2, "-7", &erreur_int8 },
patrick_duc 22:a5929d3668b6 309 { &uint16_val_1, "21905", &erreur_uint16 },
patrick_duc 22:a5929d3668b6 310 { &uint16_val_2, "10098", &erreur_uint16 },
patrick_duc 22:a5929d3668b6 311 { &int16_val_1, "-11000", &erreur_int16 },
patrick_duc 22:a5929d3668b6 312 { &int16_val_2, "-7654", &erreur_int16 },
patrick_duc 22:a5929d3668b6 313 { &uint32_val_1, "1905765786", &erreur_uint32 },
patrick_duc 22:a5929d3668b6 314 { &uint32_val_2, "10098654", &erreur_uint32 },
patrick_duc 22:a5929d3668b6 315 { &int32_val_1, "-1010000005", &erreur_int32 },
patrick_duc 22:a5929d3668b6 316 { &int32_val_2, "-76543210", &erreur_int32 },
patrick_duc 22:a5929d3668b6 317 { &float_val_1, "-1010.876", &erreur_float },
patrick_duc 22:a5929d3668b6 318 { &float_val_2, "-1.4", &erreur_float },
patrick_duc 22:a5929d3668b6 319 { &double_val_1, "-1010.876543", &erreur_double },
patrick_duc 22:a5929d3668b6 320 { &double_val_2, "-2.33333", &erreur_double },
patrick_duc 22:a5929d3668b6 321 { &time_val_1, "1010101010", &erreur_time }
patrick_duc 22:a5929d3668b6 322 };
patrick_duc 22:a5929d3668b6 323
patrick_duc 22:a5929d3668b6 324 for (int i = 0; i < 21; i++) {
patrick_duc 22:a5929d3668b6 325 //DEBUG("Value[%d]= %s\n", i, tableau[i].value->getValueAsString().c_str());
patrick_duc 22:a5929d3668b6 326 if (strcmp(tableau[i].value->getValueAsString().c_str(), tableau[i].chaine) != 0) {
patrick_duc 22:a5929d3668b6 327 DEBUG("Expected : %s, obtained : %s\n", tableau[i].chaine, tableau[i].value->getValueAsString().c_str());
patrick_duc 22:a5929d3668b6 328 *(tableau[i].flag_erreur) = true;
patrick_duc 22:a5929d3668b6 329 }
patrick_duc 22:a5929d3668b6 330 }
patrick_duc 22:a5929d3668b6 331
patrick_duc 22:a5929d3668b6 332
patrick_duc 22:a5929d3668b6 333 if (erreur_bool) {
patrick_duc 22:a5929d3668b6 334 DEBUG("ERREUR sur getValueAsString de valeurs bool !\n");
patrick_duc 22:a5929d3668b6 335 }
patrick_duc 22:a5929d3668b6 336 else {
patrick_duc 22:a5929d3668b6 337 DEBUG("getValueAsString de valeurs bool OK\n");
patrick_duc 22:a5929d3668b6 338 }
patrick_duc 22:a5929d3668b6 339
patrick_duc 22:a5929d3668b6 340 if (erreur_char) {
patrick_duc 22:a5929d3668b6 341 DEBUG("ERREUR sur getValueAsString de valeurs char !\n");
patrick_duc 22:a5929d3668b6 342 }
patrick_duc 22:a5929d3668b6 343 else {
patrick_duc 22:a5929d3668b6 344 DEBUG("getValueAsString de valeurs char OK\n");
patrick_duc 22:a5929d3668b6 345 }
patrick_duc 22:a5929d3668b6 346
patrick_duc 22:a5929d3668b6 347 if (erreur_uint8) {
patrick_duc 22:a5929d3668b6 348 DEBUG("ERREUR sur getValueAsString de valeurs uint8 !\n");
patrick_duc 22:a5929d3668b6 349 }
patrick_duc 22:a5929d3668b6 350 else {
patrick_duc 22:a5929d3668b6 351 DEBUG("getValueAsString de valeurs uint8 OK\n");
patrick_duc 22:a5929d3668b6 352 }
patrick_duc 22:a5929d3668b6 353
patrick_duc 22:a5929d3668b6 354 if (erreur_int8) {
patrick_duc 22:a5929d3668b6 355 DEBUG("ERREUR sur getValueAsString de valeurs int8 !\n");
patrick_duc 22:a5929d3668b6 356 }
patrick_duc 22:a5929d3668b6 357 else {
patrick_duc 22:a5929d3668b6 358 DEBUG("getValueAsString de valeurs int8 OK\n");
patrick_duc 22:a5929d3668b6 359 }
patrick_duc 22:a5929d3668b6 360
patrick_duc 22:a5929d3668b6 361 if (erreur_uint16) {
patrick_duc 22:a5929d3668b6 362 DEBUG("ERREUR sur getValueAsString de valeurs uint16 !\n");
patrick_duc 22:a5929d3668b6 363 }
patrick_duc 22:a5929d3668b6 364 else {
patrick_duc 22:a5929d3668b6 365 DEBUG("getValueAsString de valeurs uint16 OK\n");
patrick_duc 22:a5929d3668b6 366 }
patrick_duc 22:a5929d3668b6 367
patrick_duc 22:a5929d3668b6 368 if (erreur_int16) {
patrick_duc 22:a5929d3668b6 369 DEBUG("ERREUR sur getValueAsString de valeurs int16 !\n");
patrick_duc 22:a5929d3668b6 370 }
patrick_duc 22:a5929d3668b6 371 else {
patrick_duc 22:a5929d3668b6 372 DEBUG("getValueAsString de valeurs int16 OK\n");
patrick_duc 22:a5929d3668b6 373 }
patrick_duc 22:a5929d3668b6 374
patrick_duc 22:a5929d3668b6 375 if (erreur_uint32) {
patrick_duc 22:a5929d3668b6 376 DEBUG("ERREUR sur getValueAsString de valeurs uint32 !\n");
patrick_duc 22:a5929d3668b6 377 }
patrick_duc 22:a5929d3668b6 378 else {
patrick_duc 22:a5929d3668b6 379 DEBUG("getValueAsString de valeurs uint32 OK\n");
patrick_duc 22:a5929d3668b6 380 }
patrick_duc 22:a5929d3668b6 381
patrick_duc 22:a5929d3668b6 382 if (erreur_int32) {
patrick_duc 22:a5929d3668b6 383 DEBUG("ERREUR sur getValueAsString de valeurs int32 !\n");
patrick_duc 22:a5929d3668b6 384 }
patrick_duc 22:a5929d3668b6 385 else {
patrick_duc 22:a5929d3668b6 386 DEBUG("getValueAsString de valeurs int32 OK\n");
patrick_duc 22:a5929d3668b6 387 }
patrick_duc 22:a5929d3668b6 388
patrick_duc 22:a5929d3668b6 389 if (erreur_float) {
patrick_duc 22:a5929d3668b6 390 DEBUG("ERREUR sur getValueAsString de valeurs float !\n");
patrick_duc 22:a5929d3668b6 391 }
patrick_duc 22:a5929d3668b6 392 else {
patrick_duc 22:a5929d3668b6 393 DEBUG("getValueAsString de valeurs float OK\n");
patrick_duc 22:a5929d3668b6 394 }
patrick_duc 22:a5929d3668b6 395
patrick_duc 22:a5929d3668b6 396 if (erreur_double) {
patrick_duc 22:a5929d3668b6 397 DEBUG("ERREUR sur getValueAsString de valeurs double !\n");
patrick_duc 22:a5929d3668b6 398 }
patrick_duc 22:a5929d3668b6 399 else {
patrick_duc 22:a5929d3668b6 400 DEBUG("getValueAsString de valeurs double OK\n");
patrick_duc 22:a5929d3668b6 401 }
patrick_duc 22:a5929d3668b6 402
patrick_duc 22:a5929d3668b6 403 if (erreur_time) {
patrick_duc 22:a5929d3668b6 404 DEBUG("ERREUR sur getValueAsString de valeurs time !\n");
patrick_duc 22:a5929d3668b6 405 }
patrick_duc 22:a5929d3668b6 406 else {
patrick_duc 22:a5929d3668b6 407 DEBUG("getValueAsString de valeurs time OK\n");
patrick_duc 22:a5929d3668b6 408 }
patrick_duc 22:a5929d3668b6 409 }
patrick_duc 22:a5929d3668b6 410
patrick_duc 22:a5929d3668b6 411
patrick_duc 22:a5929d3668b6 412 static void testSetGetValues() {
patrick_duc 22:a5929d3668b6 413 Value value;
patrick_duc 22:a5929d3668b6 414 bool erreur_bool = false;
patrick_duc 22:a5929d3668b6 415 bool erreur_char = false;
patrick_duc 22:a5929d3668b6 416 bool erreur_uint8 = false;
patrick_duc 22:a5929d3668b6 417 bool erreur_int8 = false;
patrick_duc 22:a5929d3668b6 418 bool erreur_uint16 = false;
patrick_duc 22:a5929d3668b6 419 bool erreur_int16 = false;
patrick_duc 22:a5929d3668b6 420 bool erreur_uint32 = false;
patrick_duc 22:a5929d3668b6 421 bool erreur_int32 = false;
patrick_duc 22:a5929d3668b6 422 bool erreur_float = false;
patrick_duc 22:a5929d3668b6 423 bool erreur_double = false;
patrick_duc 22:a5929d3668b6 424 bool erreur_time = false;
patrick_duc 22:a5929d3668b6 425
patrick_duc 22:a5929d3668b6 426 // Valeurs booléennes
patrick_duc 22:a5929d3668b6 427 value.setBoolValue(true);
patrick_duc 22:a5929d3668b6 428 if (value.getBoolValue() != true) {
patrick_duc 22:a5929d3668b6 429 erreur_bool = true;
patrick_duc 22:a5929d3668b6 430 }
patrick_duc 22:a5929d3668b6 431
patrick_duc 22:a5929d3668b6 432 value.setBoolValue(false);
patrick_duc 22:a5929d3668b6 433 if (value.getBoolValue() != false) {
patrick_duc 22:a5929d3668b6 434 erreur_bool = true;
patrick_duc 22:a5929d3668b6 435 }
patrick_duc 22:a5929d3668b6 436
patrick_duc 22:a5929d3668b6 437 if (erreur_bool) {
patrick_duc 22:a5929d3668b6 438 DEBUG("ERREUR sur set/get de valeurs booleennes !\n");
patrick_duc 22:a5929d3668b6 439 }
patrick_duc 22:a5929d3668b6 440 else {
patrick_duc 22:a5929d3668b6 441 DEBUG("Set/get de valeurs booleennes OK\n");
patrick_duc 22:a5929d3668b6 442 }
patrick_duc 22:a5929d3668b6 443
patrick_duc 22:a5929d3668b6 444 // Valeurs char
patrick_duc 22:a5929d3668b6 445 value.setCharValue('r');
patrick_duc 22:a5929d3668b6 446 if (value.getCharValue() != 'r') {
patrick_duc 22:a5929d3668b6 447 erreur_char = true;
patrick_duc 22:a5929d3668b6 448 }
patrick_duc 22:a5929d3668b6 449
patrick_duc 22:a5929d3668b6 450 value.setCharValue(65);
patrick_duc 22:a5929d3668b6 451 if (value.getCharValue() != 65) {
patrick_duc 22:a5929d3668b6 452 erreur_char = true;
patrick_duc 22:a5929d3668b6 453 }
patrick_duc 22:a5929d3668b6 454
patrick_duc 22:a5929d3668b6 455 if (erreur_char) {
patrick_duc 22:a5929d3668b6 456 DEBUG("ERREUR sur set/get de valeurs char !\n");
patrick_duc 22:a5929d3668b6 457 }
patrick_duc 22:a5929d3668b6 458 else {
patrick_duc 22:a5929d3668b6 459 DEBUG("Set/get de valeurs char OK\n");
patrick_duc 22:a5929d3668b6 460 }
patrick_duc 22:a5929d3668b6 461
patrick_duc 22:a5929d3668b6 462 // Valeurs uint8
patrick_duc 22:a5929d3668b6 463 value.setUint8Value(67);
patrick_duc 22:a5929d3668b6 464 if (value.getUint8Value() != 67) {
patrick_duc 22:a5929d3668b6 465 erreur_uint8 = true;
patrick_duc 22:a5929d3668b6 466 }
patrick_duc 22:a5929d3668b6 467
patrick_duc 22:a5929d3668b6 468 value.setUint8Value(0);
patrick_duc 22:a5929d3668b6 469 if (value.getUint8Value() != 0) {
patrick_duc 22:a5929d3668b6 470 erreur_uint8 = true;
patrick_duc 22:a5929d3668b6 471 }
patrick_duc 22:a5929d3668b6 472
patrick_duc 22:a5929d3668b6 473 if (erreur_uint8) {
patrick_duc 22:a5929d3668b6 474 DEBUG("ERREUR sur set/get de valeurs uint8 !\n");
patrick_duc 22:a5929d3668b6 475 }
patrick_duc 22:a5929d3668b6 476 else {
patrick_duc 22:a5929d3668b6 477 DEBUG("Set/get de valeurs char uint8 OK\n");
patrick_duc 22:a5929d3668b6 478 }
patrick_duc 22:a5929d3668b6 479
patrick_duc 22:a5929d3668b6 480 // Valeurs int8
patrick_duc 22:a5929d3668b6 481 value.setInt8Value(-67);
patrick_duc 22:a5929d3668b6 482 if (value.getInt8Value() != -67) {
patrick_duc 22:a5929d3668b6 483 erreur_int8 = true;
patrick_duc 22:a5929d3668b6 484 }
patrick_duc 22:a5929d3668b6 485
patrick_duc 22:a5929d3668b6 486 value.setInt8Value(35);
patrick_duc 22:a5929d3668b6 487 if (value.getInt8Value() != 35) {
patrick_duc 22:a5929d3668b6 488 erreur_int8 = true;
patrick_duc 22:a5929d3668b6 489 }
patrick_duc 22:a5929d3668b6 490
patrick_duc 22:a5929d3668b6 491 if (erreur_int8) {
patrick_duc 22:a5929d3668b6 492 DEBUG("ERREUR sur set/get de valeurs int8 !\n");
patrick_duc 22:a5929d3668b6 493 }
patrick_duc 22:a5929d3668b6 494 else {
patrick_duc 22:a5929d3668b6 495 DEBUG("Set/get de valeurs char int8\n");
patrick_duc 22:a5929d3668b6 496 }
patrick_duc 22:a5929d3668b6 497
patrick_duc 22:a5929d3668b6 498 // Valeurs uint16
patrick_duc 22:a5929d3668b6 499 value.setUint16Value(62075);
patrick_duc 22:a5929d3668b6 500 if (value.getUint16Value() != 62075) {
patrick_duc 22:a5929d3668b6 501 erreur_uint16 = true;
patrick_duc 22:a5929d3668b6 502 }
patrick_duc 22:a5929d3668b6 503
patrick_duc 22:a5929d3668b6 504 value.setUint16Value(133);
patrick_duc 22:a5929d3668b6 505 if (value.getUint16Value() != 133) {
patrick_duc 22:a5929d3668b6 506 erreur_uint16 = true;
patrick_duc 22:a5929d3668b6 507 }
patrick_duc 22:a5929d3668b6 508
patrick_duc 22:a5929d3668b6 509 if (erreur_uint16) {
patrick_duc 22:a5929d3668b6 510 DEBUG("ERREUR sur set/get de valeurs uint16 !\n");
patrick_duc 22:a5929d3668b6 511 }
patrick_duc 22:a5929d3668b6 512 else {
patrick_duc 22:a5929d3668b6 513 DEBUG("Set/get de valeurs char uint16 OK\n");
patrick_duc 22:a5929d3668b6 514 }
patrick_duc 22:a5929d3668b6 515
patrick_duc 22:a5929d3668b6 516 // Valeurs int16
patrick_duc 22:a5929d3668b6 517 value.setInt16Value(-6376);
patrick_duc 22:a5929d3668b6 518 if (value.getInt16Value() != -6376) {
patrick_duc 22:a5929d3668b6 519 erreur_int16 = true;
patrick_duc 22:a5929d3668b6 520 }
patrick_duc 22:a5929d3668b6 521
patrick_duc 22:a5929d3668b6 522 value.setInt16Value(3500);
patrick_duc 22:a5929d3668b6 523 if (value.getInt16Value() != 3500) {
patrick_duc 22:a5929d3668b6 524 erreur_int16 = true;
patrick_duc 22:a5929d3668b6 525 }
patrick_duc 22:a5929d3668b6 526
patrick_duc 22:a5929d3668b6 527 if (erreur_int16) {
patrick_duc 22:a5929d3668b6 528 DEBUG("ERREUR sur set/get de valeurs int16 !\n");
patrick_duc 22:a5929d3668b6 529 }
patrick_duc 22:a5929d3668b6 530 else {
patrick_duc 22:a5929d3668b6 531 DEBUG("Set/get de valeurs int16 OK\n");
patrick_duc 22:a5929d3668b6 532 }
patrick_duc 22:a5929d3668b6 533
patrick_duc 22:a5929d3668b6 534 // Valeurs uint32
patrick_duc 22:a5929d3668b6 535 value.setUint32Value(207576544);
patrick_duc 22:a5929d3668b6 536 if (value.getUint32Value() != 207576544) {
patrick_duc 22:a5929d3668b6 537 erreur_uint32 = true;
patrick_duc 22:a5929d3668b6 538 }
patrick_duc 22:a5929d3668b6 539
patrick_duc 22:a5929d3668b6 540 value.setUint32Value(3345678901);
patrick_duc 22:a5929d3668b6 541 if (value.getUint32Value() != 3345678901) {
patrick_duc 22:a5929d3668b6 542 erreur_uint32 = true;
patrick_duc 22:a5929d3668b6 543 }
patrick_duc 22:a5929d3668b6 544
patrick_duc 22:a5929d3668b6 545 if (erreur_uint32) {
patrick_duc 22:a5929d3668b6 546 DEBUG("ERREUR sur set/get de valeurs uint32 !\n");
patrick_duc 22:a5929d3668b6 547 }
patrick_duc 22:a5929d3668b6 548 else {
patrick_duc 22:a5929d3668b6 549 DEBUG("Set/get de valeurs char uint32 OK\n");
patrick_duc 22:a5929d3668b6 550 }
patrick_duc 22:a5929d3668b6 551
patrick_duc 22:a5929d3668b6 552 // Valeurs int32
patrick_duc 22:a5929d3668b6 553 value.setInt32Value(-620757654);
patrick_duc 22:a5929d3668b6 554 if (value.getInt32Value() != -620757654) {
patrick_duc 22:a5929d3668b6 555 erreur_int32 = true;
patrick_duc 22:a5929d3668b6 556 }
patrick_duc 22:a5929d3668b6 557
patrick_duc 22:a5929d3668b6 558 value.setInt32Value(1207576544);
patrick_duc 22:a5929d3668b6 559 if (value.getInt32Value() != 1207576544) {
patrick_duc 22:a5929d3668b6 560 erreur_int32 = true;
patrick_duc 22:a5929d3668b6 561 }
patrick_duc 22:a5929d3668b6 562
patrick_duc 22:a5929d3668b6 563 if (erreur_int32) {
patrick_duc 22:a5929d3668b6 564 DEBUG("ERREUR sur set/get de valeurs int32 !\n");
patrick_duc 22:a5929d3668b6 565 }
patrick_duc 22:a5929d3668b6 566 else {
patrick_duc 22:a5929d3668b6 567 DEBUG("Set/get de valeurs int32 OK\n");
patrick_duc 22:a5929d3668b6 568 }
patrick_duc 22:a5929d3668b6 569
patrick_duc 22:a5929d3668b6 570 // Valeurs float
patrick_duc 22:a5929d3668b6 571 value.setFloatValue(-620.7);
patrick_duc 22:a5929d3668b6 572 if ((value.getFloatValue() + 620.7) > 0.0001) {
patrick_duc 22:a5929d3668b6 573 erreur_float = true;
patrick_duc 22:a5929d3668b6 574 }
patrick_duc 22:a5929d3668b6 575
patrick_duc 22:a5929d3668b6 576 value.setFloatValue(12075765.1);
patrick_duc 22:a5929d3668b6 577 if ((value.getFloatValue() - 12075765.1) > 0.0001) {
patrick_duc 22:a5929d3668b6 578 erreur_float = true;
patrick_duc 22:a5929d3668b6 579 }
patrick_duc 22:a5929d3668b6 580
patrick_duc 22:a5929d3668b6 581 if (erreur_float) {
patrick_duc 22:a5929d3668b6 582 DEBUG("ERREUR sur set/get de valeurs float !\n");
patrick_duc 22:a5929d3668b6 583 }
patrick_duc 22:a5929d3668b6 584 else {
patrick_duc 22:a5929d3668b6 585 DEBUG("Set/get de valeurs float OK\n");
patrick_duc 22:a5929d3668b6 586 }
patrick_duc 22:a5929d3668b6 587
patrick_duc 22:a5929d3668b6 588 // Valeurs double
patrick_duc 22:a5929d3668b6 589 value.setDoubleValue(-6207854.7);
patrick_duc 22:a5929d3668b6 590 //DEBUG("Valeur double 1 : %f\n", value._value.value.double_value);
patrick_duc 22:a5929d3668b6 591 if ((value.getDoubleValue() + 6207854.7) > 0.000001) {
patrick_duc 22:a5929d3668b6 592 erreur_double = true;
patrick_duc 22:a5929d3668b6 593 }
patrick_duc 22:a5929d3668b6 594
patrick_duc 22:a5929d3668b6 595 value.setDoubleValue(1207545765.1);
patrick_duc 22:a5929d3668b6 596 //DEBUG("Valeur double 2 : %f\n", value._value.value.double_value);
patrick_duc 22:a5929d3668b6 597 if ((value.getDoubleValue() - 1207545765.1) > 0.000001) {
patrick_duc 22:a5929d3668b6 598 erreur_double = true;
patrick_duc 22:a5929d3668b6 599 }
patrick_duc 22:a5929d3668b6 600
patrick_duc 22:a5929d3668b6 601 value.setDoubleValue(-1.0 / 9);
patrick_duc 22:a5929d3668b6 602 //DEBUG("Valeur double 3 : %f\n", value._value.value.double_value);
patrick_duc 22:a5929d3668b6 603 if ((value.getDoubleValue() + (1.0 / 9)) > 0.000001) {
patrick_duc 22:a5929d3668b6 604 erreur_double = true;
patrick_duc 22:a5929d3668b6 605 }
patrick_duc 22:a5929d3668b6 606
patrick_duc 22:a5929d3668b6 607 if (erreur_double) {
patrick_duc 22:a5929d3668b6 608 DEBUG("ERREUR sur set/get de valeurs double !\n");
patrick_duc 22:a5929d3668b6 609 }
patrick_duc 22:a5929d3668b6 610 else {
patrick_duc 22:a5929d3668b6 611 DEBUG("Set/get de valeurs double OK\n");
patrick_duc 22:a5929d3668b6 612 }
patrick_duc 22:a5929d3668b6 613
patrick_duc 22:a5929d3668b6 614 // Valeurs time
patrick_duc 22:a5929d3668b6 615 value.setTimeValue(207576544);
patrick_duc 22:a5929d3668b6 616 if (value.getTimeValue() != 207576544) {
patrick_duc 22:a5929d3668b6 617 erreur_time = true;
patrick_duc 22:a5929d3668b6 618 }
patrick_duc 22:a5929d3668b6 619
patrick_duc 22:a5929d3668b6 620 value.setTimeValue(3345678901);
patrick_duc 22:a5929d3668b6 621 if (value.getTimeValue() != 3345678901) {
patrick_duc 22:a5929d3668b6 622 erreur_time = true;
patrick_duc 22:a5929d3668b6 623 }
patrick_duc 22:a5929d3668b6 624
patrick_duc 22:a5929d3668b6 625 if (erreur_time) {
patrick_duc 22:a5929d3668b6 626 DEBUG("ERREUR sur set/get de valeurs time !\n");
patrick_duc 22:a5929d3668b6 627 }
patrick_duc 22:a5929d3668b6 628 else {
patrick_duc 22:a5929d3668b6 629 DEBUG("Set/get de valeurs char time OK\n");
patrick_duc 22:a5929d3668b6 630 }
patrick_duc 22:a5929d3668b6 631 }
patrick_duc 22:a5929d3668b6 632
patrick_duc 22:a5929d3668b6 633
patrick_duc 22:a5929d3668b6 634 static void testValueComparisons() {
patrick_duc 22:a5929d3668b6 635 Value value1, value2;
patrick_duc 22:a5929d3668b6 636 value1.setBoolValue(true);
patrick_duc 22:a5929d3668b6 637 value2.setBoolValue(false);
patrick_duc 22:a5929d3668b6 638
patrick_duc 22:a5929d3668b6 639 if (value1.compareTo(value2) != 1) {
patrick_duc 22:a5929d3668b6 640 DEBUG("ERREUR sur comparaison de valeurs booleennes !\n");
patrick_duc 22:a5929d3668b6 641 }
patrick_duc 22:a5929d3668b6 642 else {
patrick_duc 22:a5929d3668b6 643 DEBUG("Comparaison de valeurs booleennes OK\n");
patrick_duc 22:a5929d3668b6 644 }
patrick_duc 22:a5929d3668b6 645
patrick_duc 22:a5929d3668b6 646 value1.setCharValue(65);
patrick_duc 22:a5929d3668b6 647 value2.setCharValue(64);
patrick_duc 22:a5929d3668b6 648
patrick_duc 22:a5929d3668b6 649 if (value1.compareTo(value2) != 1) {
patrick_duc 22:a5929d3668b6 650 DEBUG("ERREUR sur comparaison de valeurs char !\n");
patrick_duc 22:a5929d3668b6 651 }
patrick_duc 22:a5929d3668b6 652 else {
patrick_duc 22:a5929d3668b6 653 DEBUG("Comparaison de valeurs char OK\n");
patrick_duc 22:a5929d3668b6 654 }
patrick_duc 22:a5929d3668b6 655
patrick_duc 22:a5929d3668b6 656 value1.setUint8Value(0);
patrick_duc 22:a5929d3668b6 657 value2.setUint8Value(3);
patrick_duc 22:a5929d3668b6 658
patrick_duc 22:a5929d3668b6 659 if (value1.compareTo(value2) != -1) {
patrick_duc 22:a5929d3668b6 660 DEBUG("ERREUR sur comparaison de valeurs uint8 !\n");
patrick_duc 22:a5929d3668b6 661 }
patrick_duc 22:a5929d3668b6 662 else {
patrick_duc 22:a5929d3668b6 663 DEBUG("Comparaison de valeurs uint8 OK\n");
patrick_duc 22:a5929d3668b6 664 }
patrick_duc 22:a5929d3668b6 665
patrick_duc 22:a5929d3668b6 666 value1.setInt8Value(-117);
patrick_duc 22:a5929d3668b6 667 value2.setInt8Value(-116);
patrick_duc 22:a5929d3668b6 668
patrick_duc 22:a5929d3668b6 669 if (value1.compareTo(value2) != -1) {
patrick_duc 22:a5929d3668b6 670 DEBUG("ERREUR sur comparaison de valeurs int8 !\n");
patrick_duc 22:a5929d3668b6 671 }
patrick_duc 22:a5929d3668b6 672 else {
patrick_duc 22:a5929d3668b6 673 DEBUG("Comparaison de valeurs int8 OK\n");
patrick_duc 22:a5929d3668b6 674 }
patrick_duc 22:a5929d3668b6 675
patrick_duc 22:a5929d3668b6 676 value1.setUint16Value(8764);
patrick_duc 22:a5929d3668b6 677 value2.setUint16Value(8760);
patrick_duc 22:a5929d3668b6 678
patrick_duc 22:a5929d3668b6 679 if (value1.compareTo(value2) != 1) {
patrick_duc 22:a5929d3668b6 680 DEBUG("ERREUR sur comparaison de valeurs uint16 !\n");
patrick_duc 22:a5929d3668b6 681 }
patrick_duc 22:a5929d3668b6 682 else {
patrick_duc 22:a5929d3668b6 683 DEBUG("Comparaison de valeurs uint16 OK\n");
patrick_duc 22:a5929d3668b6 684 }
patrick_duc 22:a5929d3668b6 685
patrick_duc 22:a5929d3668b6 686 value1.setInt16Value(-11740);
patrick_duc 22:a5929d3668b6 687 value2.setInt16Value(-11664);
patrick_duc 22:a5929d3668b6 688
patrick_duc 22:a5929d3668b6 689 if (value1.compareTo(value2) != -1) {
patrick_duc 22:a5929d3668b6 690 DEBUG("ERREUR sur comparaison de valeurs int16 !\n");
patrick_duc 22:a5929d3668b6 691 }
patrick_duc 22:a5929d3668b6 692 else {
patrick_duc 22:a5929d3668b6 693 DEBUG("Comparaison de valeurs int16 OK\n");
patrick_duc 22:a5929d3668b6 694 }
patrick_duc 22:a5929d3668b6 695
patrick_duc 22:a5929d3668b6 696 value1.setUint32Value(87619874);
patrick_duc 22:a5929d3668b6 697 value2.setUint32Value(87619874);
patrick_duc 22:a5929d3668b6 698
patrick_duc 22:a5929d3668b6 699 if (value1.compareTo(value2) != 0) {
patrick_duc 22:a5929d3668b6 700 DEBUG("ERREUR sur comparaison de valeurs uint32 !\n");
patrick_duc 22:a5929d3668b6 701 }
patrick_duc 22:a5929d3668b6 702 else {
patrick_duc 22:a5929d3668b6 703 DEBUG("Comparaison de valeurs uint32 OK\n");
patrick_duc 22:a5929d3668b6 704 }
patrick_duc 22:a5929d3668b6 705
patrick_duc 22:a5929d3668b6 706 value1.setInt32Value(-11740765);
patrick_duc 22:a5929d3668b6 707 value2.setInt32Value(-11740766);
patrick_duc 22:a5929d3668b6 708
patrick_duc 22:a5929d3668b6 709 if (value1.compareTo(value2) != 1) {
patrick_duc 22:a5929d3668b6 710 DEBUG("ERREUR sur comparaison de valeurs int32 !\n");
patrick_duc 22:a5929d3668b6 711 }
patrick_duc 22:a5929d3668b6 712 else {
patrick_duc 22:a5929d3668b6 713 DEBUG("Comparaison de valeurs int32 OK\n");
patrick_duc 22:a5929d3668b6 714 }
patrick_duc 22:a5929d3668b6 715
patrick_duc 22:a5929d3668b6 716 value1.setFloatValue(-1174.75);
patrick_duc 22:a5929d3668b6 717 //DEBUG("Valeur float 1 : %f\n", value1._value.value.float_value);
patrick_duc 22:a5929d3668b6 718 value2.setFloatValue(-1174.74);
patrick_duc 22:a5929d3668b6 719 //DEBUG("Valeur float 2 : %f\n", value2._value.value.float_value);
patrick_duc 22:a5929d3668b6 720
patrick_duc 22:a5929d3668b6 721 if (value1.compareTo(value2) != -1) {
patrick_duc 22:a5929d3668b6 722 DEBUG("ERREUR sur comparaison de valeurs float !\n");
patrick_duc 22:a5929d3668b6 723 }
patrick_duc 22:a5929d3668b6 724 else {
patrick_duc 22:a5929d3668b6 725 DEBUG("Comparaison de valeurs float OK\n");
patrick_duc 22:a5929d3668b6 726 }
patrick_duc 22:a5929d3668b6 727
patrick_duc 22:a5929d3668b6 728 value1.setDoubleValue(0.6545);
patrick_duc 22:a5929d3668b6 729 value2.setDoubleValue(1.8765);
patrick_duc 22:a5929d3668b6 730
patrick_duc 22:a5929d3668b6 731 if (value1.compareTo(value2) != -1) {
patrick_duc 22:a5929d3668b6 732 DEBUG("ERREUR sur comparaison de valeurs double !\n");
patrick_duc 22:a5929d3668b6 733 }
patrick_duc 22:a5929d3668b6 734 else {
patrick_duc 22:a5929d3668b6 735 DEBUG("Comparaison de valeurs double OK\n");
patrick_duc 22:a5929d3668b6 736 }
patrick_duc 22:a5929d3668b6 737
patrick_duc 22:a5929d3668b6 738 value1.setTimeValue(6545);
patrick_duc 22:a5929d3668b6 739 value2.setTimeValue(8765);
patrick_duc 22:a5929d3668b6 740
patrick_duc 22:a5929d3668b6 741 if (value1.compareTo(value2) != -1) {
patrick_duc 22:a5929d3668b6 742 DEBUG("ERREUR sur comparaison de valeurs time !\n");
patrick_duc 22:a5929d3668b6 743 }
patrick_duc 22:a5929d3668b6 744 else {
patrick_duc 22:a5929d3668b6 745 DEBUG("Comparaison de valeurs time OK\n");
patrick_duc 22:a5929d3668b6 746 }
patrick_duc 22:a5929d3668b6 747
patrick_duc 22:a5929d3668b6 748 value1.setTimeValue(6545);
patrick_duc 22:a5929d3668b6 749 value2.setFloatValue(8765.543);
patrick_duc 22:a5929d3668b6 750
patrick_duc 22:a5929d3668b6 751 if (value1.compareTo(value2) != -2) {
patrick_duc 22:a5929d3668b6 752 DEBUG("ERREUR sur comparaison de valeurs de types differents !\n");
patrick_duc 22:a5929d3668b6 753 }
patrick_duc 22:a5929d3668b6 754 else {
patrick_duc 22:a5929d3668b6 755 DEBUG("Comparaison de valeurs de types differents OK\n");
patrick_duc 22:a5929d3668b6 756 }
patrick_duc 22:a5929d3668b6 757 }
patrick_duc 22:a5929d3668b6 758
patrick_duc 22:a5929d3668b6 759
patrick_duc 22:a5929d3668b6 760 int main(int argc, char** argv) {
patrick_duc 22:a5929d3668b6 761 testSetGetValues();
patrick_duc 22:a5929d3668b6 762 testValueComparisons();
patrick_duc 22:a5929d3668b6 763 testGetValueAsString();
patrick_duc 22:a5929d3668b6 764 testDifferencesWithDelta();
patrick_duc 22:a5929d3668b6 765 return 0;
patrick_duc 22:a5929d3668b6 766 }