/
257-header_op-add3.py
37 lines (29 loc) · 1.03 KB
/
257-header_op-add3.py
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
import re
from base import *
DIR = "headerop_add3"
HEADER = "date"
VALUE = "this is an overwritten date"
CONF = """
vserver!1!rule!2570!match = directory
vserver!1!rule!2570!match!directory = /%(DIR)s
vserver!1!rule!2570!handler = dirlist
vserver!1!rule!2570!header_op!1!type = add
vserver!1!rule!2570!header_op!1!header = %(HEADER)s
vserver!1!rule!2570!header_op!1!value = %(VALUE)s
"""
class Test (TestBase):
def __init__ (self):
TestBase.__init__ (self, __file__)
self.name = "Header Ops: Add header, overwrite"
self.request = "GET /%s/ HTTP/1.0\r\n" %(DIR)
self.expected_error = 200
self.conf = CONF%(globals())
def CustomTest (self):
header = self.reply[:self.reply.find("\r\n\r\n")+2]
if re.findall (r'^Date: (\w+), \d+ \w+ \d+ \d+:\d+:\d+', header, re.M):
return -1
if not "%(HEADER)s: %(VALUE)s\r\n" %(globals()) in header:
return -1
return 0
def Prepare (self, www):
self.Mkdir (www, DIR)