For majority of packages that wraps javascript assets, the actual assets are shipped in a libjs-* package and ruby-* package only include a symbolic link. At present, this means, the test will always fail in such cases since dh_link step is not yet run when this test is run. Details here https://lists.debian.org/debian-ruby/2024/02/msg00006.html So I think we have a few options, 1. Run this only as an autopkgtest (like how it is currently done) which will have the links 2. Run this tests after dh_link is done 3. Manually run dh_link before this test To reproduce this bug, you can build this branch https://salsa.debian.org/ruby-team/ruby-jquery-rails/-/tree/debian-tests-assets?ref_type=heads
Control: severity -1 serious Testing further with ruby-rails-assets-underscore, the test is passing even with a broken symbolic link. Try building master branch which has this commit https://salsa.debian.org/ruby-team/ruby-rails-assets-underscore/-/commit/194c526208b3be29870f745d9ac0bfbc9af6d66c Without libjs-underscore in build depends, the test should fail, but it is passing.
Control: severity -1 important ruby-rails-assets-underscore source package includes underscore.js and it is replaced by symlink to libjs-underscore only in dh_install stage so rake assets:precompile can still find it. So it looks like gem2deb test is working as expected, but we still need to figure out a way out for symlinks. May be we should just link them in the build target itself as a solution. If that is the recommended solution, we can close this bug with a note in dh_ruby documentation.