public void GetClassificationSpans_SingleTag_ReturnsSingleClassificationSpan()
        {
            // Arrange
            var snapshot = new SnapshotStub("%h1".Split('\n'));
            var snapshotSpan = new SnapshotSpan(snapshot, new Span(0, 3));

            // Act
            var spans = _classifier.GetClassificationSpans(snapshotSpan);

            // Assert
            Assert.That(spans.Count, Is.EqualTo(1));
        }
        public void GetClassificationSpans_ComplexTag_ReturnsCorrectNumberOfClassificationSpans()
        {
            // Arrange
            var snapshot = new SnapshotStub("%h1#id.class(a=b c='d')".Split('\n'));
            var snapshotSpan = new SnapshotSpan(snapshot, new Span(0, snapshot.Length));

            // Act
            var spans = _classifier.GetClassificationSpans(snapshotSpan);

            // Assert
            Assert.That(spans.Count, Is.EqualTo(9));
        }
        public void GetClassificationSpans_MultiLineTag_ReturnsSecondLineCorrectly()
        {
            // Arrange
            var snapshot = new SnapshotStub("%h1\n%h2".Split('\n'));
            var snapshotSpan = new SnapshotSpan(snapshot, new Span(5, 3));

            // Act
            var spans = _classifier.GetClassificationSpans(snapshotSpan);

            // Assert
            Assert.That(spans.Count, Is.EqualTo(1));
            var span = spans[0];

            Assert.That(span.Span.Start.Position, Is.EqualTo(5));
            Assert.That(span.Span.Length, Is.EqualTo(3));
        }