test_presenter_manager failing on musl (x86_64)
I'm seeing this failure when trying to build and test on Void Linux x86_64-musl. The issue exists in both 2.9.4 and the latest commit on master:
=================================== FAILURES ===================================
____________________________ test_presenter_manager ____________________________
mock_settings = <MagicMock id='140708746649536'>
@skipIf(is_macosx(), 'This test fails for an undetermined reason on macOS')
def test_presenter_manager(mock_settings):
test_file_import = SongImportTestHelper('PresentationManagerImport', 'presentationmanager')
test_file_import.setUp()
test_file_import.file_import([TEST_PATH / 'Great Is Thy Faithfulness.sng'],
test_file_import.load_external_result_data(TEST_PATH /
'Great Is Thy Faithfulness.json'))
> test_file_import.file_import([TEST_PATH / 'Amazing Grace.sng'],
test_file_import.load_external_result_data(TEST_PATH / 'Amazing Grace.json'))
tests/openlp_plugins/songs/test_presentationmanagerimport.py:42:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests/helpers/songfileimport.py:116: in file_import
assert importer.do_import() is None, 'do_import should return None when it has completed'
openlp/plugins/songs/lib/importers/presentationmanager.py:71: in do_import
root = objectify.fromstring(file_str)
src/lxml/objectify.pyx:2010: in lxml.objectify.fromstring
???
src/lxml/etree.pyx:3252: in lxml.etree.fromstring
???
src/lxml/parser.pxi:1913: in lxml.etree._parseMemoryDocument
???
src/lxml/parser.pxi:1800: in lxml.etree._parseDoc
???
src/lxml/parser.pxi:1141: in lxml.etree._BaseParser._parseDoc
???
src/lxml/parser.pxi:615: in lxml.etree._ParserContext._handleParseResultDoc
???
src/lxml/parser.pxi:725: in lxml.etree._handleParseResult
???
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> ???
E File "<string>", line 1
E lxml.etree.XMLSyntaxError: error parsing attribute name, line 1, column 4
src/lxml/parser.pxi:654: XMLSyntaxError
=============================== warnings summary ===============================
tests/openlp_core/api/test_tab.py: 95 warnings
tests/openlp_core/ui/test_icons.py: 1 warning
/usr/lib/python3.10/site-packages/qtawesome/iconic_font.py:325: DeprecationWarning: The FontAwesome 4.7 ('fa' prefix) icon set will be removed in a future release in favor of FontAwesome 6. We recommend you to move to FontAwesome 5 ('fa5*' prefix) to prevent any issues in the future
warnings.warn(
tests/openlp_plugins/alerts/test_plugin.py::test_plugin_state
/builddir/openlp-master/openlp/plugins/alerts/remote.py:58: UserWarning: The name 'v2-alert-plugin' is already registered for this blueprint. Use 'name=' to provide a unique name. This will become an error in Flask 2.1.
app.register_blueprint(v2_views, url_prefix='/api/v2/plugins/alerts')
tests/openlp_plugins/alerts/test_plugin.py::test_plugin_state
/builddir/openlp-master/openlp/plugins/alerts/remote.py:59: UserWarning: The name 'v1-alert-plugin' is already registered for this blueprint. Use 'name=' to provide a unique name. This will become an error in Flask 2.1.
app.register_blueprint(v1_views, url_prefix='/api/alert')
-- Docs: https://docs.pytest.org/en/stable/warnings.html
=========================== short test summary info ============================
FAILED tests/openlp_plugins/songs/test_presentationmanagerimport.py::test_presenter_manager
==== 1 failed, 2019 passed, 44 skipped, 1 deselected, 98 warnings in 35.00s ====
Edited by Joel Beckmeyer