def fake_context_on_root_node(fake_tree: XsdTree, fake_xml_doc: XmlDocument) -> XmlContext: fake_node = XmlElement() fake_node.end_tag_open_offset = 10 fake_node.end_tag_close_offset = 15 fake_node.name = fake_tree.root.name fake_context = XmlContext(fake_xml_doc, fake_tree.root, fake_node) return fake_context
def test_get_completion_at_context_inside_cdata_returns_none( self, fake_tree: XsdTree, fake_xml_doc: XmlDocument, fake_definitions_provider: DocumentDefinitionsProvider, ) -> None: fake_element = XmlCDATASection(0, 0) fake_context = XmlContext(fake_xml_doc, fake_tree.root, fake_element) fake_completion_context = CompletionContext(trigger_kind=CompletionTriggerKind.Invoked) service = XmlCompletionService(fake_tree, fake_definitions_provider) actual = service.get_completion_at_context(fake_context, fake_completion_context) assert not actual
def test_auto_close_with_slash_returns_none_when_at_cdata( self, fake_tree: XsdTree, fake_xml_doc: XmlDocument, fake_definitions_provider: DocumentDefinitionsProvider, ) -> None: service = XmlCompletionService(fake_tree, fake_definitions_provider) trigger = "/" fake_node = XmlCDATASection(0, 0) fake_node.name = fake_tree.root.name fake_context = XmlContext(fake_xml_doc, fake_tree.root, fake_node) actual = service.get_auto_close_tag(fake_context, trigger) assert not actual
def test_return_valid_attribute_value_completion_when_enum_context( self, fake_tree: XsdTree, fake_xml_doc: XmlDocument, fake_definitions_provider: DocumentDefinitionsProvider, ) -> None: fake_attr = XmlAttribute("attr", 0, 0, XmlElement()) fake_attr.set_value(None, 0, 0) fake_context = XmlContext(fake_xml_doc, fake_tree.root, fake_attr.value) service = XmlCompletionService(fake_tree, fake_definitions_provider) actual = service.get_attribute_value_completion(fake_context) assert len(actual.items) == 2
def test_get_completion_at_context_with_open_tag_trigger_returns_expected_node( self, fake_tree: XsdTree, fake_xml_doc: XmlDocument, fake_definitions_provider: DocumentDefinitionsProvider, ) -> None: fake_context = XmlContext(fake_xml_doc, fake_tree.root, XmlElement()) fake_completion_context = CompletionContext(trigger_kind=CompletionTriggerKind.TriggerCharacter, trigger_character="<") service = XmlCompletionService(fake_tree, fake_definitions_provider) actual = service.get_completion_at_context(fake_context, fake_completion_context) assert actual assert len(actual.items) == 2 assert actual.items[0].label == "child" assert actual.items[0].kind == CompletionItemKind.Class assert actual.items[1].label == "expand" assert actual.items[1].kind == CompletionItemKind.Class
def test_completion_node_reached_max_occurs_return_expected( self, fake_tree: XsdTree, fake_xml_doc: XmlDocument, fake_definitions_provider: DocumentDefinitionsProvider, ) -> None: fake_root = XmlElement() fake_root.name = fake_tree.root.name fake_root.end_tag_open_offset = 10 fake_root.end_tag_close_offset = 15 fake_child = XmlElement() fake_child.name = "child" fake_child.parent = fake_root fake_child = XmlElement() fake_child.parent = fake_root fake_context = XmlContext(fake_xml_doc, fake_tree.root, fake_root) service = XmlCompletionService(fake_tree, fake_definitions_provider) actual = service.get_node_completion(fake_context) assert len(actual.items) == 1 assert actual.items[0].label == "expand"
def fake_empty_context(fake_tree: XsdTree, fake_xml_doc: XmlDocument) -> XmlContext: fake_context = XmlContext(fake_xml_doc, fake_tree.root) return fake_context