summary refs log tree commit diff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/test_common/main.cpp32
-rw-r--r--tests/test_common/test_fixture.cpp8
2 files changed, 38 insertions, 2 deletions
diff --git a/tests/test_common/main.cpp b/tests/test_common/main.cpp
new file mode 100644
index 0000000000..3e4b4c0f95
--- /dev/null
+++ b/tests/test_common/main.cpp
@@ -0,0 +1,32 @@
+#include "gtest/gtest.h"
+
+extern "C" {
+#include "stdio.h"
+#include "debug.h"
+
+int8_t sendchar(uint8_t c) {
+    fprintf(stderr, "%c", c);
+    return 0;
+}
+
+__attribute__((weak)) debug_config_t debug_config = {0};
+
+void init_logging(void) {
+    print_set_sendchar(sendchar);
+
+    // Customise these values to desired behaviour
+    // debug_enable   = true;
+    // debug_matrix   = true;
+    // debug_keyboard = true;
+    // debug_mouse    = true;
+    debug_config.raw = 0xFF;
+}
+}
+
+int main(int argc, char **argv) {
+    ::testing::InitGoogleTest(&argc, argv);
+
+    init_logging();
+
+    return RUN_ALL_TESTS();
+}
\ No newline at end of file
diff --git a/tests/test_common/test_fixture.cpp b/tests/test_common/test_fixture.cpp
index 20ed838eb6..e041df7128 100644
--- a/tests/test_common/test_fixture.cpp
+++ b/tests/test_common/test_fixture.cpp
@@ -7,10 +7,10 @@
 #include "action_tapping.h"
 
 extern "C" {
+#include "debug.h"
+#include "eeconfig.h"
 #include "action_layer.h"
-}
 
-extern "C" {
 void set_time(uint32_t t);
 void advance_time(uint32_t ms);
 }
@@ -21,6 +21,10 @@ using testing::Between;
 using testing::Return;
 
 void TestFixture::SetUpTestCase() {
+    // The following is enough to bootstrap the values set in main
+    eeconfig_init_quantum();
+    eeconfig_update_debug(debug_config.raw);
+
     TestDriver driver;
     EXPECT_CALL(driver, send_keyboard_mock(_));
     keyboard_init();