| Index: net/base/sdch_filter_unittest.cc
 | 
| ===================================================================
 | 
| --- net/base/sdch_filter_unittest.cc	(revision 4002)
 | 
| +++ net/base/sdch_filter_unittest.cc	(working copy)
 | 
| @@ -2,8 +2,6 @@
 | 
|  // Use of this source code is governed by a BSD-style license that can be
 | 
|  // found in the LICENSE file.
 | 
|  
 | 
| -// TODO(jar): Change file name to *_unittest.cc (with double "t').
 | 
| -
 | 
|  #include <algorithm>
 | 
|  #include <string>
 | 
|  #include <vector>
 | 
| @@ -130,12 +128,11 @@
 | 
|  //------------------------------------------------------------------------------
 | 
|  
 | 
|  TEST_F(SdchFilterTest, BasicBadDictionary) {
 | 
| -  std::vector<std::string> filters;
 | 
| -  filters.push_back("sdch");
 | 
| +  std::vector<Filter::FilterType> filter_types;
 | 
| +  filter_types.push_back(Filter::FILTER_TYPE_SDCH);
 | 
|    const int kInputBufferSize(30);
 | 
|    char output_buffer[20];
 | 
| -  scoped_ptr<Filter> filter(Filter::Factory(filters, "missing-mime",
 | 
| -                                            kInputBufferSize));
 | 
| +  scoped_ptr<Filter> filter(Filter::Factory(filter_types, kInputBufferSize));
 | 
|    std::string url_string("http://ignore.com");
 | 
|    filter->SetURL(GURL(url_string));
 | 
|  
 | 
| @@ -225,13 +222,12 @@
 | 
|  
 | 
|    std::string compressed(NewSdchCompressedData(dictionary));
 | 
|  
 | 
| -  std::vector<std::string> filters;
 | 
| -  filters.push_back("sdch");
 | 
| +  std::vector<Filter::FilterType> filter_types;
 | 
| +  filter_types.push_back(Filter::FILTER_TYPE_SDCH);
 | 
|  
 | 
|    // Decode with a large buffer (larger than test input, or compressed data).
 | 
|    const int kInputBufferSize(100);
 | 
| -  scoped_ptr<Filter> filter(Filter::Factory(filters, "missing-mime",
 | 
| -                                            kInputBufferSize));
 | 
| +  scoped_ptr<Filter> filter(Filter::Factory(filter_types, kInputBufferSize));
 | 
|    filter->SetURL(url);
 | 
|  
 | 
|    size_t feed_block_size = 100;
 | 
| @@ -242,7 +238,7 @@
 | 
|    EXPECT_EQ(output, expanded_);
 | 
|  
 | 
|    // Decode with really small buffers (size 1) to check for edge effects.
 | 
| -  filter.reset((Filter::Factory(filters, "missing-mime", kInputBufferSize)));
 | 
| +  filter.reset((Filter::Factory(filter_types, kInputBufferSize)));
 | 
|    filter->SetURL(url);
 | 
|  
 | 
|    feed_block_size = 1;
 | 
| @@ -265,14 +261,13 @@
 | 
|  
 | 
|    std::string compressed(NewSdchCompressedData(dictionary));
 | 
|  
 | 
| -  std::vector<std::string> filters;
 | 
| -  filters.push_back("sdch");
 | 
| +  std::vector<Filter::FilterType> filter_types;
 | 
| +  filter_types.push_back(Filter::FILTER_TYPE_SDCH);
 | 
|    const int kInputBufferSize(100);
 | 
|  
 | 
|    // Decode with content arriving from the "wrong" domain.
 | 
|    // This tests CanSet() in the sdch_manager_->
 | 
| -  scoped_ptr<Filter> filter((Filter::Factory(filters, "missing-mime",
 | 
| -                                             kInputBufferSize)));
 | 
| +  scoped_ptr<Filter> filter((Filter::Factory(filter_types,  kInputBufferSize)));
 | 
|    GURL wrong_domain_url("http://www.wrongdomain.com");
 | 
|    filter->SetURL(wrong_domain_url);
 | 
|  
 | 
| @@ -307,13 +302,12 @@
 | 
|  
 | 
|    std::string compressed_for_path(NewSdchCompressedData(dictionary_with_path));
 | 
|  
 | 
| -  std::vector<std::string> filters;
 | 
| -  filters.push_back("sdch");
 | 
| +  std::vector<Filter::FilterType> filter_types;
 | 
| +  filter_types.push_back(Filter::FILTER_TYPE_SDCH);
 | 
|    const int kInputBufferSize(100);
 | 
|  
 | 
|    // Test decode the path data, arriving from a valid path.
 | 
| -  scoped_ptr<Filter> filter((Filter::Factory(filters, "missing-mime",
 | 
| -                            kInputBufferSize)));
 | 
| +  scoped_ptr<Filter> filter((Filter::Factory(filter_types, kInputBufferSize)));
 | 
|    filter->SetURL(GURL(url_string + path));
 | 
|  
 | 
|    size_t feed_block_size = 100;
 | 
| @@ -325,7 +319,7 @@
 | 
|    EXPECT_EQ(output, expanded_);
 | 
|  
 | 
|    // Test decode the path data, arriving from a invalid path.
 | 
| -  filter.reset((Filter::Factory(filters, "missing-mime", kInputBufferSize)));
 | 
| +  filter.reset((Filter::Factory(filter_types, kInputBufferSize)));
 | 
|    filter->SetURL(GURL(url_string));
 | 
|  
 | 
|    feed_block_size = 100;
 | 
| @@ -361,13 +355,12 @@
 | 
|  
 | 
|    std::string compressed_for_port(NewSdchCompressedData(dictionary_with_port));
 | 
|  
 | 
| -  std::vector<std::string> filters;
 | 
| -  filters.push_back("sdch");
 | 
| +  std::vector<Filter::FilterType> filter_types;
 | 
| +  filter_types.push_back(Filter::FILTER_TYPE_SDCH);
 | 
|    const int kInputBufferSize(100);
 | 
|  
 | 
|    // Test decode the port data, arriving from a valid port.
 | 
| -  scoped_ptr<Filter> filter((Filter::Factory(filters, "missing-mime",
 | 
| -                                             kInputBufferSize)));
 | 
| +  scoped_ptr<Filter> filter((Filter::Factory(filter_types, kInputBufferSize)));
 | 
|    filter->SetURL(GURL(url_string + ":" + port));
 | 
|  
 | 
|    size_t feed_block_size = 100;
 | 
| @@ -378,7 +371,7 @@
 | 
|    EXPECT_EQ(output, expanded_);
 | 
|  
 | 
|    // Test decode the port data, arriving from a valid (default) port.
 | 
| -  filter.reset((Filter::Factory(filters, "missing-mime", kInputBufferSize)));
 | 
| +  filter.reset((Filter::Factory(filter_types, kInputBufferSize)));
 | 
|    filter->SetURL(GURL(url_string));  // Default port.
 | 
|  
 | 
|    feed_block_size = 100;
 | 
| @@ -389,7 +382,7 @@
 | 
|    EXPECT_EQ(output, expanded_);
 | 
|  
 | 
|    // Test decode the port data, arriving from a invalid port.
 | 
| -  filter.reset((Filter::Factory(filters, "missing-mime", kInputBufferSize)));
 | 
| +  filter.reset((Filter::Factory(filter_types, kInputBufferSize)));
 | 
|    filter->SetURL(GURL(url_string + ":" + port + "1"));
 | 
|  
 | 
|    feed_block_size = 100;
 | 
| @@ -480,14 +473,13 @@
 | 
|    std::string gzip_compressed_sdch = gzip_compress(sdch_compressed);
 | 
|  
 | 
|    // Construct a chained filter.
 | 
| -  std::vector<std::string> filters;
 | 
| -  filters.push_back("sdch");
 | 
| -  filters.push_back("gzip");
 | 
| +  std::vector<Filter::FilterType> filter_types;
 | 
| +  filter_types.push_back(Filter::FILTER_TYPE_SDCH);
 | 
| +  filter_types.push_back(Filter::FILTER_TYPE_GZIP);
 | 
|  
 | 
|    // First try with a large buffer (larger than test input, or compressed data).
 | 
|    const int kInputBufferSize(100);
 | 
| -  scoped_ptr<Filter> filter(Filter::Factory(filters, "missing-mime",
 | 
| -                                            kInputBufferSize));
 | 
| +  scoped_ptr<Filter> filter(Filter::Factory(filter_types, kInputBufferSize));
 | 
|    filter->SetURL(url);
 | 
|  
 | 
|    // Verify that chained filter is waiting for data.
 | 
| @@ -504,7 +496,7 @@
 | 
|    EXPECT_EQ(output, expanded_);
 | 
|  
 | 
|    // Next try with a tiny buffer to cover edge effects.
 | 
| -  filter.reset(Filter::Factory(filters, "missing-mime", kInputBufferSize));
 | 
| +  filter.reset(Filter::Factory(filter_types, kInputBufferSize));
 | 
|    filter->SetURL(url);
 | 
|  
 | 
|    feed_block_size = 1;
 | 
| @@ -530,15 +522,15 @@
 | 
|    // Use Gzip to compress the sdch sdch_compressed data.
 | 
|    std::string gzip_compressed_sdch = gzip_compress(sdch_compressed);
 | 
|  
 | 
| -  // Only claim to have sdch content, but really usethe gzipped sdch content.
 | 
| +  // Only claim to have sdch content, but really use the gzipped sdch content.
 | 
|    // System should automatically add the missing (optional) gzip.
 | 
| -  std::vector<std::string> filters;
 | 
| -  filters.push_back("sdch");
 | 
| +  std::vector<Filter::FilterType> filter_types;
 | 
| +  filter_types.push_back(Filter::FILTER_TYPE_SDCH);
 | 
| +  Filter::FixupEncodingTypes(true, "anything/mime", &filter_types);
 | 
|  
 | 
|    // First try with a large buffer (larger than test input, or compressed data).
 | 
|    const int kInputBufferSize(100);
 | 
| -  scoped_ptr<Filter> filter(Filter::Factory(filters, "missing-mime",
 | 
| -                            kInputBufferSize));
 | 
| +  scoped_ptr<Filter> filter(Filter::Factory(filter_types, kInputBufferSize));
 | 
|    filter->SetURL(url);
 | 
|  
 | 
|    // Verify that chained filter is waiting for data.
 | 
| @@ -555,7 +547,7 @@
 | 
|    EXPECT_EQ(output, expanded_);
 | 
|  
 | 
|    // Next try with a tiny buffer to cover edge effects.
 | 
| -  filter.reset(Filter::Factory(filters, "missing-mime", kInputBufferSize));
 | 
| +  filter.reset(Filter::Factory(filter_types, kInputBufferSize));
 | 
|    filter->SetURL(url);
 | 
|  
 | 
|    feed_block_size = 1;
 | 
| @@ -589,56 +581,3 @@
 | 
|    EXPECT_FALSE(SdchManager::Global()->IsInSupportedDomain(test_url));
 | 
|    EXPECT_FALSE(SdchManager::Global()->IsInSupportedDomain(google_url));
 | 
|  }
 | 
