{"action":"created","issue":{"url":"https://api.github.com/repos/envoyproxy/envoy-filter-example/issues/56","repository_url":"https://api.github.com/repos/envoyproxy/envoy-filter-example","labels_url":"https://api.github.com/repos/envoyproxy/envoy-filter-example/issues/56/labels{/name}","comments_url":"https://api.github.com/repos/envoyproxy/envoy-filter-example/issues/56/comments","events_url":"https://api.github.com/repos/envoyproxy/envoy-filter-example/issues/56/events","html_url":"https://github.com/envoyproxy/envoy-filter-example/issues/56","id":357121234,"node_id":"MDU6SXNzdWUzNTcxMjEyMzQ=","number":56,"title":"Integration test fails for http filter example","user":{"login":"gochist","id":282159,"node_id":"MDQ6VXNlcjI4MjE1OQ==","avatar_url":"https://avatars1.githubusercontent.com/u/282159?v=4","gravatar_id":"","url":"https://api.github.com/users/gochist","html_url":"https://github.com/gochist","followers_url":"https://api.github.com/users/gochist/followers","following_url":"https://api.github.com/users/gochist/following{/other_user}","gists_url":"https://api.github.com/users/gochist/gists{/gist_id}","starred_url":"https://api.github.com/users/gochist/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gochist/subscriptions","organizations_url":"https://api.github.com/users/gochist/orgs","repos_url":"https://api.github.com/users/gochist/repos","events_url":"https://api.github.com/users/gochist/events{/privacy}","received_events_url":"https://api.github.com/users/gochist/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2018-09-05T08:33:16Z","updated_at":"2018-09-05T10:59:45Z","closed_at":null,"author_association":"NONE","body":"Command \r\n```bash\r\n$ bazel test //http-filter-example:http_filter_integration_test \r\n```\r\n\r\nOutput\r\n```\r\nINFO: Analysed target //http-filter-example:http_filter_integration_test (0 packages loaded).\r\nINFO: Found 1 test target...\r\nERROR: /home/june/git/envoy-filter-example/http-filter-example/BUILD:47:1: C++ compilation of rule '//http-filter-example:http_filter_integration_test_lib' failed (Exit 1)\r\nhttp-filter-example/http_filter_integration_test.cc: In member function 'virtual void Envoy::HttpFilterSampleIntegrationTest_Test1_Test::TestBody()':\r\nhttp-filter-example/http_filter_integration_test.cc:33:57: error: no matching function for call to 'Envoy::IntegrationCodecClient::makeHeaderOnlyRequest(Envoy::Http::TestHeaderMapImpl&, Envoy::IntegrationStreamDecoder&)'\r\n   codec_client->makeHeaderOnlyRequest(headers, *response);\r\n                                                         ^\r\nIn file included from http-filter-example/http_filter_integration_test.cc:1:0:\r\nexternal/envoy/test/integration/http_integration.h:25:31: note: candidate: Envoy::IntegrationStreamDecoderPtr Envoy::IntegrationCodecClient::makeHeaderOnlyRequest(const Envoy::Http::HeaderMap&)\r\n   IntegrationStreamDecoderPtr makeHeaderOnlyRequest(const Http::HeaderMap& headers);\r\n                               ^\r\nexternal/envoy/test/integration/http_integration.h:25:31: note:   candidate expects 1 argument, 2 provided\r\nhttp-filter-example/http_filter_integration_test.cc:34:84: error: no matching function for call to 'Envoy::FakeUpstream::waitForHttpConnection(Envoy::Event::Dispatcher&)'\r\n   fake_upstream_connection = fake_upstreams_[0]->waitForHttpConnection(*dispatcher_);\r\n                                                                                    ^\r\nIn file included from external/envoy/test/integration/integration.h:11:0,\r\n                 from external/envoy/test/integration/http_integration.h:10,\r\n                 from http-filter-example/http_filter_integration_test.cc:1:\r\nexternal/envoy/test/integration/fake_upstream.h:512:3: note: candidate: testing::AssertionResult Envoy::FakeUpstream::waitForHttpConnection(Envoy::Event::Dispatcher&, Envoy::FakeHttpConnectionPtr&, std::chrono::milliseconds)\r\n   waitForHttpConnection(Event::Dispatcher& client_dispatcher, FakeHttpConnectionPtr& connection,\r\n   ^\r\nexternal/envoy/test/integration/fake_upstream.h:512:3: note:   candidate expects 3 arguments, 1 provided\r\nexternal/envoy/test/integration/fake_upstream.h:524:3: note: candidate: static testing::AssertionResult Envoy::FakeUpstream::waitForHttpConnection(Envoy::Event::Dispatcher&, std::vector<std::unique_ptr<Envoy::FakeUpstream> >&, Envoy::FakeHttpConnectionPtr&, std::chrono::milliseconds)\r\n   waitForHttpConnection(Event::Dispatcher& client_dispatcher,\r\n   ^\r\nexternal/envoy/test/integration/fake_upstream.h:524:3: note:   candidate expects 4 arguments, 1 provided\r\nhttp-filter-example/http_filter_integration_test.cc:35:75: error: no matching function for call to 'Envoy::FakeHttpConnection::waitForNewStream(Envoy::Event::Dispatcher&)'\r\n   request_stream = fake_upstream_connection->waitForNewStream(*dispatcher_);\r\n                                                                           ^\r\nIn file included from external/envoy/test/integration/integration.h:11:0,\r\n                 from external/envoy/test/integration/http_integration.h:10,\r\n                 from http-filter-example/http_filter_integration_test.cc:1:\r\nexternal/envoy/test/integration/fake_upstream.h:401:3: note: candidate: testing::AssertionResult Envoy::FakeHttpConnection::waitForNewStream(Envoy::Event::Dispatcher&, Envoy::FakeStreamPtr&, bool, std::chrono::milliseconds)\r\n   waitForNewStream(Event::Dispatcher& client_dispatcher, FakeStreamPtr& stream,\r\n   ^\r\nexternal/envoy/test/integration/fake_upstream.h:401:3: note:   candidate expects 4 arguments, 1 provided\r\nTarget //http-filter-example:http_filter_integration_test failed to build\r\nUse --verbose_failures to see the command lines of failed build steps.\r\nINFO: Elapsed time: 320.534s, Critical Path: 225.40s\r\nINFO: 390 processes: 390 linux-sandbox.\r\nFAILED: Build did NOT complete successfully\r\n\r\nFAILED: Build did NOT complete successfully\r\n\r\n```"},"comment":{"url":"https://api.github.com/repos/envoyproxy/envoy-filter-example/issues/comments/418689717","html_url":"https://github.com/envoyproxy/envoy-filter-example/issues/56#issuecomment-418689717","issue_url":"https://api.github.com/repos/envoyproxy/envoy-filter-example/issues/56","id":418689717,"node_id":"MDEyOklzc3VlQ29tbWVudDQxODY4OTcxNw==","user":{"login":"dio","id":73152,"node_id":"MDQ6VXNlcjczMTUy","avatar_url":"https://avatars3.githubusercontent.com/u/73152?v=4","gravatar_id":"","url":"https://api.github.com/users/dio","html_url":"https://github.com/dio","followers_url":"https://api.github.com/users/dio/followers","following_url":"https://api.github.com/users/dio/following{/other_user}","gists_url":"https://api.github.com/users/dio/gists{/gist_id}","starred_url":"https://api.github.com/users/dio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dio/subscriptions","organizations_url":"https://api.github.com/users/dio/orgs","repos_url":"https://api.github.com/users/dio/repos","events_url":"https://api.github.com/users/dio/events{/privacy}","received_events_url":"https://api.github.com/users/dio/received_events","type":"User","site_admin":false},"created_at":"2018-09-05T10:59:45Z","updated_at":"2018-09-05T10:59:45Z","author_association":"MEMBER","body":"@gochist it seems we need to update the test, since yeah that `makeHeaderOnlyRequest`'s signature has changed.\r\n\r\nProbably you can try the following patch and send a PR?\r\n\r\n```diff\r\ndiff --git a/http-filter-example/http_filter_integration_test.cc b/http-filter-example/http_filter_integration_test.cc\r\nindex c2896b3..ebd08f3 100644\r\n--- a/http-filter-example/http_filter_integration_test.cc\r\n+++ b/http-filter-example/http_filter_integration_test.cc\r\n@@ -26,11 +26,10 @@ TEST_P(HttpFilterSampleIntegrationTest, Test1) {\r\n\r\n   IntegrationCodecClientPtr codec_client;\r\n   FakeHttpConnectionPtr fake_upstream_connection;\r\n-  IntegrationStreamDecoderPtr response(new IntegrationStreamDecoder(*dispatcher_));\r\n   FakeStreamPtr request_stream;\r\n\r\n   codec_client = makeHttpConnection(lookupPort(\"http\"));\r\n-  codec_client->makeHeaderOnlyRequest(headers, *response);\r\n+  auto response = codec_client->makeHeaderOnlyRequest(headers);\r\n   fake_upstream_connection = fake_upstreams_[0]->waitForHttpConnection(*dispatcher_);\r\n   request_stream = fake_upstream_connection->waitForNewStream(*dispatcher_);\r\n   request_stream->waitForEndStream(*dispatcher_);\r\n```\r\n\r\nFWIW, if you're interested to have an outside-tree filter project, that potentially has multiple filters, you can check https://github.com/dio/envoy-filter-diy/commits/master. Each commit has, I believe, useful information e.g. https://github.com/dio/envoy-filter-diy/commit/e610349397a6f1bc0dbd8cc21f6c0da434e8b258."}}
{"actor":{"display_login":"dio"}}