mirror of
https://github.com/kellyjonbrazil/jc.git
synced 2025-07-13 01:20:24 +02:00
add show_hidden and show_deprecated tests
This commit is contained in:
@ -1,3 +1,4 @@
|
||||
from copy import deepcopy
|
||||
import unittest
|
||||
from typing import Generator
|
||||
import jc.lib
|
||||
@ -74,5 +75,66 @@ class MyTests(unittest.TestCase):
|
||||
def test_lib_modname_to_cliname(self):
|
||||
self.assertEqual(jc.lib._modname_to_cliname('module_name'), 'module-name')
|
||||
|
||||
def test_lib_all_parser_info_show_deprecated(self):
|
||||
# save old state
|
||||
old_parsers = deepcopy(jc.lib.parsers)
|
||||
old_get_parser = deepcopy(jc.lib._get_parser)
|
||||
|
||||
# mock data
|
||||
class mock_parser_info:
|
||||
name = "deprecated"
|
||||
argument = "--deprecated"
|
||||
version = "1.1"
|
||||
description = "`deprecated` command parser"
|
||||
author = "nobody"
|
||||
author_email = "nobody@gmail.com"
|
||||
compatible = ["linux", "darwin"]
|
||||
magic_commands = ["deprecated"]
|
||||
deprecated = True
|
||||
|
||||
class mock_parser:
|
||||
info = mock_parser_info
|
||||
|
||||
jc.lib.parsers = ['deprecated']
|
||||
jc.lib._get_parser = lambda x: mock_parser
|
||||
result = jc.lib.all_parser_info(show_deprecated=True)
|
||||
|
||||
# reset
|
||||
jc.lib.parsers = old_parsers
|
||||
jc.lib._get_parser = old_get_parser
|
||||
|
||||
self.assertEqual(len(result), 1)
|
||||
|
||||
def test_lib_all_parser_info_show_hidden(self):
|
||||
# save old state
|
||||
old_parsers = deepcopy(jc.lib.parsers)
|
||||
old_get_parser = deepcopy(jc.lib._get_parser)
|
||||
|
||||
# mock data
|
||||
class mock_parser_info:
|
||||
name = "deprecated"
|
||||
argument = "--deprecated"
|
||||
version = "1.1"
|
||||
description = "`deprecated` command parser"
|
||||
author = "nobody"
|
||||
author_email = "nobody@gmail.com"
|
||||
compatible = ["linux", "darwin"]
|
||||
magic_commands = ["deprecated"]
|
||||
hidden = True
|
||||
|
||||
class mock_parser:
|
||||
info = mock_parser_info
|
||||
|
||||
jc.lib.parsers = ['deprecated']
|
||||
jc.lib._get_parser = lambda x: mock_parser
|
||||
result = jc.lib.all_parser_info(show_hidden=True)
|
||||
|
||||
# reset
|
||||
jc.lib.parsers = old_parsers
|
||||
jc.lib._get_parser = old_get_parser
|
||||
|
||||
self.assertEqual(len(result), 1)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
Reference in New Issue
Block a user