Run jobs with 'set -e' so that they exit on error.
[whenjobs.git] / tests / jobs / t101_updown.ml
1 (* whenjobs
2  * Copyright (C) 2012 Red Hat Inc.
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation; either version 2 of the License, or
7  * (at your option) any later version.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License along
15  * with this program; if not, write to the Free Software Foundation, Inc.,
16  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
17  *)
18
19 (* Reproduce a bug found during development where the everyjob would
20  * start running twice per period.
21  *)
22
23 when reloaded () :
24 <<
25   echo $JOBSERIAL $JOBNAME >\> $HOME/test_output
26   whenjobs --set counter 0 --type int
27 >>
28
29 every second :
30 <<
31   echo $JOBSERIAL $JOBNAME >\> $HOME/test_output
32   whenjobs --set counter $(($counter+1)) --type int
33 >>
34
35 when counter < 5 && counter mod 2 == 0 :
36 <<
37   echo $JOBSERIAL $JOBNAME >\> $HOME/test_output
38 >>
39
40 when counter < 5 && counter mod 2 == 1 :
41 <<
42   echo $JOBSERIAL $JOBNAME >\> $HOME/test_output
43 >>
44
45 when counter == 5 :
46 <<
47   echo $JOBSERIAL $JOBNAME >\> $HOME/test_output
48   whenjobs --daemon-stop
49 >>