diff options
author | sky@google.com <sky@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-03-09 15:49:20 +0000 |
---|---|---|
committer | sky@google.com <sky@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-03-09 15:49:20 +0000 |
commit | 0643a49e311c0ddb17f292f525ebd11f51f158a1 (patch) | |
tree | de8f50c0070fd6ff52eced3bdd96c747f1e9ea45 /net/base/file_stream_unittest.cc | |
parent | f3e8965444b0b615ed8aabfcacc5840f6684c0c5 (diff) | |
download | chromium_src-0643a49e311c0ddb17f292f525ebd11f51f158a1.zip chromium_src-0643a49e311c0ddb17f292f525ebd11f51f158a1.tar.gz chromium_src-0643a49e311c0ddb17f292f525ebd11f51f158a1.tar.bz2 |
Adds truncate to FileStream.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/39301
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11245 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/base/file_stream_unittest.cc')
-rw-r--r-- | net/base/file_stream_unittest.cc | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/net/base/file_stream_unittest.cc b/net/base/file_stream_unittest.cc index 318eb93..966b9ff 100644 --- a/net/base/file_stream_unittest.cc +++ b/net/base/file_stream_unittest.cc @@ -406,4 +406,31 @@ TEST_F(FileStreamTest, BasicReadWrite) { EXPECT_EQ(kTestDataSize * 2, file_size); } +// Tests truncating a file. +TEST_F(FileStreamTest, Truncate) { + int flags = base::PLATFORM_FILE_CREATE_ALWAYS | base::PLATFORM_FILE_WRITE; + + net::FileStream write_stream; + ASSERT_EQ(net::OK, write_stream.Open(temp_file_path(), flags)); + + // Write some data to the file. + const char test_data[] = "0123456789"; + write_stream.Write(test_data, arraysize(test_data), NULL); + + // Truncate the file. + ASSERT_EQ(4, write_stream.Truncate(4)); + + // Write again. + write_stream.Write(test_data, 4, NULL); + + // Close the stream. + write_stream.Close(); + + // Read in the contents and make sure we get back what we expected. + std::string read_contents; + file_util::ReadFileToString(temp_file_path(), &read_contents); + + ASSERT_TRUE(read_contents == "01230123"); +} + // TODO(erikkay): more READ_WRITE tests? |