diff options
author | Lars-Dominik Braun <lars@6xq.net> | 2020-11-25 14:06:36 +0100 |
---|---|---|
committer | Lars-Dominik Braun <lars@6xq.net> | 2020-11-25 14:06:36 +0100 |
commit | 8d862f25cef71ee22d6734ae2cf3f8c2f99146e7 (patch) | |
tree | 8cdc034be0ee94e1a0b4f2ee8739122278436881 /lulua/test_keyboard.py | |
parent | e85d03cf536a4cc133ce4f24f19f4feb88f1381e (diff) | |
download | lulua-8d862f25cef71ee22d6734ae2cf3f8c2f99146e7.tar.gz lulua-8d862f25cef71ee22d6734ae2cf3f8c2f99146e7.tar.bz2 lulua-8d862f25cef71ee22d6734ae2cf3f8c2f99146e7.zip |
keyboard: Move scancodes to yaml file
Also add serialization and tests.
Diffstat (limited to 'lulua/test_keyboard.py')
-rw-r--r-- | lulua/test_keyboard.py | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/lulua/test_keyboard.py b/lulua/test_keyboard.py index 7537266..d08f6d1 100644 --- a/lulua/test_keyboard.py +++ b/lulua/test_keyboard.py @@ -20,7 +20,8 @@ import pytest -from .keyboard import defaultKeyboards, Button +from .keyboard import defaultKeyboards, Button, dataDirectory +from .util import YamlLoader def test_defaults (): k = defaultKeyboards['ibmpc105'] @@ -54,6 +55,9 @@ def test_keyboard_getattr (): assert k['CD_ret'] == k.find ('CD_ret') assert k['Cr1'] != k.find ('El1') + with pytest.raises (KeyError): + k['nonexistent_button'] + def test_button_uniqname (): a = Button ('a') assert a.name == 'a' @@ -77,3 +81,15 @@ def test_button_uniqname (): d[b] = 2 assert b in d + # make sure we can only compare to Buttons + assert a != 'hello' + assert a != 1 + assert a != dict () + +def test_serialize (): + """ Make sure serialize (deserialize (x)) of keyboards is identity """ + + rawKeyboards = YamlLoader (dataDirectory, lambda x: x) + name = 'ibmpc105' + assert defaultKeyboards[name].serialize () == rawKeyboards[name] + |