From b291be8a5d39e99ddec62438803dc8ef00e928a7 Mon Sep 17 00:00:00 2001 From: Shubham Kulkarni Date: Fri, 22 Apr 2022 17:38:10 +0530 Subject: [PATCH] esp_http_client example: Add cert for redirect to HTTPS example esp_http_client_test.py: Add checks for missing example logs --- .../esp_http_client/esp_http_client_test.py | 26 +++++++++++++++++++ .../main/esp_http_client_example.c | 1 + 2 files changed, 27 insertions(+) diff --git a/examples/protocols/esp_http_client/esp_http_client_test.py b/examples/protocols/esp_http_client/esp_http_client_test.py index 63e2cf8864..99b01f38f8 100644 --- a/examples/protocols/esp_http_client/esp_http_client_test.py +++ b/examples/protocols/esp_http_client/esp_http_client_test.py @@ -25,15 +25,28 @@ def test_examples_protocol_esp_http_client(env, extra_data): dut1.expect(re.compile(r'HTTP PATCH Status = 200, content_length = (\d)')) dut1.expect(re.compile(r'HTTP DELETE Status = 200, content_length = (\d)')) dut1.expect(re.compile(r'HTTP HEAD Status = 200, content_length = (\d)')) + dut1.expect(re.compile(r'HTTP GET Status = 200, content_length = (\d)')) + dut1.expect(re.compile(r'HTTP POST Status = 200, content_length = (\d)')) + dut1.expect(re.compile(r'HTTP PUT Status = 200, content_length = (\d)')) + dut1.expect(re.compile(r'HTTP PATCH Status = 200, content_length = (\d)')) + dut1.expect(re.compile(r'HTTP DELETE Status = 200, content_length = (\d)')) + dut1.expect(re.compile(r'HTTP HEAD Status = 200, content_length = (\d)')) dut1.expect(re.compile(r'HTTP Basic Auth Status = 200, content_length = (\d)')) dut1.expect(re.compile(r'HTTP Basic Auth redirect Status = 200, content_length = (\d)')) dut1.expect(re.compile(r'HTTP Digest Auth Status = 200, content_length = (\d)')) + dut1.expect(re.compile(r'HTTP Relative path redirect Status = 200, content_length = (\d)')) + dut1.expect(re.compile(r'HTTP Absolute path redirect Status = 200, content_length = (\d)')) + dut1.expect(re.compile(r'HTTP Absolute path redirect \(manual\) Status = 200, content_length = (\d)')) dut1.expect(re.compile(r'HTTPS Status = 200, content_length = (\d)')) dut1.expect(re.compile(r'HTTPS Status = 200, content_length = (\d)')) + dut1.expect(re.compile(r'HTTP redirect to HTTPS Status = 200, content_length = (\d)')) dut1.expect(re.compile(r'HTTP chunk encoding Status = 200, content_length = (-?\d)')) # content-len for chunked encoding is typically -1, could be a positive length in some cases dut1.expect(re.compile(r'HTTP Stream reader Status = 200, content_length = (\d)')) + dut1.expect(re.compile(r'HTTPS Status = 200, content_length = (\d)')) dut1.expect(re.compile(r'Last esp error code: 0x8001')) + dut1.expect(re.compile(r'HTTP GET Status = 200, content_length = (\d)')) + dut1.expect(re.compile(r'HTTP POST Status = 200, content_length = (\d)')) dut1.expect(re.compile(r'HTTP Status = 206, content_length = (\d)')) dut1.expect(re.compile(r'HTTP Status = 206, content_length = 10')) dut1.expect(re.compile(r'HTTP Status = 206, content_length = 10')) @@ -54,15 +67,28 @@ def test_examples_protocol_esp_http_client(env, extra_data): dut1.expect(re.compile(r'HTTP PATCH Status = 200, content_length = (\d)')) dut1.expect(re.compile(r'HTTP DELETE Status = 200, content_length = (\d)')) dut1.expect(re.compile(r'HTTP HEAD Status = 200, content_length = (\d)')) + dut1.expect(re.compile(r'HTTP GET Status = 200, content_length = (\d)')) + dut1.expect(re.compile(r'HTTP POST Status = 200, content_length = (\d)')) + dut1.expect(re.compile(r'HTTP PUT Status = 200, content_length = (\d)')) + dut1.expect(re.compile(r'HTTP PATCH Status = 200, content_length = (\d)')) + dut1.expect(re.compile(r'HTTP DELETE Status = 200, content_length = (\d)')) + dut1.expect(re.compile(r'HTTP HEAD Status = 200, content_length = (\d)')) dut1.expect(re.compile(r'HTTP Basic Auth Status = 200, content_length = (\d)')) dut1.expect(re.compile(r'HTTP Basic Auth redirect Status = 200, content_length = (\d)')) dut1.expect(re.compile(r'HTTP Digest Auth Status = 200, content_length = (\d)')) + dut1.expect(re.compile(r'HTTP Relative path redirect Status = 200, content_length = (\d)')) + dut1.expect(re.compile(r'HTTP Absolute path redirect Status = 200, content_length = (\d)')) + dut1.expect(re.compile(r'HTTP Absolute path redirect \(manual\) Status = 200, content_length = (\d)')) dut1.expect(re.compile(r'HTTPS Status = 200, content_length = (\d)')) dut1.expect(re.compile(r'HTTPS Status = 200, content_length = (\d)')) + dut1.expect(re.compile(r'HTTP redirect to HTTPS Status = 200, content_length = (\d)')) dut1.expect(re.compile(r'HTTP chunk encoding Status = 200, content_length = (-?\d)')) # content-len for chunked encoding is typically -1, could be a positive length in some cases dut1.expect(re.compile(r'HTTP Stream reader Status = 200, content_length = (\d)')) + dut1.expect(re.compile(r'HTTPS Status = 200, content_length = (\d)')) dut1.expect(re.compile(r'Last esp error code: 0x8001')) + dut1.expect(re.compile(r'HTTP GET Status = 200, content_length = (\d)')) + dut1.expect(re.compile(r'HTTP POST Status = 200, content_length = (\d)')) dut1.expect(re.compile(r'HTTP Status = 206, content_length = (\d)')) dut1.expect(re.compile(r'HTTP Status = 206, content_length = 10')) dut1.expect(re.compile(r'HTTP Status = 206, content_length = 10')) diff --git a/examples/protocols/esp_http_client/main/esp_http_client_example.c b/examples/protocols/esp_http_client/main/esp_http_client_example.c index e838e189e1..d575a32af4 100644 --- a/examples/protocols/esp_http_client/main/esp_http_client_example.c +++ b/examples/protocols/esp_http_client/main/esp_http_client_example.c @@ -452,6 +452,7 @@ static void http_redirect_to_https(void) esp_http_client_config_t config = { .url = "http://httpbin.org/redirect-to?url=https%3A%2F%2Fwww.howsmyssl.com", .event_handler = _http_event_handler, + .cert_pem = howsmyssl_com_root_cert_pem_start, }; esp_http_client_handle_t client = esp_http_client_init(&config); esp_err_t err = esp_http_client_perform(client);