On Thu, 17 Nov 2011 05:56:17 +0400, Dmitry Kurochkin <dmitry.kurochkin@gmail.com> wrote: > Hi all. > > The following patch series is an attempt to introduce proper > dependencies for external binaries in a less intrusive way than > [1]. The primary aim was to avoid changing every subtest that > uses external binaries. > > There are still failing tests if a dependency is > missing (e.g. "Verify that sent messages are > saved/searchable (via FCC)" fails if there is no emacs). It > happens because such tests depend on others which are skipped. > This issues are not addressed by this patch series. > > If others do like the approach and it is pushed, I will work on > updating tests that use the old style prerequisites (atomicity). > > A careful review is needed! > > Regards, > Dmitry > > [1] id:"1321454035-22023-1-git-send-email-schnouki@schnouki.net" Hi Dmitry, This series looks quite good to me. It's a good approach, cleaner than explicitely adding the prereqs to each test as in my previous patches (and Pieter's). Now, a few questions: - same as Jamie: emacs_deliver_message hangs if dtach is not installed. In my patches I had to do this: "test_have_prereq EMACS && emacs_deliver_message ...". Any idea how to handle this? - what about indirect, "hidden" dependencies? The crypto test need to have a signed message delivered by emacs, so actually *all* the crypto tests depend on emacs. Right now, when dtach is not installed, the first test ("emacs delivery of signed message") is skipped and all the others fail. Would it be possible to handle this case without having to add explicit prereqs? - right now functions like test_expect_success can be used as "test_expect_success COMMAND" or "test_expect_success PREREQ COMMAND". If we use your approach (and I hope we will!), do we need to keep that second syntax available in test-lib.sh too, or should we do some cleanup to get rid of it? Thanks, -- Thomas/Schnouki