Commit 28e1645db1299ec335437e9811f10624e224345d

Authored by Stéphane Raimbault
1 parent 79c1bd3d

Add more tests for new modbus_mapping_new_start_address

Showing 1 changed file with 64 additions and 11 deletions
tests/unit-test-client.c
@@ -311,46 +311,99 @@ int main(int argc, char *argv[]) @@ -311,46 +311,99 @@ int main(int argc, char *argv[])
311 /** ILLEGAL DATA ADDRESS **/ 311 /** ILLEGAL DATA ADDRESS **/
312 printf("\nTEST ILLEGAL DATA ADDRESS:\n"); 312 printf("\nTEST ILLEGAL DATA ADDRESS:\n");
313 313
314 - /* The mapping begins at 0 and ends at address + nb_points so  
315 - * the addresses are not valid. */ 314 + /* The mapping begins at the defined addresses and ends at address +
  315 + * nb_points so these addresses are not valid. */
  316 +
  317 + rc = modbus_read_bits(ctx, 0, 1, tab_rp_bits);
  318 + printf("* modbus_read_bits (0): ");
  319 + ASSERT_TRUE(rc == -1 && errno == EMBXILADD, "");
316 320
317 rc = modbus_read_bits(ctx, UT_BITS_ADDRESS, UT_BITS_NB + 1, tab_rp_bits); 321 rc = modbus_read_bits(ctx, UT_BITS_ADDRESS, UT_BITS_NB + 1, tab_rp_bits);
318 - printf("* modbus_read_bits: "); 322 + printf("* modbus_read_bits (max): ");
  323 + ASSERT_TRUE(rc == -1 && errno == EMBXILADD, "");
  324 +
  325 + rc = modbus_read_input_bits(ctx, 0, 1, tab_rp_bits);
  326 + printf("* modbus_read_input_bits (0): ");
319 ASSERT_TRUE(rc == -1 && errno == EMBXILADD, ""); 327 ASSERT_TRUE(rc == -1 && errno == EMBXILADD, "");
320 328
321 rc = modbus_read_input_bits(ctx, UT_INPUT_BITS_ADDRESS, 329 rc = modbus_read_input_bits(ctx, UT_INPUT_BITS_ADDRESS,
322 UT_INPUT_BITS_NB + 1, tab_rp_bits); 330 UT_INPUT_BITS_NB + 1, tab_rp_bits);
323 - printf("* modbus_read_input_bits: "); 331 + printf("* modbus_read_input_bits (max): ");
  332 + ASSERT_TRUE(rc == -1 && errno == EMBXILADD, "");
  333 +
  334 + rc = modbus_read_registers(ctx, 0, 1, tab_rp_registers);
  335 + printf("* modbus_read_registers (0): ");
324 ASSERT_TRUE(rc == -1 && errno == EMBXILADD, ""); 336 ASSERT_TRUE(rc == -1 && errno == EMBXILADD, "");
325 337
326 rc = modbus_read_registers(ctx, UT_REGISTERS_ADDRESS, 338 rc = modbus_read_registers(ctx, UT_REGISTERS_ADDRESS,
327 UT_REGISTERS_NB_MAX + 1, tab_rp_registers); 339 UT_REGISTERS_NB_MAX + 1, tab_rp_registers);
328 - printf("* modbus_read_registers: "); 340 + printf("* modbus_read_registers (max): ");
  341 + ASSERT_TRUE(rc == -1 && errno == EMBXILADD, "");
  342 +
  343 + rc = modbus_read_input_registers(ctx, 0, 1, tab_rp_registers);
  344 + printf("* modbus_read_input_registers (0): ");
329 ASSERT_TRUE(rc == -1 && errno == EMBXILADD, ""); 345 ASSERT_TRUE(rc == -1 && errno == EMBXILADD, "");
330 346
331 rc = modbus_read_input_registers(ctx, UT_INPUT_REGISTERS_ADDRESS, 347 rc = modbus_read_input_registers(ctx, UT_INPUT_REGISTERS_ADDRESS,
332 UT_INPUT_REGISTERS_NB + 1, 348 UT_INPUT_REGISTERS_NB + 1,
333 tab_rp_registers); 349 tab_rp_registers);
334 - printf("* modbus_read_input_registers: "); 350 + printf("* modbus_read_input_registers (max): ");
  351 + ASSERT_TRUE(rc == -1 && errno == EMBXILADD, "");
  352 +
  353 + rc = modbus_write_bit(ctx, 0, ON);
  354 + printf("* modbus_write_bit (0): ");
