| Index: net/filter/sdch_filter_unittest.cc
|
| diff --git a/net/filter/sdch_filter_unittest.cc b/net/filter/sdch_filter_unittest.cc
|
| index 28da615c2e90bedd4b5c01dadf6ade807f8576f6..88a9c392bd81a69ec8ddde883c8691e34362bd99 100644
|
| --- a/net/filter/sdch_filter_unittest.cc
|
| +++ b/net/filter/sdch_filter_unittest.cc
|
| @@ -165,6 +165,25 @@ TEST_F(SdchFilterTest, EmptyInputOk) {
|
| filter_context()->SetURL(GURL(url_string));
|
| scoped_ptr<Filter> filter(Filter::Factory(filter_types, *filter_context()));
|
|
|
| + // With no input data, try to read output.
|
| + int output_bytes_or_buffer_size = sizeof(output_buffer);
|
| + Filter::FilterStatus status = filter->ReadData(output_buffer,
|
| + &output_bytes_or_buffer_size);
|
| +
|
| + EXPECT_EQ(0, output_bytes_or_buffer_size);
|
| + EXPECT_EQ(Filter::FILTER_NEED_MORE_DATA, status);
|
| +}
|
| +
|
| +// Make sure that the filter context has everything that might be
|
| +// nuked from it during URLRequest teardown before the SdchFilter
|
| +// destructor.
|
| +TEST_F(SdchFilterTest, SparseContextOk) {
|
| + std::vector<Filter::FilterType> filter_types;
|
| + filter_types.push_back(Filter::FILTER_TYPE_SDCH);
|
| + char output_buffer[20];
|
| + std::string url_string("http://ignore.com");
|
| + filter_context()->SetURL(GURL(url_string));
|
| + scoped_ptr<Filter> filter(Filter::Factory(filter_types, *filter_context()));
|
|
|
| // With no input data, try to read output.
|
| int output_bytes_or_buffer_size = sizeof(output_buffer);
|
| @@ -173,6 +192,13 @@ TEST_F(SdchFilterTest, EmptyInputOk) {
|
|
|
| EXPECT_EQ(0, output_bytes_or_buffer_size);
|
| EXPECT_EQ(Filter::FILTER_NEED_MORE_DATA, status);
|
| +
|
| + // Partially tear down context. Anything that goes through request()
|
| + // without checking it for null in the URLRequestJob::HttpFilterContext
|
| + // implementation is suspect. Everything that does check it for null should
|
| + // return null. This is to test for incorrectly relying on filter_context()
|
| + // from the SdchFilter destructor.
|
| + filter_context()->NukeUnstableInterfaces();
|
| }
|
|
|
| TEST_F(SdchFilterTest, PassThroughWhenTentative) {
|
|
|