| -
 | 
| -
 | 
| -// TODO(jar): move this sort of test into filter_unittest.cc, or
 | 
| -// url_request_http_job_unittest.cc if that is more applicable after refactoring
 | 
| -// to use array of enums rather than array of strings to express content
 | 
| -// encodings.
 | 
| -TEST_F(SdchFilterTest, ContentTypeId) {
 | 
| -  // Check for basic translation of Content-Encoding, including case variations.
 | 
| -  EXPECT_EQ(Filter::FILTER_TYPE_DEFLATE,
 | 
| -            Filter::ConvertEncodingToType("deflate", "nothing"));
 | 
| -  EXPECT_EQ(Filter::FILTER_TYPE_DEFLATE,
 | 
| -            Filter::ConvertEncodingToType("deflAte", "nothing"));
 | 
| -  EXPECT_EQ(Filter::FILTER_TYPE_GZIP,
 | 
| -            Filter::ConvertEncodingToType("gzip", "nothing"));
 | 
| -  EXPECT_EQ(Filter::FILTER_TYPE_GZIP,
 | 
| -            Filter::ConvertEncodingToType("GzIp", "nothing"));
 | 
| -  EXPECT_EQ(Filter::FILTER_TYPE_GZIP,
 | 
| -            Filter::ConvertEncodingToType("x-gzip", "nothing"));
 | 
| -  EXPECT_EQ(Filter::FILTER_TYPE_GZIP,
 | 
| -            Filter::ConvertEncodingToType("X-GzIp", "nothing"));
 | 
| -  EXPECT_EQ(Filter::FILTER_TYPE_BZIP2,
 | 
| -            Filter::ConvertEncodingToType("bzip2", "nothing"));
 | 
| -  EXPECT_EQ(Filter::FILTER_TYPE_BZIP2,
 | 
| -            Filter::ConvertEncodingToType("BZiP2", "nothing"));
 | 
| -  EXPECT_EQ(Filter::FILTER_TYPE_BZIP2,
 | 
| -            Filter::ConvertEncodingToType("x-bzip2", "nothing"));
 | 
| -  EXPECT_EQ(Filter::FILTER_TYPE_BZIP2,
 | 
| -            Filter::ConvertEncodingToType("X-BZiP2", "nothing"));
 | 
| -  EXPECT_EQ(Filter::FILTER_TYPE_SDCH,
 | 
| -            Filter::ConvertEncodingToType("sdch", "nothing"));
 | 
| -  EXPECT_EQ(Filter::FILTER_TYPE_SDCH,
 | 
| -            Filter::ConvertEncodingToType("sDcH", "nothing"));
 | 
| -  EXPECT_EQ(Filter::FILTER_TYPE_UNSUPPORTED,
 | 
| -            Filter::ConvertEncodingToType("weird", "nothing"));
 | 
| -  EXPECT_EQ(Filter::FILTER_TYPE_UNSUPPORTED,
 | 
| -            Filter::ConvertEncodingToType("strange", "nothing"));
 | 
| -
 | 
| -  // Check to see that apache bug (marking things as gzipped because of their
 | 
| -  // on-disk file type) is ignored.
 | 
| -  EXPECT_EQ(Filter::FILTER_TYPE_UNSUPPORTED,
 | 
| -            Filter::ConvertEncodingToType("gzip", "application/x-gzip"));
 | 
| -  EXPECT_EQ(Filter::FILTER_TYPE_UNSUPPORTED,
 | 
| -            Filter::ConvertEncodingToType("gzip", "application/gzip"));
 | 
| -  EXPECT_EQ(Filter::FILTER_TYPE_UNSUPPORTED,
 | 
| -            Filter::ConvertEncodingToType("gzip", "application/x-gunzip"));
 | 
| -
 | 
| -  EXPECT_EQ(Filter::FILTER_TYPE_UNSUPPORTED,
 | 
| -            Filter::ConvertEncodingToType("x-gzip", "application/x-gzip"));
 | 
| -  EXPECT_EQ(Filter::FILTER_TYPE_UNSUPPORTED,
 | 
| -            Filter::ConvertEncodingToType("x-gzip", "application/gzip"));
 | 
| -  EXPECT_EQ(Filter::FILTER_TYPE_UNSUPPORTED,
 | 
| -            Filter::ConvertEncodingToType("x-gzip", "application/x-gunzip"));
 | 
| -}
 | 
| 
 |