3e81575af1aa976e315575cd7e18524511cd3dcd
[rxpd] / tests / 40regexchecking.tests
1 # we randomize ports to minimize collisions,
2 # this needs to be fixed someday (use netstat and check which port is free)
3
4 cp -rf $srcdir/files ./
5 chmod -R +w files
6 port=$((RANDOM+1500))
7 ./rxpd -L $LC_CTYPE -dq -b files -p policy -t $port example
8
9 sleep 1
10
11 function rxpd_client()
12 {
13     nc -q1 localhost $port;
14 }
15
16 TESTING "regex checking tests" rxpd_client
17
18 TEST "not matched and empty line" <<END
19 in: CHECK:example
20 in: blah
21 in:
22 out: #OK:
23 END
24
25 TEST "matched 1" <<END
26 in: CHECK:example
27 in: GNU
28 out: accept:GNU|Linux
29 END
30
31 TEST "matched 2" <<END
32 in: CHECK:example
33 in: Macrosoft
34 out: reject:M.*soft
35 END
36
37 TEST "reload example" <<END
38 in: LOAD:example
39 END
40
41 sleep 2
42
43 TEST "expire rules, touch" <<END
44 in: CHECK:example
45 in: MirBSD
46 END
47
48 TEST "expire rules, expire" <<END
49 in: EXPIRE:example
50 in: 1
51 END
52
53 TEST "expire rules, match" <<END
54 in: CHECK:example
55 in: GNU
56 in: FreeBSD
57 in: MirBSD
58 out: accept:MirBSD
59 in: Masosoft
60 out: reject:M.*soft
61 END