Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

unit test failure with v0.8.1 on Fedora due to missing ffprobe #72

Closed
Conan-Kudo opened this issue Mar 19, 2020 · 6 comments
Closed

unit test failure with v0.8.1 on Fedora due to missing ffprobe #72

Conan-Kudo opened this issue Mar 19, 2020 · 6 comments

Comments

@Conan-Kudo
Copy link
Contributor

When trying to update appstream-generator to v0.8.1, I got this failure when running the tests:

TEST: RpmMDPackageIndex
--- stderr ---
2020-03-19T19:25:08.683 [info] hashmap.d:995:__unittest_L991_C7 Testing hash tables
core.exception.AssertError@../src/asgen/handlers/screenshothandler.d(452): Assertion failure
----------------
??:? _d_assert [0x7f7ca793c4dc]
screenshothandler.d:452 void asgen.handlers.screenshothandler.__unittest_L436_C1() [0x752a32]
??:? int core.runtime.runModuleUnitTests().__foreachbody2(object.ModuleInfo*) [0x7f7ca7944be8]
??:? int rt.minfo.moduleinfos_apply(scope int delegate(immutable(object.ModuleInfo*))).__foreachbody2(ref rt.sections_elf_shared.DSO) [0x7f7ca7971e3a]
??:? int rt.sections_elf_shared.DSO.opApply(scope int delegate(ref rt.sections_elf_shared.DSO)) [0x7f7ca7973128]
??:? int rt.minfo.moduleinfos_apply(scope int delegate(immutable(object.ModuleInfo*))) [0x7f7ca7971dcb]
??:? int object.ModuleInfo.opApply(scope int delegate(object.ModuleInfo*)) [0x7f7ca795dc0e]
??:? runModuleUnitTests [0x7f7ca7944a94]
??:? void rt.dmain2._d_run_main2(char[][], ulong, extern (C) int function(char[][])*).runAll() [0x7f7ca7968e8a]
??:? _d_run_main2 [0x7f7ca7968cce]
??:? _d_run_main [0x7f7ca7968b3d]
entrypoint.d:35 main [0x63fbfc]
??:? __libc_start_main [0x7f7ca76b3041]
??:? _start [0x63fa7d]
1/26 unittests FAILED
-------

The full test log file from Meson is here: appstream-generator-0.8.1-meson-testlog.txt

@Conan-Kudo
Copy link
Contributor Author

This looks like it's choking because ffprobe wasn't detected. This test should probably succeed with warning when ffprobe is unavailable.

@Conan-Kudo Conan-Kudo changed the title unit test failure when trying to build appstream-generator-0.8.1 on Fedora (F32/F33) unit test failure with v0.8.1 on Fedora (F32/F33) due to missing ffprobe Mar 19, 2020
@Conan-Kudo Conan-Kudo changed the title unit test failure with v0.8.1 on Fedora (F32/F33) due to missing ffprobe unit test failure with v0.8.1 on Fedora due to missing ffprobe Mar 19, 2020
@ximion
Copy link
Owner

ximion commented Mar 19, 2020

I don't think a test should implicitly be skipped... Giving a more helpful error message is something I'd like to have though.

@Conan-Kudo
Copy link
Contributor Author

The test isn't ever going to pass because Fedora doesn't have ffmpeg in its repositories. Unless you want to adjust it to use something we do have?

@ximion
Copy link
Owner

ximion commented Mar 19, 2020

Fedora doesn't have ffmpeg? Why? A ton of stuff depends on that...
asgen only uses ffprobe to read media metadata, not for any encoding matters.

@Conan-Kudo
Copy link
Contributor Author

It's always lacked FFmpeg because of the complex situation with multimedia codecs that it bundles.

@ximion
Copy link
Owner

ximion commented Mar 19, 2020

Fedora is weird - even Debian (!)*, Ubuntu and openSUSE have ffmpeg.
In any case though, this is a valid reason to make this test optional, since asgen can used without ffprobe with little functionality loss.

*with problematic codecs removed or disabled

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants