summaryrefslogtreecommitdiff
path: root/reconfigure/tests/parsers/crontab_tests.py
blob: 481a2f672399efce3c8c81409c2ed78f18041229 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
from reconfigure.parsers import CrontabParser
from reconfigure.nodes import RootNode, Node, PropertyNode
from reconfigure.tests.parsers.base_test import BaseParserTest


class CrontabParserTest (BaseParserTest):
    parser = CrontabParser()

    source = '\n'.join(['#comment line',
                    '* * * * * date',
                    '@reboot ls -al',
                    '1 * 0 1 2 date -s',
                    'NAME = TEST',
                    ])
    parsed = RootNode(None,
            children=[
                Node('normal_task',
                    comment='comment line',
                    children=[
                        PropertyNode('minute', '*'),
                        PropertyNode('hour', '*'),
                        PropertyNode('day_of_month', '*'),
                        PropertyNode('month', '*'),
                        PropertyNode('day_of_week', '*'),
                        PropertyNode('command', 'date'),
                    ]
                ),
                Node('special_task',
                    children=[
                        PropertyNode('special', '@reboot'),
                        PropertyNode('command', 'ls -al'),
                    ]
                ),
                Node('normal_task',
                    children=[
                        PropertyNode('minute', '1'),
                        PropertyNode('hour', '*'),
                        PropertyNode('day_of_month', '0'),
                        PropertyNode('month', '1'),
                        PropertyNode('day_of_week', '2'),
                        PropertyNode('command', 'date -s'),
                    ]
                ),
                Node('env_setting',
                    children=[
                        PropertyNode('name', 'NAME'),
                        PropertyNode('value', 'TEST'),
                    ]
                ),
            ]
        )
#    bad_source = '\n'.join(['* * * * dd',   #Wrong line
#                        ' = FAIL',      #wrong line
#    ])


del BaseParserTest