Hey @tatsuhiro-t! (The lack of HTTP/2 tests in our test suite is really bugging me!)
I'm considering adopting nghttpx as a test server in curl's test suite, so that it'll proxy HTTP requests to/from our regular HTTP/1 test server. We want HTTP/1.1 Upgrade support, but also support for TLS based and ideally "prior knowledge". Do you think that's a decent approach?
I've run some basic initial tests with HTTP/1 Upgrade and it seems to work pretty good.
I've hesitated to adopt an entire HTTP/2 server souce code into our test suite simply because it is a pretty decent amount of complicated code and if nghttpx can do this for us, I think we'll benefit a lot from sharing code with others.
nghttpx does not do everything we need right now (unless I've missed things in the docs):
Primarily, I'd like it to be able to store incoming HTTP requests in a separate log file (probably decoded in the HTTP/2 case) so that we in our test cases can make sure that the request arrived as intended.
Further down the road, it might be interesting to add a way to control the server to misbehave or otherwise mess up the protocol in specified ways so that we can make sure that curl still does the right thing in such situations. That would be the primary reason why cloning the entire code base into the curl repo could still be future move. I'm still interested to know if you think that would be possible @tatsuhiro-t, if done correctly and with your guidance?
If you or someone else have other or better ideas or suggestions, please let me know!
-- / daniel.haxx.se ------------------------------------------------------------------- List admin: https://cool.haxx.se/list/listinfo/curl-library Etiquette: https://curl.haxx.se/mail/etiquette.html
