Bug#1139439: dh-elpa: integration tests

Xiyue Deng <[email protected]> Thu, 25 Jun 2026 10:38:24 -0700
Newsgroups gmane.linux.debian.devel.emacsen
Message-ID <87o6gy8qr3.fsf__40142.7290214755$1782409168$gmane$org@debian-hx90.lan>
Xiyue Deng <[email protected]> writes:

> Hi Sean,
>
> Sean Whitton <[email protected]> writes:
>
>> Xiyue Deng [08/Jun  6:36pm -07] wrote:
>>> Package: dh-elpa
>>> Version: 2.1.9
>>> Severity: wishlist
>>>
>>> I have modified and adapted the integration tests from dh-make-elpa to
>>> work in dh-elpa. The tests work in a similar fashion as dh-make-elpa: in
>>> a template repo that provides a minimal-ish set of files required for
>>> dh_elpa command, run the command, and compare the output with an
>>> expected repository, and check whether there are any diff. I hope this
>>> provides a way to easily verify changes to the dh_elpa (and dh-elpa.el)
>>> utility, especially debian/*.substvars to check whether the generated
>>> "misc:Depends" and "elpa:Depends" are expected.
>>>
>>> During implementation, I found some limitation of how the "dh_elpa"
>>> command works and used some workarounds to make it work.
>>>
>>> * The "dh_elpa" perl script uses global path that assumes a installed
>>>   dh-elpa is available. However, the build time test needs to run from
>>>   the source tree. As a result I extended the dh_elpa script to allow
>>>   referencing files from the source tree (as well as other tweaks) to
>>>   make it work during build time. The changes are guarded by a
>>>   "--test-source-root" parameter.
>>>
>>> * For multiple file packages, dh_elpa will create a tarball which cannot
>>>   be compared with "diff" directly (which bremner had warned me before).
>>>   For the time being, I just skip the tarball files as the unpacked
>>>   directory is also available in the generated templates so their
>>>   contents are still part of the comparisons.
>>>
>>> I hope the diff tests can give more confidence when modifying dh_elpa,
>>> especially for testing ideas like in Bug#1138884.
>>>
>>> The changes are in an "integration-test" branch[1], and the diff against
>>> master branch can be seen here[2]. An overview of how the tests work can
>>> be found at the README.org[3].
>>
>> I think you should try to cut down the Perl deps.  Most of those aren't
>> really necessary, I used them for the dh-make-elpa test suite because I
>> didn't know much Perl at the time.
>
> Makes sense. I have reduced the lists of Build-Depends and Depends.
> PTAL.

Friendly ping.

-- 
Regards,
Xiyue Deng
signature.asc (application/pgp-signature, 861 B)
-----BEGIN PGP SIGNATURE-----

iQJHBAEBCgAxFiEEiKQfd6o81mjI+LWALell7WOCXJMFAmo9Z5ATHG1hbnBoaXpA
ZGViaWFuLm9yZwAKCRAt6WXtY4Jck5aJD/9oI7f1DY1lcK3MzqfqNaG9VVbVojrp
AH2kYrz2/Y2ysr7l0oFGS5a26gAnplIRZXY6Dw/yGSE6iSE7ssW3vqUE0+ynSZAE
T/yeDGUCQnwGmd8EzF6NZWXO/rN9LpnSx9ISyaQsOuajSniTNd4s5nidxuUXljF0
kDaiwH2aWuxsiR6XgBN7QbcTVz7NFBQsxI5X9ydbtRJSLjLyJtmgG/G3rDkLO70N
B55p5ETyJFXkORlLadzHgEgt8LLC3cUbL3QeWccvYrw4gSvIEUU2WXEQ6Ij0mF0Z
Q4FOETnMd4DLJyPYG/MfckVGBT8EOD4K7Si+9MXNk607TGLvT8QRgG0oXdKGQpQb
MqjifG68la/TemkkZNYfinHPWJLT4Cfjo3h7Kce4SpKNZEOYz1fl276aQPsRpK0f
NFEk7eJu8PzWJCPjRyDwDyzyBq99ys4mM708yFPg0j2EEh+ip3YIb7dUMl6/8hRe
JsZ67r6zwPmdVzxPsYcsI9V72w/WOFzeHIOGWcHtbzUXWnJrPNYkpUMZG38ZObD6
uaOYVheyKJ/m4a2pavcZA2ZkS7iEcOCNv/62tUsY6+y+BKlIlI4ZmRHA8FeuwAjP
nx12ckFiuPl1dmPATO4c+SrNjLetdnmrBGmoPxLSK95Dyq7UfXT/Z89aI7AE7bap
mlopfHhpvjLDgA==
=cz9Y
-----END PGP SIGNATURE-----