mirror of
https://github.com/betaflight/betaflight.git
synced 2025-07-16 12:55:19 +03:00
Fix all warnings when compiling unit tests.
Use C++11 for the C++ unit test code to make the tests easier to read. Previously we were using a 17 year old standard (!) (g++98) GoogleTest is compiled with some additional flags to avoid some specific warnings. Consider enabling the warnings when upgrading GoogleTest. See https://code.google.com/p/googletest/issues/detail?id=433 Closes #941
This commit is contained in:
parent
0df22f8049
commit
704dcf46ba
3 changed files with 35 additions and 50 deletions
|
@ -254,6 +254,13 @@ serialPort_t *openSerialPort(
|
||||||
portMode_t mode,
|
portMode_t mode,
|
||||||
portOptions_t options)
|
portOptions_t options)
|
||||||
{
|
{
|
||||||
|
#if (!defined(USE_VCP) && !defined(USE_USART1) && !defined(USE_USART2) && !defined(USE_USART3) && !defined(USE_SOFTSERIAL1) && !defined(USE_SOFTSERIAL1))
|
||||||
|
UNUSED(callback);
|
||||||
|
UNUSED(baudRate);
|
||||||
|
UNUSED(mode);
|
||||||
|
UNUSED(options);
|
||||||
|
#endif
|
||||||
|
|
||||||
serialPortUsage_t *serialPortUsage = findSerialPortUsageByIdentifier(identifier);
|
serialPortUsage_t *serialPortUsage = findSerialPortUsageByIdentifier(identifier);
|
||||||
if (!serialPortUsage || serialPortUsage->function != FUNCTION_NONE) {
|
if (!serialPortUsage || serialPortUsage->function != FUNCTION_NONE) {
|
||||||
// not available / already in use
|
// not available / already in use
|
||||||
|
|
|
@ -27,7 +27,6 @@ COMMON_FLAGS = \
|
||||||
-g \
|
-g \
|
||||||
-Wall \
|
-Wall \
|
||||||
-Wextra \
|
-Wextra \
|
||||||
-pthread \
|
|
||||||
-ggdb3 \
|
-ggdb3 \
|
||||||
-O0 \
|
-O0 \
|
||||||
-DUNIT_TEST \
|
-DUNIT_TEST \
|
||||||
|
@ -39,7 +38,7 @@ C_FLAGS = $(COMMON_FLAGS) \
|
||||||
|
|
||||||
# Flags passed to the C++ compiler.
|
# Flags passed to the C++ compiler.
|
||||||
CXX_FLAGS = $(COMMON_FLAGS) \
|
CXX_FLAGS = $(COMMON_FLAGS) \
|
||||||
-std=gnu++98
|
-std=c++11
|
||||||
|
|
||||||
# All tests produced by this Makefile. Remember to add new tests you
|
# All tests produced by this Makefile. Remember to add new tests you
|
||||||
# created to the list.
|
# created to the list.
|
||||||
|
@ -83,7 +82,7 @@ GTEST_SRCS_ = $(GTEST_DIR)/src/*.cc $(GTEST_DIR)/inc/gtest/*.h $(GTEST_HEADERS)
|
||||||
# compiles fast and for ordinary users its source rarely changes.
|
# compiles fast and for ordinary users its source rarely changes.
|
||||||
$(OBJECT_DIR)/gtest-all.o : $(GTEST_SRCS_)
|
$(OBJECT_DIR)/gtest-all.o : $(GTEST_SRCS_)
|
||||||
@mkdir -p $(dir $@)
|
@mkdir -p $(dir $@)
|
||||||
$(CXX) $(CXX_FLAGS) -I$(GTEST_DIR) -c \
|
$(CXX) $(CXX_FLAGS) -I$(GTEST_DIR) -Wno-missing-field-initializers -Wno-unused-const-variable -c \
|
||||||
$(GTEST_DIR)/src/gtest-all.cc -o $@
|
$(GTEST_DIR)/src/gtest-all.cc -o $@
|
||||||
|
|
||||||
$(OBJECT_DIR)/gtest_main.o : $(GTEST_SRCS_)
|
$(OBJECT_DIR)/gtest_main.o : $(GTEST_SRCS_)
|
||||||
|
@ -134,7 +133,7 @@ battery_unittest : \
|
||||||
$(OBJECT_DIR)/battery_unittest.o \
|
$(OBJECT_DIR)/battery_unittest.o \
|
||||||
$(OBJECT_DIR)/gtest_main.a
|
$(OBJECT_DIR)/gtest_main.a
|
||||||
|
|
||||||
$(CXX) $(CXX_FLAGS) -lpthread $^ -o $(OBJECT_DIR)/$@
|
$(CXX) $(CXX_FLAGS) $^ -o $(OBJECT_DIR)/$@
|
||||||
|
|
||||||
$(OBJECT_DIR)/common/encoding.o : $(USER_DIR)/common/encoding.c $(USER_DIR)/common/encoding.h $(GTEST_HEADERS)
|
$(OBJECT_DIR)/common/encoding.o : $(USER_DIR)/common/encoding.c $(USER_DIR)/common/encoding.h $(GTEST_HEADERS)
|
||||||
@mkdir -p $(dir $@)
|
@mkdir -p $(dir $@)
|
||||||
|
@ -153,7 +152,7 @@ encoding_unittest : \
|
||||||
$(OBJECT_DIR)/encoding_unittest.o \
|
$(OBJECT_DIR)/encoding_unittest.o \
|
||||||
$(OBJECT_DIR)/gtest_main.a
|
$(OBJECT_DIR)/gtest_main.a
|
||||||
|
|
||||||
$(CXX) $(CXX_FLAGS) -lpthread $^ -o $(OBJECT_DIR)/$@
|
$(CXX) $(CXX_FLAGS) $^ -o $(OBJECT_DIR)/$@
|
||||||
|
|
||||||
$(OBJECT_DIR)/flight/imu.o : \
|
$(OBJECT_DIR)/flight/imu.o : \
|
||||||
$(USER_DIR)/flight/imu.c \
|
$(USER_DIR)/flight/imu.c \
|
||||||
|
@ -178,7 +177,7 @@ flight_imu_unittest : \
|
||||||
$(OBJECT_DIR)/common/maths.o \
|
$(OBJECT_DIR)/common/maths.o \
|
||||||
$(OBJECT_DIR)/gtest_main.a
|
$(OBJECT_DIR)/gtest_main.a
|
||||||
|
|
||||||
$(CXX) $(CXX_FLAGS) -lpthread $^ -o $(OBJECT_DIR)/$@
|
$(CXX) $(CXX_FLAGS) $^ -o $(OBJECT_DIR)/$@
|
||||||
|
|
||||||
$(OBJECT_DIR)/maths_unittest.o : \
|
$(OBJECT_DIR)/maths_unittest.o : \
|
||||||
$(TEST_DIR)/maths_unittest.cc \
|
$(TEST_DIR)/maths_unittest.cc \
|
||||||
|
@ -192,7 +191,7 @@ maths_unittest : \
|
||||||
$(OBJECT_DIR)/common/maths.o \
|
$(OBJECT_DIR)/common/maths.o \
|
||||||
$(OBJECT_DIR)/gtest_main.a
|
$(OBJECT_DIR)/gtest_main.a
|
||||||
|
|
||||||
$(CXX) $(CXX_FLAGS) -lpthread $^ -o $(OBJECT_DIR)/$@
|
$(CXX) $(CXX_FLAGS) $^ -o $(OBJECT_DIR)/$@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -217,7 +216,7 @@ altitude_hold_unittest : \
|
||||||
$(OBJECT_DIR)/altitude_hold_unittest.o \
|
$(OBJECT_DIR)/altitude_hold_unittest.o \
|
||||||
$(OBJECT_DIR)/gtest_main.a
|
$(OBJECT_DIR)/gtest_main.a
|
||||||
|
|
||||||
$(CXX) $(CXX_FLAGS) -lpthread $^ -o $(OBJECT_DIR)/$@
|
$(CXX) $(CXX_FLAGS) $^ -o $(OBJECT_DIR)/$@
|
||||||
|
|
||||||
|
|
||||||
$(OBJECT_DIR)/flight/gps_conversion.o : \
|
$(OBJECT_DIR)/flight/gps_conversion.o : \
|
||||||
|
@ -241,7 +240,7 @@ gps_conversion_unittest : \
|
||||||
$(OBJECT_DIR)/gps_conversion_unittest.o \
|
$(OBJECT_DIR)/gps_conversion_unittest.o \
|
||||||
$(OBJECT_DIR)/gtest_main.a
|
$(OBJECT_DIR)/gtest_main.a
|
||||||
|
|
||||||
$(CXX) $(CXX_FLAGS) -lpthread $^ -o $(OBJECT_DIR)/$@
|
$(CXX) $(CXX_FLAGS) $^ -o $(OBJECT_DIR)/$@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -267,7 +266,7 @@ telemetry_hott_unittest : \
|
||||||
$(OBJECT_DIR)/flight/gps_conversion.o \
|
$(OBJECT_DIR)/flight/gps_conversion.o \
|
||||||
$(OBJECT_DIR)/gtest_main.a
|
$(OBJECT_DIR)/gtest_main.a
|
||||||
|
|
||||||
$(CXX) $(CXX_FLAGS) -lpthread $^ -o $(OBJECT_DIR)/$@
|
$(CXX) $(CXX_FLAGS) $^ -o $(OBJECT_DIR)/$@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -293,7 +292,7 @@ rc_controls_unittest : \
|
||||||
$(OBJECT_DIR)/rc_controls_unittest.o \
|
$(OBJECT_DIR)/rc_controls_unittest.o \
|
||||||
$(OBJECT_DIR)/gtest_main.a
|
$(OBJECT_DIR)/gtest_main.a
|
||||||
|
|
||||||
$(CXX) $(CXX_FLAGS) -lpthread $^ -o $(OBJECT_DIR)/$@
|
$(CXX) $(CXX_FLAGS) $^ -o $(OBJECT_DIR)/$@
|
||||||
|
|
||||||
|
|
||||||
$(OBJECT_DIR)/io/ledstrip.o : \
|
$(OBJECT_DIR)/io/ledstrip.o : \
|
||||||
|
@ -317,7 +316,7 @@ ledstrip_unittest : \
|
||||||
$(OBJECT_DIR)/ledstrip_unittest.o \
|
$(OBJECT_DIR)/ledstrip_unittest.o \
|
||||||
$(OBJECT_DIR)/gtest_main.a
|
$(OBJECT_DIR)/gtest_main.a
|
||||||
|
|
||||||
$(CXX) $(CXX_FLAGS) -lpthread $^ -o $(OBJECT_DIR)/$@
|
$(CXX) $(CXX_FLAGS) $^ -o $(OBJECT_DIR)/$@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -342,7 +341,7 @@ ws2811_unittest : \
|
||||||
$(OBJECT_DIR)/ws2811_unittest.o \
|
$(OBJECT_DIR)/ws2811_unittest.o \
|
||||||
$(OBJECT_DIR)/gtest_main.a
|
$(OBJECT_DIR)/gtest_main.a
|
||||||
|
|
||||||
$(CXX) $(CXX_FLAGS) -lpthread $^ -o $(OBJECT_DIR)/$@
|
$(CXX) $(CXX_FLAGS) $^ -o $(OBJECT_DIR)/$@
|
||||||
|
|
||||||
|
|
||||||
$(OBJECT_DIR)/flight/lowpass.o : \
|
$(OBJECT_DIR)/flight/lowpass.o : \
|
||||||
|
@ -366,7 +365,7 @@ lowpass_unittest : \
|
||||||
$(OBJECT_DIR)/lowpass_unittest.o \
|
$(OBJECT_DIR)/lowpass_unittest.o \
|
||||||
$(OBJECT_DIR)/gtest_main.a
|
$(OBJECT_DIR)/gtest_main.a
|
||||||
|
|
||||||
$(CXX) $(CXX_FLAGS) -lpthread $^ -o $(OBJECT_DIR)/$@
|
$(CXX) $(CXX_FLAGS) $^ -o $(OBJECT_DIR)/$@
|
||||||
|
|
||||||
$(OBJECT_DIR)/flight/mixer.o : \
|
$(OBJECT_DIR)/flight/mixer.o : \
|
||||||
$(USER_DIR)/flight/mixer.c \
|
$(USER_DIR)/flight/mixer.c \
|
||||||
|
@ -390,7 +389,7 @@ flight_mixer_unittest : \
|
||||||
$(OBJECT_DIR)/common/maths.o \
|
$(OBJECT_DIR)/common/maths.o \
|
||||||
$(OBJECT_DIR)/gtest_main.a
|
$(OBJECT_DIR)/gtest_main.a
|
||||||
|
|
||||||
$(CXX) $(CXX_FLAGS) -lpthread $^ -o $(OBJECT_DIR)/$@
|
$(CXX) $(CXX_FLAGS) $^ -o $(OBJECT_DIR)/$@
|
||||||
|
|
||||||
$(OBJECT_DIR)/flight/failsafe.o : \
|
$(OBJECT_DIR)/flight/failsafe.o : \
|
||||||
$(USER_DIR)/flight/failsafe.c \
|
$(USER_DIR)/flight/failsafe.c \
|
||||||
|
@ -414,7 +413,7 @@ flight_failsafe_unittest : \
|
||||||
$(OBJECT_DIR)/common/maths.o \
|
$(OBJECT_DIR)/common/maths.o \
|
||||||
$(OBJECT_DIR)/gtest_main.a
|
$(OBJECT_DIR)/gtest_main.a
|
||||||
|
|
||||||
$(CXX) $(CXX_FLAGS) -lpthread $^ -o $(OBJECT_DIR)/$@
|
$(CXX) $(CXX_FLAGS) $^ -o $(OBJECT_DIR)/$@
|
||||||
|
|
||||||
$(OBJECT_DIR)/io/serial.o : \
|
$(OBJECT_DIR)/io/serial.o : \
|
||||||
$(USER_DIR)/io/serial.c \
|
$(USER_DIR)/io/serial.c \
|
||||||
|
@ -437,7 +436,7 @@ io_serial_unittest : \
|
||||||
$(OBJECT_DIR)/io_serial_unittest.o \
|
$(OBJECT_DIR)/io_serial_unittest.o \
|
||||||
$(OBJECT_DIR)/gtest_main.a
|
$(OBJECT_DIR)/gtest_main.a
|
||||||
|
|
||||||
$(CXX) $(CXX_FLAGS) -lpthread $^ -o $(OBJECT_DIR)/$@
|
$(CXX) $(CXX_FLAGS) $^ -o $(OBJECT_DIR)/$@
|
||||||
|
|
||||||
$(OBJECT_DIR)/rx/rx.o : \
|
$(OBJECT_DIR)/rx/rx.o : \
|
||||||
$(USER_DIR)/rx/rx.c \
|
$(USER_DIR)/rx/rx.c \
|
||||||
|
@ -461,7 +460,7 @@ rx_rx_unittest : \
|
||||||
$(OBJECT_DIR)/common/maths.o \
|
$(OBJECT_DIR)/common/maths.o \
|
||||||
$(OBJECT_DIR)/gtest_main.a
|
$(OBJECT_DIR)/gtest_main.a
|
||||||
|
|
||||||
$(CXX) $(CXX_FLAGS) -lpthread $^ -o $(OBJECT_DIR)/$@
|
$(CXX) $(CXX_FLAGS) $^ -o $(OBJECT_DIR)/$@
|
||||||
|
|
||||||
test: $(TESTS)
|
test: $(TESTS)
|
||||||
set -e && for test in $(TESTS) ; do \
|
set -e && for test in $(TESTS) ; do \
|
||||||
|
|
|
@ -236,6 +236,17 @@ static const adjustmentConfig_t rateAdjustmentConfig = {
|
||||||
|
|
||||||
class RcControlsAdjustmentsTest : public ::testing::Test {
|
class RcControlsAdjustmentsTest : public ::testing::Test {
|
||||||
protected:
|
protected:
|
||||||
|
controlRateConfig_t controlRateConfig = {
|
||||||
|
.rcRate8 = 90,
|
||||||
|
.rcExpo8 = 0,
|
||||||
|
.thrMid8 = 0,
|
||||||
|
.thrExpo8 = 0,
|
||||||
|
.rcYawExpo8 = 0,
|
||||||
|
.rates = {0,0,0},
|
||||||
|
.dynThrPID = 0,
|
||||||
|
.tpa_breakpoint = 0
|
||||||
|
};
|
||||||
|
|
||||||
virtual void SetUp() {
|
virtual void SetUp() {
|
||||||
adjustmentStateMask = 0;
|
adjustmentStateMask = 0;
|
||||||
memset(&adjustmentStates, 0, sizeof(adjustmentStates));
|
memset(&adjustmentStates, 0, sizeof(adjustmentStates));
|
||||||
|
@ -250,17 +261,6 @@ protected:
|
||||||
TEST_F(RcControlsAdjustmentsTest, processRcAdjustmentsSticksInMiddle)
|
TEST_F(RcControlsAdjustmentsTest, processRcAdjustmentsSticksInMiddle)
|
||||||
{
|
{
|
||||||
// given
|
// given
|
||||||
controlRateConfig_t controlRateConfig = {
|
|
||||||
.rcRate8 = 90,
|
|
||||||
.rcExpo8 = 0,
|
|
||||||
.thrMid8 = 0,
|
|
||||||
.thrExpo8 = 0,
|
|
||||||
.rates = {0,0,0},
|
|
||||||
.dynThrPID = 0,
|
|
||||||
.tpa_breakpoint = 0
|
|
||||||
};
|
|
||||||
|
|
||||||
// and
|
|
||||||
configureAdjustment(0, AUX3 - NON_AUX_CHANNEL_COUNT, &rateAdjustmentConfig);
|
configureAdjustment(0, AUX3 - NON_AUX_CHANNEL_COUNT, &rateAdjustmentConfig);
|
||||||
|
|
||||||
// and
|
// and
|
||||||
|
@ -286,17 +286,6 @@ TEST_F(RcControlsAdjustmentsTest, processRcAdjustmentsSticksInMiddle)
|
||||||
TEST_F(RcControlsAdjustmentsTest, processRcAdjustmentsWithRcRateFunctionSwitchUp)
|
TEST_F(RcControlsAdjustmentsTest, processRcAdjustmentsWithRcRateFunctionSwitchUp)
|
||||||
{
|
{
|
||||||
// given
|
// given
|
||||||
controlRateConfig_t controlRateConfig = {
|
|
||||||
.rcRate8 = 90,
|
|
||||||
.rcExpo8 = 0,
|
|
||||||
.thrMid8 = 0,
|
|
||||||
.thrExpo8 = 0,
|
|
||||||
.rates = {0,0,0},
|
|
||||||
.dynThrPID = 0,
|
|
||||||
.tpa_breakpoint = 0
|
|
||||||
};
|
|
||||||
|
|
||||||
// and
|
|
||||||
configureAdjustment(0, AUX3 - NON_AUX_CHANNEL_COUNT, &rateAdjustmentConfig);
|
configureAdjustment(0, AUX3 - NON_AUX_CHANNEL_COUNT, &rateAdjustmentConfig);
|
||||||
|
|
||||||
// and
|
// and
|
||||||
|
@ -444,16 +433,6 @@ static const adjustmentConfig_t rateProfileAdjustmentConfig = {
|
||||||
TEST_F(RcControlsAdjustmentsTest, processRcRateProfileAdjustments)
|
TEST_F(RcControlsAdjustmentsTest, processRcRateProfileAdjustments)
|
||||||
{
|
{
|
||||||
// given
|
// given
|
||||||
controlRateConfig_t controlRateConfig = {
|
|
||||||
.rcRate8 = 90,
|
|
||||||
.rcExpo8 = 0,
|
|
||||||
.thrMid8 = 0,
|
|
||||||
.thrExpo8 = 0,
|
|
||||||
.rates = {0,0,0},
|
|
||||||
.dynThrPID = 0,
|
|
||||||
.tpa_breakpoint = 0
|
|
||||||
};
|
|
||||||
|
|
||||||
int adjustmentIndex = 3;
|
int adjustmentIndex = 3;
|
||||||
configureAdjustment(adjustmentIndex, AUX4 - NON_AUX_CHANNEL_COUNT, &rateProfileAdjustmentConfig);
|
configureAdjustment(adjustmentIndex, AUX4 - NON_AUX_CHANNEL_COUNT, &rateProfileAdjustmentConfig);
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue