From f125406700785333cd14c4ed74eefaa7dd26f235 Mon Sep 17 00:00:00 2001
From: codecoffeecode <lyharris8@gmail.com>
Date: Sat, 16 May 2020 13:47:07 -0700
Subject: [PATCH] Adding unit tests for list-keymaps command (#7711)

Co-Authored-By: James Young <18669334+noroadsleft@users.noreply.github.com>
Co-Authored-By: Erovia <Erovia@users.noreply.github.com>
---
 lib/python/qmk/tests/test_cli_commands.py | 40 ++++++++++++++++-------
 1 file changed, 28 insertions(+), 12 deletions(-)

diff --git a/lib/python/qmk/tests/test_cli_commands.py b/lib/python/qmk/tests/test_cli_commands.py
index 3b4e66a211..a93587150c 100644
--- a/lib/python/qmk/tests/test_cli_commands.py
+++ b/lib/python/qmk/tests/test_cli_commands.py
@@ -50,21 +50,37 @@ def test_pyformat():
     assert 'Successfully formatted the python code' in result.stderr
 
 
-def test_list_keyboards():
-    result = check_subcommand('list-keyboards')
-    assert result.returncode == 0
-    # check to see if a known keyboard is returned
-    # this will fail if handwired/onekey/pytest is removed
-    assert 'handwired/onekey/pytest' in result.stdout
-
-
 def test_list_keymaps():
-    result = check_subcommand("list-keymaps", "-kb", "handwired/onekey/pytest")
+    result = check_subcommand('list-keymaps', '-kb', 'handwired/onekey/pytest')
     assert result.returncode == 0
-    assert "default" and "test" in result.stdout
+    assert 'default' and 'test' in result.stdout
+
+
+def test_list_keymaps_long():
+    result = check_subcommand('list-keymaps', '--keyboard', 'handwired/onekey/pytest')
+    assert result.returncode == 0
+    assert 'default' and 'test' in result.stdout
+
+
+def test_list_keymaps_kb_only():
+    result = check_subcommand('list-keymaps', '-kb', 'niu_mini')
+    assert result.returncode == 0
+    assert 'default' and 'via' in result.stdout
+
+
+def test_list_keymaps_vendor_kb():
+    result = check_subcommand('list-keymaps', '-kb', 'ai03/lunar')
+    assert result.returncode == 0
+    assert 'default' and 'via' in result.stdout
+
+
+def test_list_keymaps_vendor_kb_rev():
+    result = check_subcommand('list-keymaps', '-kb', 'kbdfans/kbd67/mkiirgb/v2')
+    assert result.returncode == 0
+    assert 'default' and 'via' in result.stdout
 
 
 def test_list_keymaps_no_keyboard_found():
-    result = check_subcommand("list-keymaps", "-kb", "asdfghjkl")
+    result = check_subcommand('list-keymaps', '-kb', 'asdfghjkl')
     assert result.returncode == 0
-    assert "does not exist" in result.stdout
+    assert 'does not exist' in result.stdout