aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/analyzer/state-diagram-5-html.py
blob: 79374b22a999b509279f882e5c88e4662476436d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# Smoketest of HTML state diagram output

from htmltest import *

import pytest

@pytest.fixture(scope='function', autouse=True)
def html_tree():
    return html_tree_from_env()

def test_state_diagram(html_tree):
    diag = get_diag_by_index(html_tree, 0)
    assert diag is not None

    path = diag.find('xhtml:div[@id="execution-path"]', ns)
    assert path is not None

    event_label = path.find('.//xhtml:span[@id="gcc-diag-0-event-0"]', ns)
    assert event_label is not None
    assert event_label.get('class') == 'event'

    assert event_label.text == '(1) here'

    state_diagram = event_label.find('xhtml:div[@class="state-diagram"]', ns)
    assert state_diagram is not None
    assert state_diagram.get('id') == 'gcc-diag-0-event-0-state-diagram'

    svg = state_diagram.find('.//svg:svg', ns)
    assert svg is not None