| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/url_request/url_fetcher_impl.h" | 5 #include "net/url_request/url_fetcher_impl.h" |
| 6 | 6 |
| 7 #include <stdint.h> | 7 #include <stdint.h> |
| 8 #include <string.h> | 8 #include <string.h> |
| 9 | 9 |
| 10 #include <algorithm> | 10 #include <algorithm> |
| (...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 120 void OnURLFetchComplete(const URLFetcher* source) override { | 120 void OnURLFetchComplete(const URLFetcher* source) override { |
| 121 EXPECT_FALSE(did_complete_); | 121 EXPECT_FALSE(did_complete_); |
| 122 EXPECT_TRUE(fetcher_); | 122 EXPECT_TRUE(fetcher_); |
| 123 EXPECT_EQ(fetcher_.get(), source); | 123 EXPECT_EQ(fetcher_.get(), source); |
| 124 did_complete_ = true; | 124 did_complete_ = true; |
| 125 run_loop_.Quit(); | 125 run_loop_.Quit(); |
| 126 } | 126 } |
| 127 | 127 |
| 128 void OnURLFetchDownloadProgress(const URLFetcher* source, | 128 void OnURLFetchDownloadProgress(const URLFetcher* source, |
| 129 int64_t current, | 129 int64_t current, |
| 130 int64_t total) override { | 130 int64_t total, |
| 131 int64_t current_network_bytes) override { |
| 131 // Note that the current progress may be greater than the previous progress, | 132 // Note that the current progress may be greater than the previous progress, |
| 132 // in the case of retrying the request. | 133 // in the case of retrying the request. |
| 133 EXPECT_FALSE(did_complete_); | 134 EXPECT_FALSE(did_complete_); |
| 134 EXPECT_TRUE(fetcher_); | 135 EXPECT_TRUE(fetcher_); |
| 135 EXPECT_EQ(source, fetcher_.get()); | 136 EXPECT_EQ(source, fetcher_.get()); |
| 136 | 137 |
| 137 EXPECT_LE(0, current); | 138 EXPECT_LE(0, current); |
| 138 // If file size is not known, |total| is -1. | 139 // If file size is not known, |total| is -1. |
| 139 if (total >= 0) | 140 if (total >= 0) |
| 140 EXPECT_LE(current, total); | 141 EXPECT_LE(current, total); |
| (...skipping 776 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 917 // Checks that download progress never decreases, never exceeds file size, and | 918 // Checks that download progress never decreases, never exceeds file size, and |
| 918 // that file size is correctly reported. | 919 // that file size is correctly reported. |
| 919 class CheckDownloadProgressDelegate : public WaitingURLFetcherDelegate { | 920 class CheckDownloadProgressDelegate : public WaitingURLFetcherDelegate { |
| 920 public: | 921 public: |
| 921 CheckDownloadProgressDelegate(int64_t file_size) | 922 CheckDownloadProgressDelegate(int64_t file_size) |
| 922 : file_size_(file_size), last_seen_progress_(0) {} | 923 : file_size_(file_size), last_seen_progress_(0) {} |
| 923 ~CheckDownloadProgressDelegate() override {} | 924 ~CheckDownloadProgressDelegate() override {} |
| 924 | 925 |
| 925 void OnURLFetchDownloadProgress(const URLFetcher* source, | 926 void OnURLFetchDownloadProgress(const URLFetcher* source, |
| 926 int64_t current, | 927 int64_t current, |
| 927 int64_t total) override { | 928 int64_t total, |
| 929 int64_t current_network_bytes) override { |
| 928 // Run default checks. | 930 // Run default checks. |
| 929 WaitingURLFetcherDelegate::OnURLFetchDownloadProgress(source, current, | 931 WaitingURLFetcherDelegate::OnURLFetchDownloadProgress( |
| 930 total); | 932 source, current, total, current_network_bytes); |
| 931 | 933 |
| 932 EXPECT_LE(last_seen_progress_, current); | 934 EXPECT_LE(last_seen_progress_, current); |
| 933 EXPECT_EQ(file_size_, total); | 935 EXPECT_EQ(file_size_, total); |
| 934 last_seen_progress_ = current; | 936 last_seen_progress_ = current; |
| 935 } | 937 } |
| 936 | 938 |
| 937 private: | 939 private: |
| 938 int64_t file_size_; | 940 int64_t file_size_; |
| 939 int64_t last_seen_progress_; | 941 int64_t last_seen_progress_; |
| 940 | 942 |
| (...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1004 EXPECT_FALSE(delegate.fetcher()); | 1006 EXPECT_FALSE(delegate.fetcher()); |
| 1005 } | 1007 } |
| 1006 | 1008 |
| 1007 class CancelOnDownloadProgressDelegate : public WaitingURLFetcherDelegate { | 1009 class CancelOnDownloadProgressDelegate : public WaitingURLFetcherDelegate { |
| 1008 public: | 1010 public: |
| 1009 CancelOnDownloadProgressDelegate() {} | 1011 CancelOnDownloadProgressDelegate() {} |
| 1010 ~CancelOnDownloadProgressDelegate() override {} | 1012 ~CancelOnDownloadProgressDelegate() override {} |
| 1011 | 1013 |
| 1012 void OnURLFetchDownloadProgress(const URLFetcher* source, | 1014 void OnURLFetchDownloadProgress(const URLFetcher* source, |
| 1013 int64_t current, | 1015 int64_t current, |
| 1014 int64_t total) override { | 1016 int64_t total, |
| 1017 int64_t current_network_bytes) override { |
| 1015 CancelFetch(); | 1018 CancelFetch(); |
| 1016 } | 1019 } |
| 1017 | 1020 |
| 1018 private: | 1021 private: |
| 1019 DISALLOW_COPY_AND_ASSIGN(CancelOnDownloadProgressDelegate); | 1022 DISALLOW_COPY_AND_ASSIGN(CancelOnDownloadProgressDelegate); |
| 1020 }; | 1023 }; |
| 1021 | 1024 |
| 1022 // Check that a fetch can be safely cancelled/deleted during a download progress | 1025 // Check that a fetch can be safely cancelled/deleted during a download progress |
| 1023 // callback. | 1026 // callback. |
| 1024 TEST_F(URLFetcherTest, CancelInDownloadProgressCallback) { | 1027 TEST_F(URLFetcherTest, CancelInDownloadProgressCallback) { |
| (...skipping 511 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1536 EXPECT_EQ(-1, delegate.fetcher()->GetResponseCode()); | 1539 EXPECT_EQ(-1, delegate.fetcher()->GetResponseCode()); |
| 1537 EXPECT_FALSE(delegate.fetcher()->GetResponseHeaders()); | 1540 EXPECT_FALSE(delegate.fetcher()->GetResponseHeaders()); |
| 1538 std::string data; | 1541 std::string data; |
| 1539 EXPECT_TRUE(delegate.fetcher()->GetResponseAsString(&data)); | 1542 EXPECT_TRUE(delegate.fetcher()->GetResponseAsString(&data)); |
| 1540 EXPECT_TRUE(data.empty()); | 1543 EXPECT_TRUE(data.empty()); |
| 1541 } | 1544 } |
| 1542 | 1545 |
| 1543 } // namespace | 1546 } // namespace |
| 1544 | 1547 |
| 1545 } // namespace net | 1548 } // namespace net |
| OLD | NEW |