emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] FYI: Org mode testing framework, Emacs 23 and 22


From: Eric Schulte
Subject: Re: [O] FYI: Org mode testing framework, Emacs 23 and 22
Date: Wed, 09 Nov 2011 14:22:04 -0700
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.90 (gnu/linux)

Martyn Jago <address@hidden> writes:

> Hi
>
> Brian Wightman <address@hidden> writes:
>
>> On Mon, Oct 24, 2011 at 7:12 AM, Sebastien Vauban
>> <address@hidden> wrote:
>>> For my information, why do you need to test that 2 suites don't run at the
>>> same time?  They only write to temp buffers, no?  Can they conflict?
>>
>> If they do conflict and only one set of tests should run at a time,
>> shouldn't the second set of tests be queued up so it runs when the
>> first is complete?  If this isn't done, I could see a situation where
>> at least one commit remains untested until the next commit.
>>
>> my $0.02;
>> Brian
>
> I would think it would make sense to ensure the newly committed code
> also builds correctly (including info), and why not test back to Emacs
> 22 also (since that is how this thread came about)? I have set up
> something similar, and doing all this takes less than 1 minute on my
> machine.
>
> Incidentally, I added info on running tests on Emacs 22 and 23 to Worg at 
>
> http://orgmode.org/worg/org-tests/index.html
>

These are good points, so the best solution would have two parts, the
first should en-queue each new commit as it is received, and the second
should pop commits off of the queue, run the test suite on that commit
and write the results to an html file.

My first thought for a shell-script solution would use a mkfifo named
pipe, something like the following...

,----[setup]
| mkfifo /tmp/org-commits-to-test
`----

,----[in a post-commit hook]
| echo $COMMIT >> /tmp/org-commits-to-test
`----

,----[in another constantly-running shell script]
| while true; do
|   for i in $(cat /tmp/org-commits-to-test);do
|     cd /testing/repo/location
|     git checkout $i
|     git reset --hard HEAD
|     emacs --batch ...
|   done
| done
`----

But I imagine there is likely a better solution.

Best -- Eric

-- 
Eric Schulte
http://cs.unm.edu/~eschulte/



reply via email to

[Prev in Thread] Current Thread [Next in Thread]