Hi Sebastien and Eric "Sebastien Vauban" <wxhgmqzgw...@spammotel.com> writes:
> Hi Eric and Martyn, > > Eric Schulte wrote: >> Martyn Jago <martyn.j...@btinternet.com> writes: >>> Unfortunately this test introduces an external dependency for R (which I >>> haven't currently got on my system so fails here). Not sure if that is >>> avoidable - I have no problem installing it if not. >> >> Yes, I think we're going to have to start putting some conditional >> checks into org-test-run-all-tests so that only those code block tests >> for which the required languages exist on the user's system are run. I >> don't know the best way to handle this. > > Testing both if: > > - the language is activated (`org-babel-load-languages') > - the interpreter is found on the system (`exec-path') > > ? > > Just an idea... > I was thinking along the same lines, as a stop-gap at least... - test for feature ESS - test for R - If either are missing, 'bypass' the test but add a note to the test backtrace to that effect. - If dependencies are satisfied, run the test proper. My main problem is that my 'config-less' tests are now failing across Emacs 22, 23 and 24 (obviously), and are thus no longer particularly useful! I have included a patch that fixes things for me, but are you still confident Eric that in the short term your test will still catch the intended failure mode. I have little doubt that ultimately there will be a more satisfactory solution. Best, Martyn
>From de40e439d1a4d110a47d5a0701741493a285143c Mon Sep 17 00:00:00 2001 From: Martyn Jago <martyn.j...@btinternet.com> Date: Wed, 21 Sep 2011 22:01:16 +0100 Subject: [PATCH] Bypass test where dependencies missing * testing/lisp/test-ob-R.el: If R or ESS are missing don't run test but add NOTE to this effect in test backtrace --- testing/lisp/test-ob-R.el | 10 +++++++--- 1 files changed, 7 insertions(+), 3 deletions(-) diff --git a/testing/lisp/test-ob-R.el b/testing/lisp/test-ob-R.el index 1fe63a5..457bf9c 100644 --- a/testing/lisp/test-ob-R.el +++ b/testing/lisp/test-ob-R.el @@ -16,9 +16,13 @@ (require 'ob-R) (ert-deftest test-ob-R/simple-session () - (org-test-with-temp-text - "#+begin_src R :session R\n paste(\"Yep!\")\n#+end_src\n" - (should (string= "Yep!" (org-babel-execute-src-block))))) + (if (and (featurep 'ess) + (eql 0 (shell-command org-babel-R-command))) + (org-test-with-temp-text + "#+begin_src R :session R\n paste(\"Yep!\")\n#+end_src\n" + (should (string= "Yep!" (org-babel-execute-src-block)))) + (message "NOTE: =test-ob-R/simple-session= NOT run! + R and ESS are required to run =test-ob-R/simple-session="))) (provide 'test-ob-R) -- 1.7.3.4
--- Org-mode version 7.7 (release_7.7.315.g20e6) GNU Emacs 24.0.50.1 (x86_64-apple-darwin, NS apple-appkit-1038.35) of 2011-08-21 on virtualmac.porkrind.org