Пример #1
0
    def test_handle_request_string(self):

        request1 = JSONRPC20Serializer.assemble_request(
            'adder',
            (2, 3)
        )
        request2 = JSONRPC20Serializer.assemble_request(
            'adder',
            (4, 3)
        )
        requests_string = JSONRPC20Serializer.json_dumps([request1, request2])

        response_string = self.app.handle_request_string(requests_string)

        responses_data = JSONRPC20Serializer.json_loads(response_string)

        assert len(responses_data) == 2

        response_json = responses_data[0]
        assert 'error' not in response_json
        assert response_json['id'] == request1['id']
        assert response_json['result'] == 5

        response_json = responses_data[1]
        assert 'error' not in response_json
        assert response_json['id'] == request2['id']
        assert response_json['result'] == 7
Пример #2
0
    def test_handle_request_string(self):


        request1 = JSONRPC20Serializer.assemble_request(
            'pass_through',
            (2, 3)
        )
        request_id = request1['id']

        requests_string = JSONRPC20Serializer.json_dumps(request1)

        response_string = self.app.handle_request_string(
            requests_string,
            some_context_data='value',
            more_context_data=['value']
        )

        response_json = JSONRPC20Serializer.json_loads(response_string)

        assert 'error' not in response_json
        assert response_json['id'] == request1['id']
        args, kwargs = response_json['result']
        assert args == [2, 3]
        self.assertEqual(
            dict(
                request_id=request_id,
                some_context_data='value',
                more_context_data=['value']
            ),
            kwargs
        )
Пример #3
0
    def test_handle_wsgi_request(self):

        request1 = JSONRPC20Serializer.assemble_request('adder', (2, 3))
        request2 = JSONRPC20Serializer.assemble_request('adder', (4, 3))
        requests_string = JSONRPC20Serializer.json_dumps([request1, request2])

        environ = MockWSGIEnviron(requests_string,
                                  [('CONTENT_TYPE', 'application/json'),
                                   ('CONTENT_LENGTH', len(requests_string))])
        start_response = MockWSGIStartResponse()

        response_iterable = self.app(environ, start_response)

        assert response_iterable

        response_string = ''.join(response_iterable)
        responses_data = JSONRPC20Serializer.json_loads(response_string)

        assert len(responses_data) == 2

        response_json = responses_data[0]
        assert 'error' not in response_json
        assert response_json['id'] == request1['id']
        assert response_json['result'] == 5

        response_json = responses_data[1]
        assert 'error' not in response_json
        assert response_json['id'] == request2['id']
        assert response_json['result'] == 7
Пример #4
0
    def test_handle_request_string(self):

        request1 = JSONRPC20Serializer.assemble_request(
            'adder',
            (2, 3)
        )
        request2 = JSONRPC20Serializer.assemble_request(
            'adder',
            (4, 3)
        )
        requests_string = JSONRPC20Serializer.json_dumps([request1, request2])

        response_string = self.app.handle_request_string(requests_string)

        responses_data = JSONRPC20Serializer.json_loads(response_string)

        assert len(responses_data) == 2

        response_json = responses_data[0]
        assert 'error' not in response_json
        assert response_json['id'] == request1['id']
        assert response_json['result'] == 5

        response_json = responses_data[1]
        assert 'error' not in response_json
        assert response_json['id'] == request2['id']
        assert response_json['result'] == 7
    def test_handle_wsgi_request(self):

        request1 = JSONRPC20Serializer.assemble_request(
            'adder',
            (2, 3)
        )
        request2 = JSONRPC20Serializer.assemble_request(
            'adder',
            (4, 3)
        )
        requests_string = JSONRPC20Serializer.json_dumps([request1, request2])

        environ = MockWSGIEnviron(
            requests_string,
            [
                ('CONTENT_TYPE', 'application/json'),
                ('CONTENT_LENGTH', len(requests_string))
            ]
        )
        start_response = MockWSGIStartResponse()

        response_iterable = self.app(environ, start_response)

        assert response_iterable

        response_string = ''.join(response_iterable)
        responses_data = JSONRPC20Serializer.json_loads(response_string)

        assert len(responses_data) == 2

        response_json = responses_data[0]
        assert 'error' not in response_json
        assert response_json['id'] == request1['id']
        assert response_json['result'] == 5

        response_json = responses_data[1]
        assert 'error' not in response_json
        assert response_json['id'] == request2['id']
        assert response_json['result'] == 7