Index: net/base/upload_data_unittest.cc |
diff --git a/net/base/upload_data_unittest.cc b/net/base/upload_data_unittest.cc |
deleted file mode 100644 |
index 98bb23d064085ce7cc3f4c18f102d58ee6ccc165..0000000000000000000000000000000000000000 |
--- a/net/base/upload_data_unittest.cc |
+++ /dev/null |
@@ -1,169 +0,0 @@ |
-// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#include "net/base/upload_data.h" |
- |
-#include "base/bind.h" |
-#include "base/file_path.h" |
-#include "base/file_util.h" |
-#include "base/message_loop.h" |
-#include "base/scoped_temp_dir.h" |
-#include "base/memory/ref_counted.h" |
-#include "base/threading/thread_restrictions.h" |
-#include "base/time.h" |
-#include "googleurl/src/gurl.h" |
-#include "testing/gtest/include/gtest/gtest.h" |
-#include "testing/platform_test.h" |
- |
-namespace net { |
- |
-// Simplified version of TestCompletionCallback for ContentLengthCallback, |
-// that handles uint64 rather than int. |
-class TestContentLengthCallback { |
- public: |
- TestContentLengthCallback() |
- : result_(0), |
- callback_(ALLOW_THIS_IN_INITIALIZER_LIST( |
- base::Bind(&TestContentLengthCallback::SetResult, |
- base::Unretained(this)))) { |
- } |
- |
- ~TestContentLengthCallback() {} |
- |
- const UploadData::ContentLengthCallback& callback() const { |
- return callback_; |
- } |
- |
- // Waits for the result and returns it. |
- uint64 WaitForResult() { |
- MessageLoop::current()->Run(); |
- return result_; |
- } |
- |
- private: |
- // Sets the result and stops the message loop. |
- void SetResult(uint64 result) { |
- result_ = result; |
- MessageLoop::current()->Quit(); |
- } |
- |
- uint64 result_; |
- const UploadData::ContentLengthCallback callback_; |
- |
- DISALLOW_COPY_AND_ASSIGN(TestContentLengthCallback); |
-}; |
- |
-class UploadDataTest : public PlatformTest { |
- protected: |
- virtual void SetUp() { |
- upload_data_= new UploadData; |
- // To ensure that file IO is not performed on the main thread in the |
- // test (i.e. GetContentLengthSync() will fail if file IO is performed). |
- base::ThreadRestrictions::SetIOAllowed(false); |
- } |
- |
- virtual void TearDown() { |
- base::ThreadRestrictions::SetIOAllowed(true); |
- } |
- |
- // Creates a temporary file with the given data. The temporary file is |
- // deleted by temp_dir_. Returns true on success. |
- bool CreateTemporaryFile(const std::string& data, |
- FilePath* temp_file_path) { |
- base::ThreadRestrictions::ScopedAllowIO allow_io; |
- if (!temp_dir_.CreateUniqueTempDir()) |
- return false; |
- if (!file_util::CreateTemporaryFileInDir(temp_dir_.path(), temp_file_path)) |
- return false; |
- if (static_cast<int>(data.size()) != |
- file_util::WriteFile(*temp_file_path, data.data(), data.size())) |
- return false; |
- |
- return true; |
- } |
- |
- ScopedTempDir temp_dir_; |
- scoped_refptr<UploadData> upload_data_; |
-}; |
- |
-TEST_F(UploadDataTest, IsInMemory_Empty) { |
- ASSERT_TRUE(upload_data_->IsInMemory()); |
-} |
- |
-TEST_F(UploadDataTest, IsInMemory_Bytes) { |
- upload_data_->AppendBytes("123", 3); |
- ASSERT_TRUE(upload_data_->IsInMemory()); |
-} |
- |
-TEST_F(UploadDataTest, IsInMemory_File) { |
- upload_data_->AppendFileRange( |
- FilePath(FILE_PATH_LITERAL("random_file_name.txt")), |
- 0, 0, base::Time()); |
- ASSERT_FALSE(upload_data_->IsInMemory()); |
-} |
- |
-TEST_F(UploadDataTest, IsInMemory_Chunk) { |
- upload_data_->set_is_chunked(true); |
- ASSERT_FALSE(upload_data_->IsInMemory()); |
-} |
- |
-TEST_F(UploadDataTest, IsInMemory_Mixed) { |
- ASSERT_TRUE(upload_data_->IsInMemory()); |
- |
- upload_data_->AppendBytes("123", 3); |
- upload_data_->AppendBytes("abc", 3); |
- ASSERT_TRUE(upload_data_->IsInMemory()); |
- |
- upload_data_->AppendFileRange( |
- FilePath(FILE_PATH_LITERAL("random_file_name.txt")), |
- 0, 0, base::Time()); |
- ASSERT_FALSE(upload_data_->IsInMemory()); |
-} |
- |
-TEST_F(UploadDataTest, GetContentLength_Empty) { |
- ASSERT_EQ(0U, upload_data_->GetContentLengthSync()); |
-} |
- |
-TEST_F(UploadDataTest, GetContentLength_Bytes) { |
- upload_data_->AppendBytes("123", 3); |
- ASSERT_EQ(3U, upload_data_->GetContentLengthSync()); |
-} |
- |
-TEST_F(UploadDataTest, GetContentLength_File) { |
- // Create a temporary file with some data. |
- const std::string kData = "hello"; |
- FilePath temp_file_path; |
- ASSERT_TRUE(CreateTemporaryFile(kData, &temp_file_path)); |
- upload_data_->AppendFileRange(temp_file_path, 0, kuint64max, base::Time()); |
- |
- // The length is returned asynchronously. |
- TestContentLengthCallback callback; |
- upload_data_->GetContentLength(callback.callback()); |
- ASSERT_EQ(kData.size(), callback.WaitForResult()); |
-} |
- |
-TEST_F(UploadDataTest, GetContentLength_Chunk) { |
- upload_data_->set_is_chunked(true); |
- ASSERT_EQ(0U, upload_data_->GetContentLengthSync()); |
-} |
- |
-TEST_F(UploadDataTest, GetContentLength_Mixed) { |
- upload_data_->AppendBytes("123", 3); |
- upload_data_->AppendBytes("abc", 3); |
- |
- const uint64 content_length = upload_data_->GetContentLengthSync(); |
- ASSERT_EQ(6U, content_length); |
- |
- // Append a file. |
- const std::string kData = "hello"; |
- FilePath temp_file_path; |
- ASSERT_TRUE(CreateTemporaryFile(kData, &temp_file_path)); |
- upload_data_->AppendFileRange(temp_file_path, 0, kuint64max, base::Time()); |
- |
- TestContentLengthCallback callback; |
- upload_data_->GetContentLength(callback.callback()); |
- ASSERT_EQ(content_length + kData.size(), callback.WaitForResult()); |
-} |
- |
-} // namespace net |