2019-08-13 12:22:51 -04:00
|
|
|
""" Tests for ParserNode interface """
|
|
|
|
|
|
|
|
|
|
import unittest
|
|
|
|
|
|
2020-01-06 10:19:33 -05:00
|
|
|
from certbot_apache._internal import interfaces
|
|
|
|
|
from certbot_apache._internal import parsernode_util as util
|
2019-08-13 12:22:51 -04:00
|
|
|
|
|
|
|
|
|
2019-08-30 16:42:18 -04:00
|
|
|
class DummyParserNode(interfaces.ParserNode):
|
|
|
|
|
""" A dummy class implementing ParserNode interface """
|
2019-08-13 12:22:51 -04:00
|
|
|
|
2019-08-30 16:42:18 -04:00
|
|
|
def __init__(self, **kwargs):
|
|
|
|
|
"""
|
|
|
|
|
Initializes the ParserNode instance.
|
|
|
|
|
"""
|
2019-09-09 15:09:09 -04:00
|
|
|
ancestor, dirty, filepath, metadata = util.parsernode_kwargs(kwargs)
|
2019-08-30 16:42:18 -04:00
|
|
|
self.ancestor = ancestor
|
|
|
|
|
self.dirty = dirty
|
|
|
|
|
self.filepath = filepath
|
2019-09-09 15:09:09 -04:00
|
|
|
self.metadata = metadata
|
2021-04-08 16:04:51 -04:00
|
|
|
super().__init__(**kwargs)
|
2019-08-13 12:22:51 -04:00
|
|
|
|
|
|
|
|
def save(self, msg): # pragma: no cover
|
2019-08-30 16:42:18 -04:00
|
|
|
"""Save"""
|
2019-08-13 12:22:51 -04:00
|
|
|
pass
|
|
|
|
|
|
2019-12-02 09:25:39 -05:00
|
|
|
def find_ancestors(self, name): # pragma: no cover
|
|
|
|
|
""" Find ancestors """
|
|
|
|
|
return []
|
|
|
|
|
|
2019-08-13 12:22:51 -04:00
|
|
|
|
2019-08-30 16:42:18 -04:00
|
|
|
class DummyCommentNode(DummyParserNode):
|
|
|
|
|
""" A dummy class implementing CommentNode interface """
|
|
|
|
|
|
|
|
|
|
def __init__(self, **kwargs):
|
|
|
|
|
"""
|
|
|
|
|
Initializes the CommentNode instance and sets its instance variables.
|
|
|
|
|
"""
|
|
|
|
|
comment, kwargs = util.commentnode_kwargs(kwargs)
|
|
|
|
|
self.comment = comment
|
2021-04-08 16:04:51 -04:00
|
|
|
super().__init__(**kwargs)
|
2019-08-30 16:42:18 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
class DummyDirectiveNode(DummyParserNode):
|
2019-08-13 12:22:51 -04:00
|
|
|
""" A dummy class implementing DirectiveNode interface """
|
|
|
|
|
|
2019-08-30 16:42:18 -04:00
|
|
|
# pylint: disable=too-many-arguments
|
|
|
|
|
def __init__(self, **kwargs):
|
|
|
|
|
"""
|
|
|
|
|
Initializes the DirectiveNode instance and sets its instance variables.
|
|
|
|
|
"""
|
|
|
|
|
name, parameters, enabled, kwargs = util.directivenode_kwargs(kwargs)
|
|
|
|
|
self.name = name
|
|
|
|
|
self.parameters = parameters
|
|
|
|
|
self.enabled = enabled
|
|
|
|
|
|
2021-04-08 16:04:51 -04:00
|
|
|
super().__init__(**kwargs)
|
2019-08-13 12:22:51 -04:00
|
|
|
|
|
|
|
|
def set_parameters(self, parameters): # pragma: no cover
|
2019-08-30 16:42:18 -04:00
|
|
|
"""Set parameters"""
|
2019-08-13 12:22:51 -04:00
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
|
2019-08-30 16:42:18 -04:00
|
|
|
class DummyBlockNode(DummyDirectiveNode):
|
2019-08-13 12:22:51 -04:00
|
|
|
""" A dummy class implementing BlockNode interface """
|
|
|
|
|
|
|
|
|
|
def add_child_block(self, name, parameters=None, position=None): # pragma: no cover
|
2019-08-30 16:42:18 -04:00
|
|
|
"""Add child block"""
|
2019-08-13 12:22:51 -04:00
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
def add_child_directive(self, name, parameters=None, position=None): # pragma: no cover
|
2019-08-30 16:42:18 -04:00
|
|
|
"""Add child directive"""
|
2019-08-13 12:22:51 -04:00
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
def add_child_comment(self, comment="", position=None): # pragma: no cover
|
2019-08-30 16:42:18 -04:00
|
|
|
"""Add child comment"""
|
2019-08-13 12:22:51 -04:00
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
def find_blocks(self, name, exclude=True): # pragma: no cover
|
2019-08-30 16:42:18 -04:00
|
|
|
"""Find blocks"""
|
2019-08-13 12:22:51 -04:00
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
def find_directives(self, name, exclude=True): # pragma: no cover
|
2019-08-30 16:42:18 -04:00
|
|
|
"""Find directives"""
|
2019-08-13 12:22:51 -04:00
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
def find_comments(self, comment, exact=False): # pragma: no cover
|
2019-08-30 16:42:18 -04:00
|
|
|
"""Find comments"""
|
2019-08-13 12:22:51 -04:00
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
def delete_child(self, child): # pragma: no cover
|
2019-08-30 16:42:18 -04:00
|
|
|
"""Delete child"""
|
2019-08-13 12:22:51 -04:00
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
def unsaved_files(self): # pragma: no cover
|
2019-08-30 16:42:18 -04:00
|
|
|
"""Unsaved files"""
|
2019-08-13 12:22:51 -04:00
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
|
2019-08-30 16:42:18 -04:00
|
|
|
interfaces.CommentNode.register(DummyCommentNode)
|
|
|
|
|
interfaces.DirectiveNode.register(DummyDirectiveNode)
|
|
|
|
|
interfaces.BlockNode.register(DummyBlockNode)
|
|
|
|
|
|
2019-08-13 12:22:51 -04:00
|
|
|
class ParserNodeTest(unittest.TestCase):
|
|
|
|
|
"""Dummy placeholder test case for ParserNode interfaces"""
|
|
|
|
|
|
|
|
|
|
def test_dummy(self):
|
2019-08-30 16:42:18 -04:00
|
|
|
dummyblock = DummyBlockNode(
|
|
|
|
|
name="None",
|
|
|
|
|
parameters=(),
|
|
|
|
|
ancestor=None,
|
|
|
|
|
dirty=False,
|
|
|
|
|
filepath="/some/random/path"
|
|
|
|
|
)
|
|
|
|
|
dummydirective = DummyDirectiveNode(
|
|
|
|
|
name="Name",
|
|
|
|
|
ancestor=None,
|
|
|
|
|
filepath="/another/path"
|
|
|
|
|
)
|
|
|
|
|
dummycomment = DummyCommentNode(
|
|
|
|
|
comment="Comment",
|
|
|
|
|
ancestor=dummyblock,
|
|
|
|
|
filepath="/some/file"
|
|
|
|
|
)
|
2019-08-13 12:22:51 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
if __name__ == "__main__":
|
|
|
|
|
unittest.main() # pragma: no cover
|