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

Side by Side Diff: net/filter/filter_unittest.cc

Issue 1545233002: Convert Pass()→std::move() in //net (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 12 months 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 unified diff | Download patch
« no previous file with comments | « net/extras/sqlite/sqlite_channel_id_store.cc ('k') | net/filter/mock_filter_context.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "net/filter/filter.h"
6
7 #include <utility>
8
5 #include "base/macros.h" 9 #include "base/macros.h"
6 #include "net/base/io_buffer.h" 10 #include "net/base/io_buffer.h"
7 #include "net/filter/filter.h"
8 #include "net/filter/mock_filter_context.h" 11 #include "net/filter/mock_filter_context.h"
9 #include "testing/gtest/include/gtest/gtest.h" 12 #include "testing/gtest/include/gtest/gtest.h"
10 13
11 namespace net { 14 namespace net {
12 15
13 namespace { 16 namespace {
14 17
15 class PassThroughFilter : public Filter { 18 class PassThroughFilter : public Filter {
16 public: 19 public:
17 PassThroughFilter() : Filter(FILTER_TYPE_UNSUPPORTED) {} 20 PassThroughFilter() : Filter(FILTER_TYPE_UNSUPPORTED) {}
(...skipping 30 matching lines...) Expand all
48 EXPECT_EQ(Filter::FILTER_TYPE_UNSUPPORTED, 51 EXPECT_EQ(Filter::FILTER_TYPE_UNSUPPORTED,
49 Filter::ConvertEncodingToType("strange")); 52 Filter::ConvertEncodingToType("strange"));
50 } 53 }
51 54
52 TEST(FilterTest, SdchEncoding) { 55 TEST(FilterTest, SdchEncoding) {
53 // Handle content encodings including SDCH. 56 // Handle content encodings including SDCH.
54 const std::string kTextHtmlMime("text/html"); 57 const std::string kTextHtmlMime("text/html");
55 MockFilterContext filter_context; 58 MockFilterContext filter_context;
56 // Empty handle indicates to filter that SDCH is active. 59 // Empty handle indicates to filter that SDCH is active.
57 filter_context.SetSdchResponse( 60 filter_context.SetSdchResponse(
58 SdchManager::CreateEmptyDictionarySetForTesting().Pass()); 61 SdchManager::CreateEmptyDictionarySetForTesting());
59 62
60 std::vector<Filter::FilterType> encoding_types; 63 std::vector<Filter::FilterType> encoding_types;
61 64
62 // Check for most common encoding, and verify it survives unchanged. 65 // Check for most common encoding, and verify it survives unchanged.
63 encoding_types.clear(); 66 encoding_types.clear();
64 encoding_types.push_back(Filter::FILTER_TYPE_SDCH); 67 encoding_types.push_back(Filter::FILTER_TYPE_SDCH);
65 encoding_types.push_back(Filter::FILTER_TYPE_GZIP); 68 encoding_types.push_back(Filter::FILTER_TYPE_GZIP);
66 filter_context.SetMimeType(kTextHtmlMime); 69 filter_context.SetMimeType(kTextHtmlMime);
67 Filter::FixupEncodingTypes(filter_context, &encoding_types); 70 Filter::FixupEncodingTypes(filter_context, &encoding_types);
68 ASSERT_EQ(2U, encoding_types.size()); 71 ASSERT_EQ(2U, encoding_types.size());
(...skipping 17 matching lines...) Expand all
86 ASSERT_EQ(2U, encoding_types.size()); 89 ASSERT_EQ(2U, encoding_types.size());
87 EXPECT_EQ(Filter::FILTER_TYPE_SDCH, encoding_types[0]); 90 EXPECT_EQ(Filter::FILTER_TYPE_SDCH, encoding_types[0]);
88 EXPECT_EQ(Filter::FILTER_TYPE_GZIP_HELPING_SDCH, encoding_types[1]); 91 EXPECT_EQ(Filter::FILTER_TYPE_GZIP_HELPING_SDCH, encoding_types[1]);
89 } 92 }
90 93
91 TEST(FilterTest, MissingSdchEncoding) { 94 TEST(FilterTest, MissingSdchEncoding) {
92 // Handle interesting case where entire SDCH encoding assertion "got lost." 95 // Handle interesting case where entire SDCH encoding assertion "got lost."
93 const std::string kTextHtmlMime("text/html"); 96 const std::string kTextHtmlMime("text/html");
94 MockFilterContext filter_context; 97 MockFilterContext filter_context;
95 filter_context.SetSdchResponse( 98 filter_context.SetSdchResponse(
96 SdchManager::CreateEmptyDictionarySetForTesting().Pass()); 99 SdchManager::CreateEmptyDictionarySetForTesting());
97 100
98 std::vector<Filter::FilterType> encoding_types; 101 std::vector<Filter::FilterType> encoding_types;
99 102
100 // Loss of encoding, but it was an SDCH response with html type. 103 // Loss of encoding, but it was an SDCH response with html type.
101 encoding_types.clear(); 104 encoding_types.clear();
102 filter_context.SetMimeType(kTextHtmlMime); 105 filter_context.SetMimeType(kTextHtmlMime);
103 Filter::FixupEncodingTypes(filter_context, &encoding_types); 106 Filter::FixupEncodingTypes(filter_context, &encoding_types);
104 ASSERT_EQ(2U, encoding_types.size()); 107 ASSERT_EQ(2U, encoding_types.size());
105 EXPECT_EQ(Filter::FILTER_TYPE_SDCH_POSSIBLE, encoding_types[0]); 108 EXPECT_EQ(Filter::FILTER_TYPE_SDCH_POSSIBLE, encoding_types[0]);
106 EXPECT_EQ(Filter::FILTER_TYPE_GZIP_HELPING_SDCH, encoding_types[1]); 109 EXPECT_EQ(Filter::FILTER_TYPE_GZIP_HELPING_SDCH, encoding_types[1]);
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
147 // Regression test for http://crbug.com/418975. 150 // Regression test for http://crbug.com/418975.
148 TEST(FilterTest, ThreeFilterChain) { 151 TEST(FilterTest, ThreeFilterChain) {
149 scoped_ptr<PassThroughFilter> filter1(new PassThroughFilter); 152 scoped_ptr<PassThroughFilter> filter1(new PassThroughFilter);
150 scoped_ptr<PassThroughFilter> filter2(new PassThroughFilter); 153 scoped_ptr<PassThroughFilter> filter2(new PassThroughFilter);
151 scoped_ptr<PassThroughFilter> filter3(new PassThroughFilter); 154 scoped_ptr<PassThroughFilter> filter3(new PassThroughFilter);
152 155
153 filter1->InitBuffer(32 * 1024); 156 filter1->InitBuffer(32 * 1024);
154 filter2->InitBuffer(32 * 1024); 157 filter2->InitBuffer(32 * 1024);
155 filter3->InitBuffer(32 * 1024); 158 filter3->InitBuffer(32 * 1024);
156 159
157 filter2->next_filter_ = filter3.Pass(); 160 filter2->next_filter_ = std::move(filter3);
158 filter1->next_filter_ = filter2.Pass(); 161 filter1->next_filter_ = std::move(filter2);
159 162
160 // Initialize the input array with a varying byte sequence. 163 // Initialize the input array with a varying byte sequence.
161 const size_t input_array_size = 64 * 1024; 164 const size_t input_array_size = 64 * 1024;
162 char input_array[input_array_size]; 165 char input_array[input_array_size];
163 size_t read_array_index = 0; 166 size_t read_array_index = 0;
164 for (size_t i = 0; i < input_array_size; i++) { 167 for (size_t i = 0; i < input_array_size; i++) {
165 input_array[i] = i % 113; 168 input_array[i] = i % 113;
166 } 169 }
167 170
168 const size_t output_array_size = 4 * 1024; 171 const size_t output_array_size = 4 * 1024;
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
201 amount_to_copy); 204 amount_to_copy);
202 filter1->FlushStreamBuffer(amount_to_copy); 205 filter1->FlushStreamBuffer(amount_to_copy);
203 read_array_index += amount_to_copy; 206 read_array_index += amount_to_copy;
204 } while (true); 207 } while (true);
205 208
206 EXPECT_EQ(read_array_index, input_array_size); 209 EXPECT_EQ(read_array_index, input_array_size);
207 EXPECT_EQ(compare_array_index, input_array_size); 210 EXPECT_EQ(compare_array_index, input_array_size);
208 } 211 }
209 212
210 } // Namespace net 213 } // Namespace net
OLDNEW
« no previous file with comments | « net/extras/sqlite/sqlite_channel_id_store.cc ('k') | net/filter/mock_filter_context.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698