| Index: chrome/browser/local_discovery/privet_url_fetcher_unittest.cc
|
| diff --git a/chrome/browser/local_discovery/privet_url_fetcher_unittest.cc b/chrome/browser/local_discovery/privet_url_fetcher_unittest.cc
|
| index 5243135399c8906ee1b4c748a7f220b9b992740c..150be98b5a37aa195244bd7393e43b772bfeb848 100644
|
| --- a/chrome/browser/local_discovery/privet_url_fetcher_unittest.cc
|
| +++ b/chrome/browser/local_discovery/privet_url_fetcher_unittest.cc
|
| @@ -46,6 +46,23 @@ class MockPrivetURLFetcherDelegate : public PrivetURLFetcher::Delegate {
|
| const PrivetURLFetcher::TokenCallback& callback) {
|
| }
|
|
|
| +
|
| + void OnRawData(PrivetURLFetcher* fetcher,
|
| + bool response_is_file,
|
| + const std::string& data,
|
| + const base::FilePath& response_file) {
|
| + if (response_is_file) {
|
| + EXPECT_TRUE(response_file != base::FilePath());
|
| + OnFileInternal();
|
| + } else {
|
| + OnRawDataInternal(data);
|
| + }
|
| + }
|
| +
|
| + MOCK_METHOD1(OnRawDataInternal, void(std::string data));
|
| +
|
| + MOCK_METHOD0(OnFileInternal, void());
|
| +
|
| const base::DictionaryValue* saved_value() { return saved_value_.get(); }
|
|
|
| private:
|
| @@ -206,6 +223,50 @@ TEST_F(PrivetURLFetcherTest, FetchHasError) {
|
| fetcher->delegate()->OnURLFetchComplete(fetcher);
|
| }
|
|
|
| +TEST_F(PrivetURLFetcherTest, FetcherRawData) {
|
| + privet_urlfetcher_->DoNotParseData();
|
| + privet_urlfetcher_->Start();
|
| + net::TestURLFetcher* fetcher = fetcher_factory_.GetFetcherByID(0);
|
| + ASSERT_TRUE(fetcher != NULL);
|
| + fetcher->SetResponseString(kSampleJSONWithError);
|
| + fetcher->set_status(net::URLRequestStatus(net::URLRequestStatus::SUCCESS,
|
| + net::OK));
|
| + fetcher->set_response_code(200);
|
| +
|
| + EXPECT_CALL(delegate_, OnRawDataInternal(kSampleJSONWithError));
|
| + fetcher->delegate()->OnURLFetchComplete(fetcher);
|
| +}
|
| +
|
| +TEST_F(PrivetURLFetcherTest, RangeRequest) {
|
| + privet_urlfetcher_->DoNotParseData();
|
| + privet_urlfetcher_->SetByteRange(200, 300);
|
| + privet_urlfetcher_->Start();
|
| + net::TestURLFetcher* fetcher = fetcher_factory_.GetFetcherByID(0);
|
| + ASSERT_TRUE(fetcher != NULL);
|
| + net::HttpRequestHeaders headers;
|
| + fetcher->GetExtraRequestHeaders(&headers);
|
| +
|
| + std::string header_range;
|
| + ASSERT_TRUE(headers.GetHeader("Range", &header_range));
|
| + EXPECT_EQ("bytes=200-300", header_range);
|
| +}
|
| +
|
| +TEST_F(PrivetURLFetcherTest, FetcherToFile) {
|
| + privet_urlfetcher_->DoNotParseData();
|
| + privet_urlfetcher_->SaveResponseToFile();
|
| + privet_urlfetcher_->Start();
|
| + net::TestURLFetcher* fetcher = fetcher_factory_.GetFetcherByID(0);
|
| + ASSERT_TRUE(fetcher != NULL);
|
| + fetcher->SetResponseFilePath(
|
| + base::FilePath(FILE_PATH_LITERAL("sample/file")));
|
| + fetcher->set_status(net::URLRequestStatus(net::URLRequestStatus::SUCCESS,
|
| + net::OK));
|
| + fetcher->set_response_code(200);
|
| +
|
| + EXPECT_CALL(delegate_, OnFileInternal());
|
| + fetcher->delegate()->OnURLFetchComplete(fetcher);
|
| +}
|
| +
|
| } // namespace
|
|
|
| } // namespace local_discovery
|
|
|