Closed kloczek closed 3 years ago
Your going to have to be more specific as I'm not understand the complaint here. While I see your log with failures, the tests are currently passing for this repo on the main branch. https://github.com/facelessuser/soupsieve/actions/runs/413697712
I just found that in tar ball is tox.ini and test tox suite seems is ok. Only that one executed over pytest is failing,
Oh, so when run directly with pytest we fail, but when run indirectly with tox we pass. That's weird. I always run with tox which is why I've never seen that.
If you are only maintaining tox test units that is file and feel free to close that ticket :)
Are you sure you aren't missing the lxml and/or html5lib dependency and bs4 is falling back to htmlparser? I imagine that is what is happening. Tox ensures the environment is correct for each year environment.
I'm guessing this is a local user error. I just downloaded the tar ball and ran pytest directly and everything passed.
I suspect you hadn't installed both lxml
and html5lib
➜ soupsieve-2.1 pytest .
============================= test session starts ==============================
platform darwin -- Python 3.9.0, pytest-6.1.2, py-1.9.0, pluggy-0.13.1
rootdir: /Users/facelessuser/Downloads/soupsieve-2.1, configfile: tox.ini
collected 353 items
tests/test_api.py .......................................... [ 11%]
tests/test_bs4_cases.py ..... [ 13%]
tests/test_versions.py .... [ 14%]
tests/test_extra/test_attribute.py ... [ 15%]
tests/test_extra/test_custom.py .......... [ 18%]
tests/test_extra/test_soup_contains.py .................. [ 23%]
tests/test_extra/test_soup_contains_own.py ..... [ 24%]
tests/test_level1/test_active.py . [ 24%]
tests/test_level1/test_at_rule.py . [ 25%]
tests/test_level1/test_class.py ........ [ 27%]
tests/test_level1/test_comments.py .. [ 28%]
tests/test_level1/test_descendant.py . [ 28%]
tests/test_level1/test_escapes.py . [ 28%]
tests/test_level1/test_id.py ... [ 29%]
tests/test_level1/test_link.py .. [ 30%]
tests/test_level1/test_list.py .... [ 31%]
tests/test_level1/test_pseudo_class.py .. [ 31%]
tests/test_level1/test_pseudo_element.py . [ 32%]
tests/test_level1/test_type.py ..... [ 33%]
tests/test_level1/test_visited.py . [ 33%]
tests/test_level2/test_attribute.py ........................ [ 40%]
tests/test_level2/test_child.py ..... [ 41%]
tests/test_level2/test_first_child.py . [ 42%]
tests/test_level2/test_focus.py .. [ 42%]
tests/test_level2/test_hover.py . [ 43%]
tests/test_level2/test_lang.py .. [ 43%]
tests/test_level2/test_next_sibling.py ... [ 44%]
tests/test_level2/test_universal_type.py . [ 44%]
tests/test_level3/test_attribute.py ... [ 45%]
tests/test_level3/test_checked.py . [ 45%]
tests/test_level3/test_disabled.py ....... [ 47%]
tests/test_level3/test_empty.py . [ 48%]
tests/test_level3/test_enabled.py ...... [ 49%]
tests/test_level3/test_first_of_type.py ... [ 50%]
tests/test_level3/test_last_child.py .. [ 51%]
tests/test_level3/test_last_of_type.py ... [ 52%]
tests/test_level3/test_namespace.py .............. [ 56%]
tests/test_level3/test_not.py ... [ 56%]
tests/test_level3/test_nth_child.py ...... [ 58%]
tests/test_level3/test_nth_last_child.py .. [ 59%]
tests/test_level3/test_nth_last_of_type.py .. [ 59%]
tests/test_level3/test_nth_of_type.py .. [ 60%]
tests/test_level3/test_only_child.py . [ 60%]
tests/test_level3/test_only_of_type.py . [ 60%]
tests/test_level3/test_root.py ........... [ 64%]
tests/test_level3/test_subsequent_sibling.py . [ 64%]
tests/test_level3/test_target.py .. [ 64%]
tests/test_level4/test_any_link.py .... [ 66%]
tests/test_level4/test_attribute.py ..... [ 67%]
tests/test_level4/test_current.py .... [ 68%]
tests/test_level4/test_default.py ..... [ 69%]
tests/test_level4/test_defined.py .. [ 70%]
tests/test_level4/test_dir.py ........... [ 73%]
tests/test_level4/test_focus_visible.py .. [ 74%]
tests/test_level4/test_focus_within.py .. [ 74%]
tests/test_level4/test_future.py .. [ 75%]
tests/test_level4/test_has.py .............. [ 79%]
tests/test_level4/test_host.py .. [ 79%]
tests/test_level4/test_host_context.py . [ 80%]
tests/test_level4/test_in_range.py ....... [ 82%]
tests/test_level4/test_indeterminate.py .. [ 82%]
tests/test_level4/test_is.py ........ [ 84%]
tests/test_level4/test_lang.py .................. [ 90%]
tests/test_level4/test_local_link.py .. [ 90%]
tests/test_level4/test_matches.py .. [ 91%]
tests/test_level4/test_not.py . [ 91%]
tests/test_level4/test_nth_child.py .. [ 92%]
tests/test_level4/test_optional.py .. [ 92%]
tests/test_level4/test_out_of_range.py ....... [ 94%]
tests/test_level4/test_past.py .. [ 95%]
tests/test_level4/test_paused.py .. [ 95%]
tests/test_level4/test_placeholder_shown.py . [ 96%]
tests/test_level4/test_playing.py .. [ 96%]
tests/test_level4/test_read_only.py . [ 96%]
tests/test_level4/test_read_write.py . [ 97%]
tests/test_level4/test_required.py .. [ 97%]
tests/test_level4/test_scope.py ... [ 98%]
tests/test_level4/test_target_within.py .. [ 99%]
tests/test_level4/test_user_invalid.py . [ 99%]
tests/test_level4/test_where.py .. [100%]
============================= 353 passed in 1.99s ==============================
As this "failure" is not reproducible when all expected libraries are installed, this seems to be a user error.
Additionally, I created a venv
environment to test when html5lib
and lxml
are not installed, and it worked fine and skipped tests involving lxml
and html5lib
as expected. So I can't reproduce your situation under any circumstances. I assume something isn't quite right on your system:
(venv) ➜ soupsieve-2.1 python3 -m pytest tests
============================= test session starts ==============================
platform darwin -- Python 3.9.0, pytest-6.1.2, py-1.9.0, pluggy-0.13.1
rootdir: /Users/facelessuser/Downloads/soupsieve-2.1, configfile: tox.ini
collected 353 items
tests/test_api.py .......................................... [ 11%]
tests/test_bs4_cases.py ..sss [ 13%]
tests/test_versions.py .... [ 14%]
tests/test_extra/test_attribute.py sss [ 15%]
tests/test_extra/test_custom.py .......... [ 18%]
tests/test_extra/test_soup_contains.py ...ss..s.......... [ 23%]
tests/test_extra/test_soup_contains_own.py ..s.. [ 24%]
tests/test_level1/test_active.py . [ 24%]
tests/test_level1/test_at_rule.py . [ 25%]
tests/test_level1/test_class.py .s...... [ 27%]
tests/test_level1/test_comments.py .. [ 28%]
tests/test_level1/test_descendant.py . [ 28%]
tests/test_level1/test_escapes.py . [ 28%]
tests/test_level1/test_id.py ... [ 29%]
tests/test_level1/test_link.py .s [ 30%]
tests/test_level1/test_list.py .... [ 31%]
tests/test_level1/test_pseudo_class.py .. [ 31%]
tests/test_level1/test_pseudo_element.py . [ 32%]
tests/test_level1/test_type.py ...ss [ 33%]
tests/test_level1/test_visited.py . [ 33%]
tests/test_level2/test_attribute.py ..................ss.... [ 40%]
tests/test_level2/test_child.py ..... [ 41%]
tests/test_level2/test_first_child.py . [ 42%]
tests/test_level2/test_focus.py .. [ 42%]
tests/test_level2/test_hover.py . [ 43%]
tests/test_level2/test_lang.py .. [ 43%]
tests/test_level2/test_next_sibling.py ... [ 44%]
tests/test_level2/test_universal_type.py . [ 44%]
tests/test_level3/test_attribute.py ... [ 45%]
tests/test_level3/test_checked.py . [ 45%]
tests/test_level3/test_disabled.py ss.ss.. [ 47%]
tests/test_level3/test_empty.py . [ 48%]
tests/test_level3/test_enabled.py ss.ss. [ 49%]
tests/test_level3/test_first_of_type.py ... [ 50%]
tests/test_level3/test_last_child.py .. [ 51%]
tests/test_level3/test_last_of_type.py ... [ 52%]
tests/test_level3/test_namespace.py ssssssssssssss [ 56%]
tests/test_level3/test_not.py ... [ 56%]
tests/test_level3/test_nth_child.py ...... [ 58%]
tests/test_level3/test_nth_last_child.py .. [ 59%]
tests/test_level3/test_nth_last_of_type.py .. [ 59%]
tests/test_level3/test_nth_of_type.py .. [ 60%]
tests/test_level3/test_only_child.py . [ 60%]
tests/test_level3/test_only_of_type.py . [ 60%]
tests/test_level3/test_root.py ........... [ 64%]
tests/test_level3/test_subsequent_sibling.py . [ 64%]
tests/test_level3/test_target.py .. [ 64%]
tests/test_level4/test_any_link.py .sss [ 66%]
tests/test_level4/test_attribute.py .ss.. [ 67%]
tests/test_level4/test_current.py .... [ 68%]
tests/test_level4/test_default.py ..... [ 69%]
tests/test_level4/test_defined.py .s [ 70%]
tests/test_level4/test_dir.py ....s...s.s [ 73%]
tests/test_level4/test_focus_visible.py .. [ 74%]
tests/test_level4/test_focus_within.py .. [ 74%]
tests/test_level4/test_future.py .. [ 75%]
tests/test_level4/test_has.py .............. [ 79%]
tests/test_level4/test_host.py .. [ 79%]
tests/test_level4/test_host_context.py . [ 80%]
tests/test_level4/test_in_range.py ....... [ 82%]
tests/test_level4/test_indeterminate.py .. [ 82%]
tests/test_level4/test_is.py ........ [ 84%]
tests/test_level4/test_lang.py .....ss.........ss [ 90%]
tests/test_level4/test_local_link.py .. [ 90%]
tests/test_level4/test_matches.py .. [ 91%]
tests/test_level4/test_not.py . [ 91%]
tests/test_level4/test_nth_child.py .. [ 92%]
tests/test_level4/test_optional.py .. [ 92%]
tests/test_level4/test_out_of_range.py ....... [ 94%]
tests/test_level4/test_past.py .. [ 95%]
tests/test_level4/test_paused.py .. [ 95%]
tests/test_level4/test_placeholder_shown.py . [ 96%]
tests/test_level4/test_playing.py .. [ 96%]
tests/test_level4/test_read_only.py . [ 96%]
tests/test_level4/test_read_write.py . [ 97%]
tests/test_level4/test_required.py .. [ 97%]
tests/test_level4/test_scope.py ... [ 98%]
tests/test_level4/test_target_within.py .. [ 99%]
tests/test_level4/test_user_invalid.py . [ 99%]
tests/test_level4/test_where.py .. [100%]
======================= 302 passed, 51 skipped in 1.07s ========================
Closing issue as it seems to not be reproducible.