summaryrefslogtreecommitdiffstats
path: root/tests/basic
diff options
context:
space:
mode:
authorFred Sundvik <fsundvik@gmail.com>2017-06-16 23:50:44 +0300
committerFred Sundvik <fsundvik@gmail.com>2017-06-18 21:22:22 +0300
commit3bb0586acc6472380365d78ee81a332aca468239 (patch)
treed8b4e194d9f39216e53e9aaa4b944679dfa567f3 /tests/basic
parent617578399cf1a0fff70ceeb21d63a06524c801a3 (diff)
Add a couple of basic tests and implement driver mock
Diffstat (limited to 'tests/basic')
-rw-r--r--tests/basic/test.cpp (renamed from tests/basic/test.c)26
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/basic/test.c b/tests/basic/test.cpp
index 2afb4d6a96..ce9a0cd726 100644
--- a/tests/basic/test.c
+++ b/tests/basic/test.cpp
@@ -14,7 +14,16 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
+#include "gtest/gtest.h"
+#include "gmock/gmock.h"
+
#include "quantum.h"
+#include "keyboard.h"
+#include "test_driver.h"
+#include "test_matrix.h"
+
+using testing::_;
+using testing::Return;
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = {
@@ -22,3 +31,20 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
{KC_C, KC_D}
},
};
+
+TEST(Basic, SendKeyboardIsNotCalledWhenNoKeyIsPressed) {
+ keyboard_init();
+ TestDriver driver;
+ EXPECT_CALL(driver, keyboard_leds_mock()).WillRepeatedly(Return(0));
+ EXPECT_CALL(driver, send_keyboard_mock(_)).Times(0);
+ keyboard_task();
+}
+
+TEST(Basic, SendKeyboardIsCalledWhenAKeyIsPressed) {
+ keyboard_init();
+ TestDriver driver;
+ press_key(0, 0);
+ EXPECT_CALL(driver, keyboard_leds_mock()).WillRepeatedly(Return(0));
+ EXPECT_CALL(driver, send_keyboard_mock(_));
+ keyboard_task();
+}