public void InvalidElementRange(string testFileName, int nodeIndex, string elementName, int startLine, int startColumn, int endLine, int endColumn) { string testXml = LoadTestFile("TestFiles", testFileName + ".xml"); TextPositions xmlPositions = new TextPositions(testXml); XmlDocumentSyntax xmlDocument = Parser.ParseText(testXml); List <XSNode> nodes = xmlDocument.GetSemanticModel(xmlPositions); Assert.NotNull(nodes); XSNode targetNode = nodes[nodeIndex]; Assert.NotNull(targetNode); Assert.IsAssignableFrom <XSElement>(targetNode); XSElement targetElement = (XSElement)targetNode; Assert.Equal(elementName, targetElement.Name); Assert.False(targetElement.IsValid, "IsValid"); Range expectedRange = new Range( start: new Position(startLine, startColumn), end: new Position(endLine, endColumn) ); Assert.Equal(expectedRange, targetElement.Range); }
void NodeRange(string testFileName, int index, int startLine, int startColumn, int endLine, int endColumn) { string testXml = LoadTestFile("TestFiles", testFileName + ".xml"); TextPositions xmlPositions = new TextPositions(testXml); XmlDocumentSyntax xmlDocument = Parser.ParseText(testXml); List <XSNode> nodes = xmlDocument.GetSemanticModel(xmlPositions); Assert.NotNull(nodes); Assert.InRange(index, 0, nodes.Count - 1); XSNode node = nodes[index]; Assert.NotNull(node); TestOutput.WriteLine("Node {0} at {1} is {2}.", index, node.Range, node.Kind ); Range expectedRange = new Range( start: new Position(startLine, startColumn), end: new Position(endLine, endColumn) ); Assert.Equal(expectedRange, node.Range); }
void NodeKind(string testFileName, int index, XSNodeKind nodeKind) { string testXml = LoadTestFile("TestFiles", testFileName + ".xml"); TextPositions xmlPositions = new TextPositions(testXml); XmlDocumentSyntax xmlDocument = Parser.ParseText(testXml); List <XSNode> nodes = xmlDocument.GetSemanticModel(xmlPositions); Assert.NotNull(nodes); Assert.InRange(index, 0, nodes.Count - 1); XSNode node = nodes[index]; Assert.NotNull(node); Assert.Equal(nodeKind, node.Kind); }
void ElementAttributesRange(string testFileName, string elementName, int startLine, int startColumn, int endLine, int endColumn) { string testXml = LoadTestFile("TestFiles", testFileName + ".xml"); TextPositions xmlPositions = new TextPositions(testXml); XmlDocumentSyntax xmlDocument = Parser.ParseText(testXml); List <XSNode> nodes = xmlDocument.GetSemanticModel(xmlPositions); Assert.NotNull(nodes); XSNode targetNode = nodes.Find(node => node.Name == elementName); Assert.NotNull(targetNode); Assert.IsAssignableFrom <XSElement>(targetNode); XSElement targetElement = (XSElement)targetNode; Range expectedRange = new Range( start: new Position(startLine, startColumn), end: new Position(endLine, endColumn) ); Assert.Equal(expectedRange, targetElement.AttributesRange); }