You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

31 lines
1.2 KiB

#include "../../test.h"
#include "../live-common.h"
#include <iostream>
//#test:device D400* !D457
//#test:tag D400
TEST_CASE( "sensor get_option memory leak", "[live]" )
{
// running this test with the following command:
// `valgrind --leak-check=yes --show-leak-kinds=all --track-origins=yes ./unit-tests/build/live/memory/test-sensor-option/test-live-memory-sensor-option 2>&1 | grep 'depends\|No device'`
// should print nothing!
auto devices = find_devices_by_product_line_or_exit(RS2_PRODUCT_LINE_D400);
for( auto dev : devices )
{
LOG_DEBUG( "running on " << dev.get_info( RS2_CAMERA_INFO_NAME ) );
auto depth_sens = dev.first< rs2::depth_sensor >();
// float option_value(depth_sens.get_option(RS2_OPTION_EXPOSURE));
if( !depth_sens.supports( RS2_OPTION_ENABLE_AUTO_EXPOSURE ) )
{
LOG_DEBUG( "device does not support RS2_OPTION_ENABLE_AUTO_EXPOSURE" );
continue;
}
float option_value( depth_sens.get_option( RS2_OPTION_ENABLE_AUTO_EXPOSURE ) );
REQUIRE( (option_value) ); // Using the value of option_value, if memory error exist, causes valgrind to output: "Conditional jump or move depends on uninitialised value(s)"
}
}