This is an automated email from the ASF dual-hosted git repository.
zwoop pushed a commit to branch 9.1.x
in repository https://gitbox.apache.org/repos/asf/trafficserver.git
The following commit(s) were added to refs/heads/9.1.x by this push:
new 768fc8a Make HTTP/2 Curl AuTest gold files case insensitive (#7683)
768fc8a is described below
commit 768fc8a5e5a2d94d4c90811d2d533dfa13da6008
Author: Brian Neradt <[email protected]>
AuthorDate: Wed Apr 7 09:47:05 2021 -0500
Make HTTP/2 Curl AuTest gold files case insensitive (#7683)
Newer versions of Curl (7.67.0) lowercase HTTP/2 field names in
compliance with the HTTP/2 spec. Since some devs will have newer and
some older versions of Curl, this accommodates both by making the HTTP/2
gold files for AuTests match case-insensitively.
(cherry picked from commit a8b6746d303c4fafdc2e609941750fc4c2ac9b14)
---
tests/gold_tests/h2/http2.test.py | 6 ++++--
tests/gold_tests/h2/http2_priority.test.py | 3 ++-
tests/gold_tests/h2/httpbin.test.py | 12 ++++++++----
3 files changed, 14 insertions(+), 7 deletions(-)
diff --git a/tests/gold_tests/h2/http2.test.py
b/tests/gold_tests/h2/http2.test.py
index 304b52f..da9d738 100644
--- a/tests/gold_tests/h2/http2.test.py
+++ b/tests/gold_tests/h2/http2.test.py
@@ -208,7 +208,8 @@ tr = Test.AddTestRun()
tr.Processes.Default.Command = 'curl -vs -k --http2
https://127.0.0.1:{0}/huge_resp_hdrs'.format(ts.Variables.ssl_port)
tr.Processes.Default.ReturnCode = 0
tr.Processes.Default.Streams.stdout = "gold/http2_8_stdout.gold"
-tr.Processes.Default.Streams.stderr = "gold/http2_8_stderr.gold"
+# Different versions of curl will have different cases for HTTP/2 field names.
+tr.Processes.Default.Streams.stderr =
Testers.GoldFile("gold/http2_8_stderr.gold", case_insensitive=True)
tr.StillRunningAfter = server
# Test Case 9: Header Only Response - e.g. 204
@@ -216,5 +217,6 @@ tr = Test.AddTestRun()
tr.Processes.Default.Command = 'curl -vs -k --http2
https://127.0.0.1:{0}/status/204'.format(ts.Variables.ssl_port)
tr.Processes.Default.ReturnCode = 0
tr.Processes.Default.Streams.stdout = "gold/http2_9_stdout.gold"
-tr.Processes.Default.Streams.stderr = "gold/http2_9_stderr.gold"
+# Different versions of curl will have different cases for HTTP/2 field names.
+tr.Processes.Default.Streams.stderr =
Testers.GoldFile("gold/http2_9_stderr.gold", case_insensitive=True)
tr.StillRunningAfter = server
diff --git a/tests/gold_tests/h2/http2_priority.test.py
b/tests/gold_tests/h2/http2_priority.test.py
index 83bf797..086863b 100644
--- a/tests/gold_tests/h2/http2_priority.test.py
+++ b/tests/gold_tests/h2/http2_priority.test.py
@@ -76,5 +76,6 @@ tr.Processes.Default.TimeOut = 5
tr.Processes.Default.StartBefore(server,
ready=When.PortOpen(server.Variables.Port))
tr.Processes.Default.StartBefore(Test.Processes.ts)
tr.Processes.Default.Streams.stdout = "gold/priority_0_stdout.gold"
-tr.Processes.Default.Streams.stderr = "gold/priority_0_stderr.gold"
+# Different versions of curl will have different cases for HTTP/2 field names.
+tr.Processes.Default.Streams.stderr =
Testers.GoldFile("gold/priority_0_stderr.gold", case_insensitive=True)
tr.StillRunningAfter = server
diff --git a/tests/gold_tests/h2/httpbin.test.py
b/tests/gold_tests/h2/httpbin.test.py
index fe09729..fe37b27 100644
--- a/tests/gold_tests/h2/httpbin.test.py
+++ b/tests/gold_tests/h2/httpbin.test.py
@@ -93,7 +93,8 @@ test_run.Processes.Default.ReturnCode = 0
test_run.Processes.Default.StartBefore(httpbin,
ready=When.PortOpen(httpbin.Variables.Port))
test_run.Processes.Default.StartBefore(Test.Processes.ts)
test_run.Processes.Default.Streams.stdout = "gold/httpbin_0_stdout.gold"
-test_run.Processes.Default.Streams.stderr = "gold/httpbin_0_stderr.gold"
+# Different versions of curl will have different cases for HTTP/2 field names.
+test_run.Processes.Default.Streams.stderr =
Testers.GoldFile("gold/httpbin_0_stderr.gold", case_insensitive=True)
test_run.StillRunningAfter = httpbin
# Test Case 1: Empty response body
@@ -101,7 +102,8 @@ test_run = Test.AddTestRun()
test_run.Processes.Default.Command = 'curl -vs -k --http2
https://127.0.0.1:{0}/bytes/0'.format(ts.Variables.ssl_port)
test_run.Processes.Default.ReturnCode = 0
test_run.Processes.Default.Streams.stdout = "gold/httpbin_1_stdout.gold"
-test_run.Processes.Default.Streams.stderr = "gold/httpbin_1_stderr.gold"
+# Different versions of curl will have different cases for HTTP/2 field names.
+test_run.Processes.Default.Streams.stderr =
Testers.GoldFile("gold/httpbin_1_stderr.gold", case_insensitive=True)
test_run.StillRunningAfter = httpbin
# Test Case 2: Chunked
@@ -110,7 +112,8 @@ test_run.Processes.Default.Command = 'curl -vs -k --http2
https://127.0.0.1:{0}/
ts.Variables.ssl_port)
test_run.Processes.Default.ReturnCode = 0
test_run.Processes.Default.Streams.stdout = "gold/httpbin_2_stdout.gold"
-test_run.Processes.Default.Streams.stderr = "gold/httpbin_2_stderr.gold"
+# Different versions of curl will have different cases for HTTP/2 field names.
+test_run.Processes.Default.Streams.stderr =
Testers.GoldFile("gold/httpbin_2_stderr.gold", case_insensitive=True)
test_run.StillRunningAfter = httpbin
# Test Case 3: Expect 100-Continue
@@ -119,7 +122,8 @@ test_run.Processes.Default.Command = "curl -vs -k --http2
https://127.0.0.1:{0}/
ts.Variables.ssl_port, json_printer)
test_run.Processes.Default.ReturnCode = 0
test_run.Processes.Default.Streams.stdout = "gold/httpbin_3_stdout.gold"
-test_run.Processes.Default.Streams.stderr = "gold/httpbin_3_stderr.gold"
+# Different versions of curl will have different cases for HTTP/2 field names.
+test_run.Processes.Default.Streams.stderr =
Testers.GoldFile("gold/httpbin_3_stderr.gold", case_insensitive=True)
test_run.StillRunningAfter = httpbin
# Wait for log file to appear, then wait one extra second to make sure TS is
done writing it.