On Fri, May 25, 2012 at 10:15 AM, Dmitry Kurochkin <dmitry.kurochkin@gmail.com> wrote: > Why do we need to explicitly declare Emacs dependency for tests? There > should be no need for it. We have "implicit" dependencies which are > declared once (see test_declare_external_prereq calls at the end of > test-lib.sh) and are automatically handled when a test tries to use a > missing binary. Explicit dependencies are hard to maintain (e.g. your > patch adds explicit emacs dependency for crypto test but misses gpg). > With rare exceptions we should not use explicit dependencies. Because not every test actually has those implicit dependencies. For example, some of the crypto tests depend upon emacs_deliver_message working correctly for subsequents tests. Those emacs_deliver_message tests are skipped, but not the ones after it that try to do something with that injected message. For the emacs-* test files, there are some tests that act the same way. However, it is also a minor speed improvement to say that, obviously, none of the emacs tests are going to work, so just don't bother. -- Mike Kelly