diff options
| author | Alex Deymo <deymo@google.com> | 2015-08-17 11:29:22 -0700 |
|---|---|---|
| committer | Alex Deymo <deymo@google.com> | 2015-08-17 11:33:32 -0700 |
| commit | 583f7b9e67f932f9bba7ae0ac84dce3d31107cfa (patch) | |
| tree | 4fd5ca86b580c3943423e4c1f7f077e64a7aa165 /payload_generator/blob_file_writer_unittest.cc | |
| parent | 2a57bfa299f6409e930ed11dda26421272d1bf5f (diff) | |
| parent | ac6246ae239518a27ab4e89ee01ba1b1d76d440f (diff) | |
Sync update_engine from chromiumos/platform2.
The update_engine project was synced from chromium gerrit instance with
the latest changes.You can find the old version here:
https://chromium.googlesource.com/chromiumos/platform2/+/830d80acf26c8232d4b6e14916b7dad543bcf5ec/update_engine
BUG=b/23084607
Diffstat (limited to 'payload_generator/blob_file_writer_unittest.cc')
| -rw-r--r-- | payload_generator/blob_file_writer_unittest.cc | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/payload_generator/blob_file_writer_unittest.cc b/payload_generator/blob_file_writer_unittest.cc new file mode 100644 index 00000000..c845f971 --- /dev/null +++ b/payload_generator/blob_file_writer_unittest.cc @@ -0,0 +1,47 @@ +// Copyright 2015 The Chromium OS 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 "update_engine/payload_generator/blob_file_writer.h" + +#include <string> + +#include <gtest/gtest.h> + +#include "update_engine/test_utils.h" +#include "update_engine/utils.h" + +using chromeos_update_engine::test_utils::FillWithData; +using std::string; + +namespace chromeos_update_engine { + +class BlobFileWriterTest : public ::testing::Test {}; + +TEST(BlobFileWriterTest, SimpleTest) { + string blob_path; + int blob_fd; + EXPECT_TRUE(utils::MakeTempFile("BlobFileWriterTest.XXXXXX", + &blob_path, + &blob_fd)); + off_t blob_file_size = 0; + BlobFileWriter blob_file(blob_fd, &blob_file_size); + + off_t blob_size = 1024; + chromeos::Blob blob(blob_size); + FillWithData(&blob); + EXPECT_EQ(0, blob_file.StoreBlob(blob)); + EXPECT_EQ(blob_size, blob_file.StoreBlob(blob)); + + chromeos::Blob stored_blob(blob_size); + ssize_t bytes_read; + ASSERT_TRUE(utils::PReadAll(blob_fd, + stored_blob.data(), + blob_size, + 0, + &bytes_read)); + EXPECT_EQ(bytes_read, blob_size); + EXPECT_EQ(blob, stored_blob); +} + +} // namespace chromeos_update_engine |
