| Index: net/spdy/spdy_network_transaction_spdy21_unittest.cc
|
| ===================================================================
|
| --- net/spdy/spdy_network_transaction_spdy21_unittest.cc (revision 127896)
|
| +++ net/spdy/spdy_network_transaction_spdy21_unittest.cc (working copy)
|
| @@ -4455,30 +4455,27 @@
|
| EXPECT_EQ("HTTP/1.1 200 OK", out.status_line);
|
| EXPECT_EQ("hello!", out.response_data);
|
|
|
| - // TODO(rtenneti): Persist spdy settings.
|
| -#ifdef PERSIST_SPDY_SETTINGS
|
| {
|
| // Verify we had two persisted settings.
|
| - spdy::SpdySettings saved_settings =
|
| + const spdy::SettingsMap& settings_map =
|
| spdy_session_pool->http_server_properties()->GetSpdySettings(
|
| host_port_pair);
|
| - ASSERT_EQ(2u, saved_settings.size());
|
| + ASSERT_EQ(2u, settings_map.size());
|
|
|
| // Verify the first persisted setting.
|
| - spdy::SpdySetting setting = saved_settings.front();
|
| - saved_settings.pop_front();
|
| - EXPECT_EQ(spdy::SETTINGS_FLAG_PERSISTED, setting.first.flags());
|
| - EXPECT_EQ(kSampleId1, setting.first.id());
|
| - EXPECT_EQ(kSampleValue1, setting.second);
|
| + spdy::SettingsMap::const_iterator it1 = settings_map.find(kSampleId1);
|
| + EXPECT_NE(it1, settings_map.end());
|
| + spdy::SettingsFlagsAndValue flags_and_value1 = it1->second;
|
| + EXPECT_EQ(spdy::SETTINGS_FLAG_PERSISTED, flags_and_value1.first);
|
| + EXPECT_EQ(kSampleValue1, flags_and_value1.second);
|
|
|
| // Verify the second persisted setting.
|
| - setting = saved_settings.front();
|
| - saved_settings.pop_front();
|
| - EXPECT_EQ(spdy::SETTINGS_FLAG_PERSISTED, setting.first.flags());
|
| - EXPECT_EQ(kSampleId3, setting.first.id());
|
| - EXPECT_EQ(kSampleValue3, setting.second);
|
| + spdy::SettingsMap::const_iterator it3 = settings_map.find(kSampleId3);
|
| + EXPECT_NE(it3, settings_map.end());
|
| + spdy::SettingsFlagsAndValue flags_and_value3 = it3->second;
|
| + EXPECT_EQ(spdy::SETTINGS_FLAG_PERSISTED, flags_and_value3.first);
|
| + EXPECT_EQ(kSampleValue3, flags_and_value3.second);
|
| }
|
| -#endif
|
| }
|
|
|
| // Test that when there are settings saved that they are sent back to the
|
| @@ -4518,27 +4515,37 @@
|
| unsigned int kSampleValue2 = 0x0c0c0c0c;
|
| // Manually insert settings into the SpdySettingsStorage here.
|
| {
|
| - spdy::SpdySettings settings;
|
| // First add a persisted setting
|
| - spdy::SettingsFlagsAndId setting1(spdy::SETTINGS_FLAG_PLEASE_PERSIST,
|
| - kSampleId1);
|
| - settings.push_back(std::make_pair(setting1, kSampleValue1));
|
| + spdy::SettingsFlagsAndValue flags_and_value1(
|
| + spdy::SETTINGS_FLAG_PLEASE_PERSIST, kSampleValue1);
|
| + spdy_session_pool->http_server_properties()->SetSpdySetting(
|
| + host_port_pair, kSampleId1, flags_and_value1);
|
| +
|
| // Next add another persisted setting
|
| - spdy::SettingsFlagsAndId setting2(spdy::SETTINGS_FLAG_PLEASE_PERSIST,
|
| - kSampleId2);
|
| - settings.push_back(std::make_pair(setting2, kSampleValue2));
|
| -
|
| - spdy_session_pool->http_server_properties()->SetSpdySettings(
|
| - host_port_pair, settings);
|
| + spdy::SettingsFlagsAndValue flags_and_value2(
|
| + spdy::SETTINGS_FLAG_PLEASE_PERSIST, kSampleValue2);
|
| + spdy_session_pool->http_server_properties()->SetSpdySetting(
|
| + host_port_pair, kSampleId2, flags_and_value2);
|
| }
|
|
|
| EXPECT_EQ(2u, spdy_session_pool->http_server_properties()->GetSpdySettings(
|
| host_port_pair).size());
|
|
|
| // Construct the SETTINGS frame.
|
| - const spdy::SpdySettings& settings =
|
| + const spdy::SettingsMap& settings_map =
|
| spdy_session_pool->http_server_properties()->GetSpdySettings(
|
| host_port_pair);
|
| +
|
| + spdy::SpdySettings settings;
|
| + for (spdy::SettingsMap::const_iterator i = settings_map.begin(),
|
| + end = settings_map.end(); i != end; ++i) {
|
| + const uint32 id = i->first;
|
| + const uint8 flags = i->second.first;
|
| + const uint32 val = i->second.second;
|
| + spdy::SettingsFlagsAndId flags_and_id(flags, id);
|
| + settings.push_back(spdy::SpdySetting(flags_and_id, val));
|
| + }
|
| +
|
| scoped_ptr<spdy::SpdyFrame> settings_frame(ConstructSpdySettings(settings));
|
|
|
| // Construct the request.
|
| @@ -4577,24 +4584,24 @@
|
|
|
| {
|
| // Verify we had two persisted settings.
|
| - spdy::SpdySettings saved_settings =
|
| + const spdy::SettingsMap& settings_map =
|
| spdy_session_pool->http_server_properties()->GetSpdySettings(
|
| host_port_pair);
|
| - ASSERT_EQ(2u, saved_settings.size());
|
| + ASSERT_EQ(2u, settings_map.size());
|
|
|
| // Verify the first persisted setting.
|
| - spdy::SpdySetting setting = saved_settings.front();
|
| - saved_settings.pop_front();
|
| - EXPECT_EQ(spdy::SETTINGS_FLAG_PERSISTED, setting.first.flags());
|
| - EXPECT_EQ(kSampleId1, setting.first.id());
|
| - EXPECT_EQ(kSampleValue1, setting.second);
|
| + spdy::SettingsMap::const_iterator it1 = settings_map.find(kSampleId1);
|
| + EXPECT_NE(it1, settings_map.end());
|
| + spdy::SettingsFlagsAndValue flags_and_value1 = it1->second;
|
| + EXPECT_EQ(spdy::SETTINGS_FLAG_PERSISTED, flags_and_value1.first);
|
| + EXPECT_EQ(kSampleValue1, flags_and_value1.second);
|
|
|
| // Verify the second persisted setting.
|
| - setting = saved_settings.front();
|
| - saved_settings.pop_front();
|
| - EXPECT_EQ(spdy::SETTINGS_FLAG_PERSISTED, setting.first.flags());
|
| - EXPECT_EQ(kSampleId2, setting.first.id());
|
| - EXPECT_EQ(kSampleValue2, setting.second);
|
| + spdy::SettingsMap::const_iterator it2 = settings_map.find(kSampleId2);
|
| + EXPECT_NE(it2, settings_map.end());
|
| + spdy::SettingsFlagsAndValue flags_and_value2 = it2->second;
|
| + EXPECT_EQ(spdy::SETTINGS_FLAG_PERSISTED, flags_and_value2.first);
|
| + EXPECT_EQ(kSampleValue2, flags_and_value2.second);
|
| }
|
| }
|
|
|
|
|