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

Unified Diff: third_party/libaddressinput/chromium/cpp/test/retriever_test.cc

Issue 115523011: [rAc - libaddressinput] slay a Helper class. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: reject dupes; add test Created 6 years, 11 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 side-by-side diff with in-line comments
Download patch
Index: third_party/libaddressinput/chromium/cpp/test/retriever_test.cc
diff --git a/third_party/libaddressinput/chromium/cpp/test/retriever_test.cc b/third_party/libaddressinput/chromium/cpp/test/retriever_test.cc
index 42a4b50074a8fd0f415a00f49bd58c32a7aca48d..197af467f5c1c9cac27dafd0b13b396176193d4d 100644
--- a/third_party/libaddressinput/chromium/cpp/test/retriever_test.cc
+++ b/third_party/libaddressinput/chromium/cpp/test/retriever_test.cc
@@ -122,6 +122,35 @@ TEST_F(RetrieverTest, FaultyDownloader) {
EXPECT_TRUE(data_.empty());
}
+// The downloader that doesn't get back to you.
+class HangingDownloader : public Downloader {
+ public:
+ HangingDownloader() {}
+ virtual ~HangingDownloader() {}
+
+ // Downloader implementation.
+ virtual void Download(const std::string& url,
+ scoped_ptr<Callback> downloaded) const {}
+};
+
+TEST_F(RetrieverTest, RequestsDontStack) {
+ Retriever slow_retriever(FakeDownloader::kFakeDataUrl,
+ scoped_ptr<const Downloader>(new HangingDownloader),
+ scoped_ptr<Storage>(new FakeStorage));
+
+ slow_retriever.Retrieve(kKey, BuildCallback());
+ EXPECT_FALSE(success_);
+ EXPECT_TRUE(key_.empty());
+
+ // This request should be immediately rejected as the first one has not
+ // returned yet.
+ slow_retriever.Retrieve(kKey, BuildCallback());
+
+ EXPECT_FALSE(success_);
+ EXPECT_EQ(kKey, key_);
+ EXPECT_TRUE(data_.empty());
+}
+
} // namespace
} // namespace addressinput

Powered by Google App Engine
This is Rietveld 408576698