Explorar o código

CI: Fix example test for http_request

Test is based on a public http server which might not be always
available, so the example test checks if it's available
so the test could be (by)passed if the public server not available.

But we didn't correctly check if a socket/timeout exception occurs
when trying to connect
David Cermak %!s(int64=4) %!d(string=hai) anos
pai
achega
e99490a0dd
Modificáronse 1 ficheiros con 10 adicións e 7 borrados
  1. 10 7
      examples/protocols/http2_request/example_test.py

+ 10 - 7
examples/protocols/http2_request/example_test.py

@@ -16,13 +16,16 @@ TEST_SERVER = 'http2.golang.org'
 
 def is_test_server_available():  # type: () -> bool
     # 443 - default https port
-    conn = http.client.HTTPSConnection(TEST_SERVER, 443, timeout=10)
-    conn.request('GET', '/')
-    resp = conn.getresponse()
-    conn.close()
-    if resp.status == HTTP_OK:
-        return True
-    return False
+    try:
+        conn = http.client.HTTPSConnection(TEST_SERVER, 443, timeout=10)
+        conn.request('GET', '/')
+        resp = conn.getresponse()
+        return True if resp.status == HTTP_OK else False
+    except Exception as msg:
+        Utility.console_log('Exception occurred when connecting to {}: {}'.format(TEST_SERVER, msg))
+        return False
+    finally:
+        conn.close()
 
 
 @ttfw_idf.idf_example_test(env_tag='Example_EthKitV1')