From 370d0644f6b50f9f9296a81196110beab491fc62 Mon Sep 17 00:00:00 2001 From: Brendan Bartels <bbartels@iastate.edu> Date: Sat, 22 Apr 2017 19:29:54 -0500 Subject: [PATCH] quad: fix functional tests for new uart on virtual quad --- quad/Makefile | 2 +- quad/scripts/tests/test_memory_integrity.rb | 2 +- quad/src/virt_quad/hw_impl_unix.c | 6 ++++++ quad/src/virt_quad/hw_impl_unix.h | 1 + quad/src/virt_quad/main.c | 1 + 5 files changed, 10 insertions(+), 2 deletions(-) diff --git a/quad/Makefile b/quad/Makefile index 0a92c686a..8f71d2be8 100644 --- a/quad/Makefile +++ b/quad/Makefile @@ -38,8 +38,8 @@ test: all $(MAKE) -C src/queue test $(MAKE) -C src/computation_graph test $(MAKE) -C src/quad_app test - ruby scripts/tests/test_safety_checks.rb ruby scripts/tests/test_memory_integrity.rb + ruby scripts/tests/test_safety_checks.rb ruby scripts/tests/test_communication.rb clean: diff --git a/quad/scripts/tests/test_memory_integrity.rb b/quad/scripts/tests/test_memory_integrity.rb index adb8f9190..87cbc83b8 100644 --- a/quad/scripts/tests/test_memory_integrity.rb +++ b/quad/scripts/tests/test_memory_integrity.rb @@ -14,7 +14,7 @@ Dir.chdir(bin_dir) puts("Firing up the quad...") # Start virtual quad -quad = Process.spawn("valgrind --leak-check=full --log-file=./valgrind.out ./virt-quad start") +quad = Process.spawn("valgrind -v --leak-check=full --log-file=./valgrind.out ./virt-quad start") sleep 1.5 diff --git a/quad/src/virt_quad/hw_impl_unix.c b/quad/src/virt_quad/hw_impl_unix.c index d3607f17e..ab1704ca7 100644 --- a/quad/src/virt_quad/hw_impl_unix.c +++ b/quad/src/virt_quad/hw_impl_unix.c @@ -9,6 +9,12 @@ struct UARTDriver create_unix_uart() { return uart; } +struct CommDriver create_unix_comm(struct UARTDriver *uart) { + struct CommDriver comm; + comm.uart = uart; + return comm; +} + struct MotorDriver create_unix_motors() { struct MotorDriver motors; motors.state = NULL; diff --git a/quad/src/virt_quad/hw_impl_unix.h b/quad/src/virt_quad/hw_impl_unix.h index b368f3fb5..3ec22683d 100644 --- a/quad/src/virt_quad/hw_impl_unix.h +++ b/quad/src/virt_quad/hw_impl_unix.h @@ -78,6 +78,7 @@ int unix_optical_flow_reset(struct OpticalFlowDriver *self, struct px4flow *of); int unix_optical_flow_read(struct OpticalFlowDriver *self, struct px4flow *of); struct UARTDriver create_unix_uart(); +struct CommDriver create_unix_comm(struct UARTDriver *uart); struct MotorDriver create_unix_motors(); struct RCReceiverDriver create_unix_rc_receiver(); struct I2CDriver create_unix_i2c(); diff --git a/quad/src/virt_quad/main.c b/quad/src/virt_quad/main.c index 413c708fb..0d9620db8 100644 --- a/quad/src/virt_quad/main.c +++ b/quad/src/virt_quad/main.c @@ -36,6 +36,7 @@ int setup_hardware(hardware_t *hardware) { hardware->rc_receiver = create_unix_rc_receiver(); hardware->motors = create_unix_motors(); hardware->uart_0 = create_unix_uart(); + hardware->comm = create_unix_comm(&hardware->uart_0); hardware->global_timer = create_unix_global_timer(); hardware->axi_timer = create_unix_axi_timer(); hardware->mio7_led = create_unix_mio7_led(); -- GitLab