Exemplo n.º 1
0
class TestWebParser(TestCase):
    def setUp(self):
        self.web_parser = WebParser()

    def test_should_return_form_code_and_message_as_dict(self):
        message = {'form_code': 'X1', 'q1': 'a1', 'q2': 'a2'}
        form_code, values = self.web_parser.parse(message)
        self.assertEquals(form_code, 'X1')
        self.assertEquals(values, {'q1': 'a1', 'q2': 'a2'})

    def test_should_allow_none_values(self):
        message = {'form_code': 'X1', 'q1': 'a1', 'q2': None}
        form_code, values = self.web_parser.parse(message)
        self.assertEquals(form_code, 'X1')
        self.assertEquals(values, {'q1': 'a1', 'q2': None})

    def test_should_allow_empty_values(self):
        message = {'form_code': 'X1', 'q1': 'a1', 'q2': ""}
        form_code, values = self.web_parser.parse(message)
        self.assertEquals(form_code, 'X1')
        self.assertEquals(values, {'q1': 'a1', 'q2': ""})

    def test_should_allow_integer_values(self):
        message = {'form_code': 'X1', 'q2': 21}
        form_code, values = self.web_parser.parse(message)
        self.assertEquals(values, {'q2': "21"})

    def test_should_allow_float_values(self):
        message = {'form_code': 'X1', 'q2': 21.5}
        form_code, values = self.web_parser.parse(message)
        self.assertEquals(values, {'q2': "21.5"})

    def test_should_convert_list_value_to_string(self):
        message = {'form_code': 'X1', 'q1': ['a1', 'a2'], 'q2': [""], 'q3': []}
        form_code, values = self.web_parser.parse(message)
        self.assertEquals(form_code, 'X1')
        self.assertEquals(values, {'q1': 'a1a2', 'q2': "", 'q3': ''})

    def test_should_remove_csrf_token_if_it_exists(self):
        message = {
            'form_code': 'X1',
            'q1': ['a1', 'a2'],
            'q2': [""],
            'q3': [],
            'csrfmiddlewaretoken': 'some csrf token'
        }
        form_code, values = self.web_parser.parse(message)
        self.assertEquals(form_code, 'X1')
        self.assertEquals(values, {'q1': 'a1a2', 'q2': "", 'q3': ''})
Exemplo n.º 2
0
 def _parse(self, message):
     return WebParser().parse(message)
Exemplo n.º 3
0
 def _parse(self, request):
     web_parser = WebParser()
     form_code, values = web_parser.parse(request.message)
     return form_code, values
Exemplo n.º 4
0
 def __init__(self, dbm, location_tree=None, parser=None):
     self.parser = parser or WebParser()
     Player.__init__(self, dbm, location_tree)
Exemplo n.º 5
0
 def test_should_return_form_code_and_message_as_dict(self):
     parser = WebParser()
     message = {'form_code': 'X1', 'q1': 'a1', 'q2': 'a2'}
     form_code, values = parser.parse(message)
     self.assertEquals(form_code, 'X1')
     self.assertEquals(values, {'q1': 'a1', 'q2': 'a2'})
Exemplo n.º 6
0
 def setUp(self):
     self.web_parser = WebParser()
Exemplo n.º 7
0
 def test_should_return_form_code_and_message_as_dict(self):
     parser = WebParser()
     message = {'form_code': 'X1', 'q1': 'a1', 'q2': 'a2'}
     form_code, values = parser.parse(message)
     self.assertEquals(form_code, 'X1')
     self.assertEquals(values, {'q1': 'a1', 'q2': 'a2'})
Exemplo n.º 8
0
 def _parse(self, request):
     web_parser = WebParser()
     form_code, values = web_parser.parse(request.message)
     return form_code, values