Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(129)

Unified Diff: net/http2/hpack/decoder/hpack_block_decoder_test.cc

Issue 2572343002: Use std::function instead of base::Callback in net/http2/. (Closed)
Patch Set: Remove unreachable return statements. Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: net/http2/hpack/decoder/hpack_block_decoder_test.cc
diff --git a/net/http2/hpack/decoder/hpack_block_decoder_test.cc b/net/http2/hpack/decoder/hpack_block_decoder_test.cc
index 421f0fc59dbbf15dfb3c595126fe0a16df803e4b..566963dcccf4fc346f73f21b889d577711093fe4 100644
--- a/net/http2/hpack/decoder/hpack_block_decoder_test.cc
+++ b/net/http2/hpack/decoder/hpack_block_decoder_test.cc
@@ -8,8 +8,6 @@
#include <sstream>
-#include "base/bind.h"
-#include "base/bind_helpers.h"
#include "net/http2/decoder/decode_buffer.h"
#include "net/http2/hpack/decoder/hpack_block_collector.h"
#include "net/http2/hpack/http2_hpack_constants.h"
@@ -29,31 +27,6 @@ namespace test {
namespace {
class HpackBlockDecoderTest : public RandomDecoderTest {
- public:
- AssertionResult VerifyExpected(const HpackBlockCollector& expected) {
- VERIFY_AND_RETURN_SUCCESS(collector_.VerifyEq(expected));
- }
-
- AssertionResult ValidateForSpecExample_C_2_1() {
- VERIFY_AND_RETURN_SUCCESS(collector_.ValidateSoleLiteralNameValueHeader(
- HpackEntryType::kIndexedLiteralHeader, false, "custom-key", false,
- "custom-header"));
- }
-
- AssertionResult ValidateForSpecExample_C_2_2() {
- VERIFY_AND_RETURN_SUCCESS(collector_.ValidateSoleLiteralValueHeader(
- HpackEntryType::kUnindexedLiteralHeader, 4, false, "/sample/path"));
- }
-
- AssertionResult ValidateForSpecExample_C_2_3() {
- VERIFY_AND_RETURN_SUCCESS(collector_.ValidateSoleLiteralNameValueHeader(
- HpackEntryType::kNeverIndexedLiteralHeader, false, "password", false,
- "secret"));
- }
-
- AssertionResult ValidateForSpecExample_C_2_4() {
- VERIFY_AND_RETURN_SUCCESS(collector_.ValidateSoleIndexedHeader(2));
- }
protected:
HpackBlockDecoderTest() : listener_(&collector_), decoder_(&listener_) {
@@ -112,9 +85,11 @@ class HpackBlockDecoderTest : public RandomDecoderTest {
// http://httpwg.org/specs/rfc7541.html#rfc.section.C.2.1
TEST_F(HpackBlockDecoderTest, SpecExample_C_2_1) {
- NoArgValidator do_check =
- base::Bind(&HpackBlockDecoderTest::ValidateForSpecExample_C_2_1,
- base::Unretained(this));
+ NoArgValidator do_check = [this]() {
James Synge 2017/01/05 21:39:06 Maybe: auto do_check = ... Or maybe we should ch
Bence 2017/01/06 01:42:40 I meant to do that in change 143046389, but overlo
+ VERIFY_AND_RETURN_SUCCESS(collector_.ValidateSoleLiteralNameValueHeader(
+ HpackEntryType::kIndexedLiteralHeader, false, "custom-key", false,
+ "custom-header"));
+ };
EXPECT_TRUE(
DecodeHpackExampleAndValidateSeveralWays(R"(
40 | == Literal indexed ==
@@ -126,14 +101,15 @@ TEST_F(HpackBlockDecoderTest, SpecExample_C_2_1) {
| custom-header
)",
ValidateDoneAndEmpty(do_check)));
- EXPECT_TRUE(do_check.Run());
+ EXPECT_TRUE(do_check());
}
// http://httpwg.org/specs/rfc7541.html#rfc.section.C.2.2
TEST_F(HpackBlockDecoderTest, SpecExample_C_2_2) {
- NoArgValidator do_check =
- base::Bind(&HpackBlockDecoderTest::ValidateForSpecExample_C_2_2,
- base::Unretained(this));
+ NoArgValidator do_check = [this]() {
+ VERIFY_AND_RETURN_SUCCESS(collector_.ValidateSoleLiteralValueHeader(
+ HpackEntryType::kUnindexedLiteralHeader, 4, false, "/sample/path"));
+ };
EXPECT_TRUE(
DecodeHpackExampleAndValidateSeveralWays(R"(
04 | == Literal not indexed ==
@@ -144,14 +120,16 @@ TEST_F(HpackBlockDecoderTest, SpecExample_C_2_2) {
| -> :path: /sample/path
)",
ValidateDoneAndEmpty(do_check)));
- EXPECT_TRUE(do_check.Run());
+ EXPECT_TRUE(do_check());
}
// http://httpwg.org/specs/rfc7541.html#rfc.section.C.2.3
TEST_F(HpackBlockDecoderTest, SpecExample_C_2_3) {
- NoArgValidator do_check =
- base::Bind(&HpackBlockDecoderTest::ValidateForSpecExample_C_2_3,
- base::Unretained(this));
+ NoArgValidator do_check = [this]() {
+ VERIFY_AND_RETURN_SUCCESS(collector_.ValidateSoleLiteralNameValueHeader(
+ HpackEntryType::kNeverIndexedLiteralHeader, false, "password", false,
+ "secret"));
+ };
EXPECT_TRUE(
DecodeHpackExampleAndValidateSeveralWays(R"(
10 | == Literal never indexed ==
@@ -162,14 +140,14 @@ TEST_F(HpackBlockDecoderTest, SpecExample_C_2_3) {
| -> password: secret
)",
ValidateDoneAndEmpty(do_check)));
- EXPECT_TRUE(do_check.Run());
+ EXPECT_TRUE(do_check());
}
// http://httpwg.org/specs/rfc7541.html#rfc.section.C.2.4
TEST_F(HpackBlockDecoderTest, SpecExample_C_2_4) {
- NoArgValidator do_check =
- base::Bind(&HpackBlockDecoderTest::ValidateForSpecExample_C_2_4,
- base::Unretained(this));
+ NoArgValidator do_check = [this]() {
+ VERIFY_AND_RETURN_SUCCESS(collector_.ValidateSoleIndexedHeader(2));
+ };
EXPECT_TRUE(
DecodeHpackExampleAndValidateSeveralWays(R"(
82 | == Indexed - Add ==
@@ -177,7 +155,7 @@ TEST_F(HpackBlockDecoderTest, SpecExample_C_2_4) {
| -> :method: GET
)",
ValidateDoneAndEmpty(do_check)));
- EXPECT_TRUE(do_check.Run());
+ EXPECT_TRUE(do_check());
}
// http://httpwg.org/specs/rfc7541.html#rfc.section.C.3.1
TEST_F(HpackBlockDecoderTest, SpecExample_C_3_1) {
@@ -205,11 +183,12 @@ TEST_F(HpackBlockDecoderTest, SpecExample_C_3_1) {
expected.ExpectIndexedHeader(4);
expected.ExpectNameIndexAndLiteralValue(HpackEntryType::kIndexedLiteralHeader,
1, false, "www.example.com");
- NoArgValidator do_check = base::Bind(&HpackBlockDecoderTest::VerifyExpected,
- base::Unretained(this), expected);
+ NoArgValidator do_check = [expected, this]() {
+ VERIFY_AND_RETURN_SUCCESS(collector_.VerifyEq(expected));
+ };
EXPECT_TRUE(DecodeHpackExampleAndValidateSeveralWays(
example, ValidateDoneAndEmpty(do_check)));
- EXPECT_TRUE(do_check.Run());
+ EXPECT_TRUE(do_check());
}
// http://httpwg.org/specs/rfc7541.html#rfc.section.C.5.1
@@ -254,11 +233,12 @@ TEST_F(HpackBlockDecoderTest, SpecExample_C_5_1) {
"Mon, 21 Oct 2013 20:13:21 GMT");
expected.ExpectNameIndexAndLiteralValue(HpackEntryType::kIndexedLiteralHeader,
46, false, "https://www.example.com");
- NoArgValidator do_check = base::Bind(&HpackBlockDecoderTest::VerifyExpected,
- base::Unretained(this), expected);
+ NoArgValidator do_check = [expected, this]() {
+ VERIFY_AND_RETURN_SUCCESS(collector_.VerifyEq(expected));
+ };
EXPECT_TRUE(DecodeHpackExampleAndValidateSeveralWays(
example, ValidateDoneAndEmpty(do_check)));
- EXPECT_TRUE(do_check.Run());
+ EXPECT_TRUE(do_check());
}
// Generate a bunch of HPACK block entries to expect, use those expectations
@@ -303,11 +283,12 @@ TEST_F(HpackBlockDecoderTest, Computed) {
HpackBlockBuilder hbb;
expected.AppendToHpackBlockBuilder(&hbb);
- NoArgValidator do_check = base::Bind(&HpackBlockDecoderTest::VerifyExpected,
- base::Unretained(this), expected);
+ NoArgValidator do_check = [expected, this]() {
+ VERIFY_AND_RETURN_SUCCESS(collector_.VerifyEq(expected));
+ };
EXPECT_TRUE(
DecodeAndValidateSeveralWays(hbb, ValidateDoneAndEmpty(do_check)));
- EXPECT_TRUE(do_check.Run());
+ EXPECT_TRUE(do_check());
}
} // namespace

Powered by Google App Engine
This is Rietveld 408576698