335 ASSERT_TRUE(rc == -1 && errno == EMBXILADD, ""); 355 ASSERT_TRUE(rc == -1 && errno == EMBXILADD, "");
336 356
337 rc = modbus_write_bit(ctx, UT_BITS_ADDRESS + UT_BITS_NB, ON); 357 rc = modbus_write_bit(ctx, UT_BITS_ADDRESS + UT_BITS_NB, ON);
338 - printf("* modbus_write_bit: "); 358 + printf("* modbus_write_bit (max): ");
  359 + ASSERT_TRUE(rc == -1 && errno == EMBXILADD, "");
  360 +
  361 + rc = modbus_write_bits(ctx, 0, 1, tab_rp_bits);
  362 + printf("* modbus_write_coils (0): ");
339 ASSERT_TRUE(rc == -1 && errno == EMBXILADD, ""); 363 ASSERT_TRUE(rc == -1 && errno == EMBXILADD, "");
340 364
341 rc = modbus_write_bits(ctx, UT_BITS_ADDRESS + UT_BITS_NB, 365 rc = modbus_write_bits(ctx, UT_BITS_ADDRESS + UT_BITS_NB,
342 UT_BITS_NB, tab_rp_bits); 366 UT_BITS_NB, tab_rp_bits);
343 - printf("* modbus_write_coils: "); 367 + printf("* modbus_write_coils (max): ");
  368 + ASSERT_TRUE(rc == -1 && errno == EMBXILADD, "");
  369 +
  370 + rc = modbus_write_register(ctx, 0, tab_rp_registers[0]);
  371 + printf("* modbus_write_register (0): ");
344 ASSERT_TRUE(rc == -1 && errno == EMBXILADD, ""); 372 ASSERT_TRUE(rc == -1 && errno == EMBXILADD, "");
345 373
346 rc = modbus_write_register(ctx, UT_REGISTERS_ADDRESS + UT_REGISTERS_NB_MAX, 374 rc = modbus_write_register(ctx, UT_REGISTERS_ADDRESS + UT_REGISTERS_NB_MAX,
347 tab_rp_registers[0]); 375 tab_rp_registers[0]);
348 - printf("* modbus_write_register: "); 376 + printf("* modbus_write_register (max): ");
  377 + ASSERT_TRUE(rc == -1 && errno == EMBXILADD, "");
  378 +
  379 + rc = modbus_write_registers(ctx, 0, 1, tab_rp_registers);
  380 + printf("* modbus_write_registers (0): ");
349 ASSERT_TRUE(rc == -1 && errno == EMBXILADD, ""); 381 ASSERT_TRUE(rc == -1 && errno == EMBXILADD, "");
350 382
351 rc = modbus_write_registers(ctx, UT_REGISTERS_ADDRESS + UT_REGISTERS_NB_MAX, 383 rc = modbus_write_registers(ctx, UT_REGISTERS_ADDRESS + UT_REGISTERS_NB_MAX,
352 - UT_REGISTERS_NB, tab_rp_registers);  
353 - printf("* modbus_write_registers: "); 384 + UT_REGISTERS_NB, tab_rp_registers);
  385 + printf("* modbus_write_registers (max): ");
  386 + ASSERT_TRUE(rc == -1 && errno == EMBXILADD, "");
  387 +
  388 + rc = modbus_mask_write_register(ctx, 0, 0xF2, 0x25);
  389 + printf("* modbus_mask_write_registers (0): ");
  390 + ASSERT_TRUE(rc == -1 && errno == EMBXILADD, "");
  391 +
  392 + rc = modbus_mask_write_register(ctx, UT_REGISTERS_ADDRESS + UT_REGISTERS_NB_MAX,
  393 + 0xF2, 0x25);
  394 + printf("* modbus_mask_write_registers (max): ");
  395 + ASSERT_TRUE(rc == -1 && errno == EMBXILADD, "");
  396 +
  397 + rc = modbus_write_and_read_registers(ctx, 0, 1, tab_rp_registers, 0, 1, tab_rp_registers);
  398 + printf("* modbus_write_and_read_registers (0): ");
  399 + ASSERT_TRUE(rc == -1 && errno == EMBXILADD, "");
  400 +
  401 + rc = modbus_write_and_read_registers(ctx,
  402 + UT_REGISTERS_ADDRESS + UT_REGISTERS_NB_MAX,
  403 + UT_REGISTERS_NB, tab_rp_registers,
  404 + UT_REGISTERS_ADDRESS + UT_REGISTERS_NB_MAX,
  405 + UT_REGISTERS_NB, tab_rp_registers);
  406 + printf("* modbus_write_and_read_registers (max): ");
354 ASSERT_TRUE(rc == -1 && errno == EMBXILADD, ""); 407 ASSERT_TRUE(rc == -1 && errno == EMBXILADD, "");
355 408
356 /** TOO MANY DATA **/ 409 /** TOO MANY DATA **/