OLD | NEW |
---|---|
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include <algorithm> | 5 #include <algorithm> |
6 | 6 |
7 #include "base/basictypes.h" | 7 #include "base/basictypes.h" |
8 #include "base/pickle.h" | 8 #include "base/pickle.h" |
9 #include "base/time.h" | 9 #include "base/time.h" |
10 #include "net/http/http_response_headers.h" | 10 #include "net/http/http_response_headers.h" |
(...skipping 1606 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1617 | 1617 |
1618 std::string name(tests[i].to_remove); | 1618 std::string name(tests[i].to_remove); |
1619 parsed->RemoveHeader(name); | 1619 parsed->RemoveHeader(name); |
1620 | 1620 |
1621 std::string resulting_headers; | 1621 std::string resulting_headers; |
1622 parsed->GetNormalizedHeaders(&resulting_headers); | 1622 parsed->GetNormalizedHeaders(&resulting_headers); |
1623 EXPECT_EQ(std::string(tests[i].expected_headers), resulting_headers); | 1623 EXPECT_EQ(std::string(tests[i].expected_headers), resulting_headers); |
1624 } | 1624 } |
1625 } | 1625 } |
1626 | 1626 |
1627 TEST(HttpResponseHeadersTest, RemoveIndividualHeader) { | |
1628 const struct { | |
1629 const char* orig_headers; | |
1630 const char* to_remove_name; | |
1631 const char* to_remove_value; | |
1632 const char* expected_headers; | |
1633 } tests[] = { | |
1634 { "HTTP/1.1 200 OK\n" | |
1635 "connection: keep-alive\n" | |
1636 "Cache-control: max-age=10000\n" | |
1637 "Content-Length: 450\n", | |
1638 | |
1639 "Content-Length", | |
1640 | |
1641 "450", | |
1642 | |
1643 "HTTP/1.1 200 OK\n" | |
1644 "connection: keep-alive\n" | |
1645 "Cache-control: max-age=10000\n" | |
1646 }, | |
1647 { "HTTP/1.1 200 OK\n" | |
1648 "connection: keep-alive \n" | |
1649 "Content-Length : 450 \n" | |
1650 "Cache-control: max-age=10000\n", | |
1651 | |
1652 "Content-Length", | |
1653 | |
1654 "450", | |
1655 | |
1656 "HTTP/1.1 200 OK\n" | |
1657 "connection: keep-alive\n" | |
1658 "Cache-control: max-age=10000\n" | |
1659 }, | |
1660 }; | |
Matt Perry
2011/11/11 22:05:08
how about a test case where the name matches but t
battre
2011/11/17 12:01:04
Done.
| |
1661 | |
1662 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(tests); ++i) { | |
1663 std::string orig_headers(tests[i].orig_headers); | |
1664 HeadersToRaw(&orig_headers); | |
1665 scoped_refptr<net::HttpResponseHeaders> parsed( | |
1666 new net::HttpResponseHeaders(orig_headers)); | |
1667 | |
1668 std::string name(tests[i].to_remove_name); | |
1669 std::string value(tests[i].to_remove_value); | |
1670 parsed->RemoveHeader(name, value); | |
1671 | |
1672 std::string resulting_headers; | |
1673 parsed->GetNormalizedHeaders(&resulting_headers); | |
1674 EXPECT_EQ(std::string(tests[i].expected_headers), resulting_headers); | |
1675 } | |
1676 } | |
1677 | |
1627 TEST(HttpResponseHeadersTest, ReplaceStatus) { | 1678 TEST(HttpResponseHeadersTest, ReplaceStatus) { |
1628 const struct { | 1679 const struct { |
1629 const char* orig_headers; | 1680 const char* orig_headers; |
1630 const char* new_status; | 1681 const char* new_status; |
1631 const char* expected_headers; | 1682 const char* expected_headers; |
1632 } tests[] = { | 1683 } tests[] = { |
1633 { "HTTP/1.1 206 Partial Content\n" | 1684 { "HTTP/1.1 206 Partial Content\n" |
1634 "connection: keep-alive\n" | 1685 "connection: keep-alive\n" |
1635 "Cache-control: max-age=10000\n" | 1686 "Cache-control: max-age=10000\n" |
1636 "Content-Length: 450\n", | 1687 "Content-Length: 450\n", |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1671 new net::HttpResponseHeaders(orig_headers)); | 1722 new net::HttpResponseHeaders(orig_headers)); |
1672 | 1723 |
1673 std::string name(tests[i].new_status); | 1724 std::string name(tests[i].new_status); |
1674 parsed->ReplaceStatusLine(name); | 1725 parsed->ReplaceStatusLine(name); |
1675 | 1726 |
1676 std::string resulting_headers; | 1727 std::string resulting_headers; |
1677 parsed->GetNormalizedHeaders(&resulting_headers); | 1728 parsed->GetNormalizedHeaders(&resulting_headers); |
1678 EXPECT_EQ(std::string(tests[i].expected_headers), resulting_headers); | 1729 EXPECT_EQ(std::string(tests[i].expected_headers), resulting_headers); |
1679 } | 1730 } |
1680 } | 1731 } |
OLD | NEW |