def test_fragment_in_fragment() -> None: assert render_html(use_fragment_in_fragment()) == '<p>Hello</p>'
def test_contextmanager() -> None: with pytest.raises(TypeError): render_html(use_fragment_as_contextmanger())
def test_comment_doesnt_escape() -> None: assert render_html(comment_doesnt_escape()) == '<!-- <input> -->'
def test_nonescaping() -> None: assert render_html( nonescaping()) == '<x><script>1 < 2</script><style>p > a { }</style>'
def test_nested() -> None: assert render_html(nested_fragment()) == '<p>pre<em>infix</em>post</p>'
def test_simple_document() -> None: assert render_html(simple_document( )) == '<!doctype html><html lang="en"><head></head><body></body></html>'
def test_contextmanager() -> None: assert render_html(use_contextmanager_component()) == '<super>[3]</super>'
def test_simple1() -> None: assert render_html(simple_fragment()) == '<p>Hello</p>'
def test_double_2() -> None: with pytest.raises(InvalidHTML): render_html(use_double_component_wrong())
def test_simple_ul() -> None: assert ( render_html(use_simple_ul()) == '<ul><li><strong>1</strong></li><li><strong>2</strong></li><li><strong>3</strong></li></ul>' )
def test_double() -> None: assert render_html(use_double_component()) == '1,@2,'
def test_pass_through_errors() -> None: with pytest.raises(FileNotFoundError): render_html(pass_through_errors())
def test_invalid() -> None: with pytest.raises(InvalidHTML): render_html(use_invalid_component())
def test_attributes() -> None: assert render_html(attributes()) == '<p class="large blue"></p>'
def test_contextmanager_2() -> None: with pytest.raises(TypeError): render_html(use_component_wrong())
def test_void_children() -> None: with pytest.raises(TypeError): render_html(void_children_1()) with pytest.raises(TypeError): render_html(void_children_2())
def test_id_clashes() -> None: assert render_html(clashing_ids( )) == '<p class="aclass"><def></def><fake-tag></fake-tag></p>'
def test_empty() -> None: assert render_html(empty_fragment()) == ''
def test_void_elems() -> None: assert render_html( void_elems() ) == '<input type="submit"><link rel="stylesheet" href="/static/style.css"><br><hr>'
def test_instrumented() -> None: assert render_html(instrumented_fragment('p')) == '<p>OK</p>' assert render_html(instrumented_fragment('span')) == '<span>OK</span>' assert render_html(instrumented_fragment('title')) == '<title>OK</title>'
def test_escaping() -> None: assert render_html(escaping_strings_and_numbers( )) == '<p data-id="42"><3</p><textarea><3</textarea>'
df[indep_var][motion][dep_var] = image_path_to_link(image_path) test_sets[test_set_name] = df # Generate box-whisker plots and add to summary tables print('Generating boxplots...') for (test_set_name, motion), stats_per_method in all_statistics.items(): title = '%s: %s' % (test_set_name, motion) df = test_sets[test_set_name] if 'Boxplot' not in df.columns: df['Boxplot'] = '-' for col in independent_vars + dependent_vars + ['Runtime [ms]']: image_path = generate_boxplot(stats_per_method, col, title=title) if image_path is not None: df['Boxplot'][motion][col] = image_path_to_link(image_path) test_sets[test_set_name] = df # Remove (outer) rows in each dataframe which have no data print('Removing empty rows...') all_motions = set([t.parts[-1] for t in test_dirs]) for test_set_name, df in test_sets.items(): for m in all_motions: no_data = (df.loc[m].to_numpy().flatten() == '-').all() if no_data: df = df.drop(m, level=0) test_sets[test_set_name] = df render_html(test_sets) print('Done.') sys.exit(0)
def test_simple_comment() -> None: assert render_html(simple_comment()) == '<!-- hi -->'