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

Unified Diff: net/spdy/spdy_protocol_test.cc

Issue 2544343003: Use wire values in SpdySettingsIds. (Closed)
Patch Set: 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
« no previous file with comments | « net/spdy/spdy_protocol.cc ('k') | net/spdy/spdy_session.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/spdy/spdy_protocol_test.cc
diff --git a/net/spdy/spdy_protocol_test.cc b/net/spdy/spdy_protocol_test.cc
index c9f3161f9feb77abfde32b98e543aadbdd77945f..77d6066c1d01e49f5aee52c309444a167052c7ec 100644
--- a/net/spdy/spdy_protocol_test.cc
+++ b/net/spdy/spdy_protocol_test.cc
@@ -15,6 +15,7 @@
#include "testing/gtest/include/gtest/gtest.h"
using std::ostream;
+using std::string;
namespace net {
@@ -87,19 +88,19 @@ TEST(SpdyDataIRTest, Construct) {
EXPECT_NE(base::StringPiece(d1.data(), d1.data_len()), s2);
// Confirm copies a const string.
- const std::string foo = "foo";
+ const string foo = "foo";
SpdyDataIR d3(3, foo);
EXPECT_EQ(foo, d3.data());
// Confirm copies a non-const string.
- std::string bar = "bar";
+ string bar = "bar";
SpdyDataIR d4(4, bar);
EXPECT_EQ("bar", bar);
EXPECT_EQ("bar", base::StringPiece(d4.data(), d4.data_len()));
// Confirm moves an rvalue reference. Note that the test string "baz" is too
// short to trigger the move optimization, and instead a copy occurs.
- std::string baz = "the quick brown fox";
+ string baz = "the quick brown fox";
SpdyDataIR d5(5, std::move(baz));
EXPECT_EQ("", baz);
EXPECT_EQ(base::StringPiece(d5.data(), d5.data_len()), "the quick brown fox");
@@ -153,6 +154,48 @@ TEST(SpdyProtocolTest, Http2WeightToSpdy3Priority) {
EXPECT_EQ(7u, Http2WeightToSpdy3Priority(1));
}
+TEST(SpdyProtocolTest, ParseSettingsId) {
+ SpdySettingsIds setting_id;
+ EXPECT_FALSE(SpdyConstants::ParseSettingsId(0, &setting_id));
+ EXPECT_TRUE(SpdyConstants::ParseSettingsId(1, &setting_id));
+ EXPECT_EQ(SETTINGS_HEADER_TABLE_SIZE, setting_id);
+ EXPECT_TRUE(SpdyConstants::ParseSettingsId(2, &setting_id));
+ EXPECT_EQ(SETTINGS_ENABLE_PUSH, setting_id);
+ EXPECT_TRUE(SpdyConstants::ParseSettingsId(3, &setting_id));
+ EXPECT_EQ(SETTINGS_MAX_CONCURRENT_STREAMS, setting_id);
+ EXPECT_TRUE(SpdyConstants::ParseSettingsId(4, &setting_id));
+ EXPECT_EQ(SETTINGS_INITIAL_WINDOW_SIZE, setting_id);
+ EXPECT_TRUE(SpdyConstants::ParseSettingsId(5, &setting_id));
+ EXPECT_EQ(SETTINGS_MAX_FRAME_SIZE, setting_id);
+ EXPECT_TRUE(SpdyConstants::ParseSettingsId(6, &setting_id));
+ EXPECT_EQ(SETTINGS_MAX_HEADER_LIST_SIZE, setting_id);
+ EXPECT_FALSE(SpdyConstants::ParseSettingsId(7, &setting_id));
+}
+
+TEST(SpdyProtocolTest, SettingsIdToString) {
+ struct {
+ SpdySettingsIds setting_id;
+ bool expected_bool;
+ const string expected_string;
+ } test_cases[] = {
+ {static_cast<SpdySettingsIds>(0), false, "SETTINGS_UNKNOWN"},
+ {SETTINGS_HEADER_TABLE_SIZE, true, "SETTINGS_HEADER_TABLE_SIZE"},
+ {SETTINGS_ENABLE_PUSH, true, "SETTINGS_ENABLE_PUSH"},
+ {SETTINGS_MAX_CONCURRENT_STREAMS, true,
+ "SETTINGS_MAX_CONCURRENT_STREAMS"},
+ {SETTINGS_INITIAL_WINDOW_SIZE, true, "SETTINGS_INITIAL_WINDOW_SIZE"},
+ {SETTINGS_MAX_FRAME_SIZE, true, "SETTINGS_MAX_FRAME_SIZE"},
+ {SETTINGS_MAX_HEADER_LIST_SIZE, true, "SETTINGS_MAX_HEADER_LIST_SIZE"},
+ {static_cast<SpdySettingsIds>(7), false, "SETTINGS_UNKNOWN"}};
+ for (auto test_case : test_cases) {
+ const char* settings_id_string;
+ EXPECT_EQ(test_case.expected_bool,
+ SpdyConstants::SettingsIdToString(test_case.setting_id,
+ &settings_id_string));
+ EXPECT_EQ(test_case.expected_string, settings_id_string);
+ }
+}
+
TEST(SpdyStreamPrecedenceTest, Basic) {
SpdyStreamPrecedence spdy3_prec(2);
EXPECT_TRUE(spdy3_prec.is_spdy3_priority());
« no previous file with comments | « net/spdy/spdy_protocol.cc ('k') | net/spdy/spdy_session.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698