Commit a1dc687b authored by Flavio Santes's avatar Flavio Santes Committed by Jukka Rissanen
Browse files

iot/http: Add test-case for HTTP header fields

This commit adds the following routines:

- test_invalid_header_content
- test_invalid_header_content
- test_invalid_header_field
- test_invalid_header_field
- test_preserve_data
- test_parse_url
- test_method_str
- test_header_nread_value
- test_double_content_length_error
- test_chunked_content_length_error
- test_header_cr_no_lf_error
- test_invalid_header_field_token_error
- test_invalid_header_field_content_error
- test_double_content_length_error
- test_chunked_content_length_error
- test_header_cr_no_lf_error
- test_invalid_header_field_token_error
- test_invalid_header_field_content_error

Origin:
https://github.com/nodejs/http-parser/releases/tag/v2.7.1
https://github.com/nodejs/http-parser/archive/v2.7.1.tar.gz

This patch reformats some http_parser files to reduce checkpatch
warnings.

See:
	https://gitlab.com/santes/http_parser/tree/refactoring1


Commit:
	c58dd8350fdf6ead0807ba37107b19f58e4f434c

Furthermore, method_str overflow test was updated to avoid compiler
warnings on some platforms.

Before:
	Line 627: http_method_str(1337)
After:
	Line 627: http_method_str(127)

Jira: ZEP-346
Jira: ZEP-776

Change-Id: If6163f59de21186f22f4f02d8c44f43ddbf9b59b
Signed-off-by: default avatarFlavio Santes <flavio.santes@intel.com>
parent b965fb5f
Loading
Loading
Loading
Loading
+20 −0
Original line number Diff line number Diff line
#
# Copyright (c) 2016 Intel Corporation
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

BOARD ?= qemu_x86
CONF_FILE ?= prj.conf

include $(ZEPHYR_BASE)/Makefile.inc
+27 −0
Original line number Diff line number Diff line
HTTP header fields test
-----------------------

Sample output:

tc_start() - HTTP header fields test
[PASS] test_preserve_data
[PASS] test_parse_url
[PASS] test_method_str
[PASS] test_header_nread_value
[PASS] test_double_content_length_error HTTP_REQUEST
[PASS] test_chunked_content_length_error HTTP_REQUEST
[PASS] test_header_cr_no_lf_error HTTP_REQUEST
[PASS] test_invalid_header_field_token_error HTTP_REQUEST
[PASS] test_invalid_header_field_content_error HTTP_REQUEST
[PASS] test_double_content_length_error HTTP_RESPONSE
[PASS] test_chunked_content_length_error HTTP_RESPONSE
[PASS] test_header_cr_no_lf_error HTTP_RESPONSE
[PASS] test_invalid_header_field_token_error HTTP_RESPONSE
[PASS] test_invalid_header_field_content_error HTTP_RESPONSE

	No errors detected
===================================================================
PASS - main.
===================================================================
PROJECT EXECUTION SUCCESSFUL
+5 −0
Original line number Diff line number Diff line
# Comment the following line if you want to try another libc
CONFIG_MINIMAL_LIBC_EXTENDED=y
CONFIG_HTTP_PARSER=y
# Enable strict parser by uncommenting the following line
# CONFIG_HTTP_PARSER_STRICT=y
+19 −0
Original line number Diff line number Diff line
#
# Copyright (c) 2016 Intel Corporation
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

ccflags-y += -I$(ZEPHYR_BASE)/tests/include

obj-y += test_http_header.o
+941 −0

File added.

Preview size limit exceeded, changes collapsed.

Loading