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

Unified Diff: webrtc/tools/frame_editing/frame_editing_unittest.cc

Issue 2965593002: Move webrtc/{tools => rtc_tools} (Closed)
Patch Set: Adding back root changes Created 3 years, 6 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
« no previous file with comments | « webrtc/tools/frame_editing/frame_editing_lib.cc ('k') | webrtc/tools/header_usage.sh » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webrtc/tools/frame_editing/frame_editing_unittest.cc
diff --git a/webrtc/tools/frame_editing/frame_editing_unittest.cc b/webrtc/tools/frame_editing/frame_editing_unittest.cc
deleted file mode 100644
index 2e43545230d6686578b1e1e7aecda64a720c7c16..0000000000000000000000000000000000000000
--- a/webrtc/tools/frame_editing/frame_editing_unittest.cc
+++ /dev/null
@@ -1,216 +0,0 @@
-/*
- * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
- *
- * Use of this source code is governed by a BSD-style license
- * that can be found in the LICENSE file in the root of the source
- * tree. An additional intellectual property rights grant can be found
- * in the file PATENTS. All contributing project authors may
- * be found in the AUTHORS file in the root of the source tree.
- */
-
-#include <stdio.h>
-#include <stdlib.h>
-
-#include <fstream>
-#include <memory>
-
-#include "webrtc/common_video/libyuv/include/webrtc_libyuv.h"
-#include "webrtc/test/gtest.h"
-#include "webrtc/test/testsupport/fileutils.h"
-#include "webrtc/tools/frame_editing/frame_editing_lib.h"
-
-namespace webrtc {
-namespace test {
-
-const int kWidth = 352;
-const int kHeight = 288;
-const size_t kFrameSize = CalcBufferSize(VideoType::kI420, kWidth, kHeight);
-
-class FrameEditingTest : public ::testing::Test {
- protected:
- virtual void SetUp() {
- reference_video_ = ResourcePath("foreman_cif", "yuv");
- test_video_ = webrtc::test::TempFilename(webrtc::test::OutputPath(),
- "frame_editing_unittest.yuv");
-
- original_fid_ = fopen(reference_video_.c_str(), "rb");
- ASSERT_TRUE(original_fid_ != NULL);
-
- // Ensure the output file exists on disk.
- std::ofstream(test_video_.c_str(), std::ios::out);
- // Open the output file for reading.
- // TODO(holmer): Figure out why this file has to be opened here (test fails
- // if it's opened after the write operation performed in EditFrames).
- edited_fid_ = fopen(test_video_.c_str(), "rb");
- ASSERT_TRUE(edited_fid_ != NULL);
-
- original_buffer_.reset(new int[kFrameSize]);
- edited_buffer_.reset(new int[kFrameSize]);
- num_frames_read_ = 0;
- }
- virtual void TearDown() {
- fclose(original_fid_);
- fclose(edited_fid_);
- remove(test_video_.c_str());
- }
- // Compares the frames in both streams to the end of one of the streams.
- void CompareToTheEnd(FILE* test_video_fid,
- FILE* ref_video_fid,
- std::unique_ptr<int[]>* ref_buffer,
- std::unique_ptr<int[]>* test_buffer) {
- while (!feof(test_video_fid) && !feof(ref_video_fid)) {
- num_bytes_read_ = fread(ref_buffer->get(), 1, kFrameSize, ref_video_fid);
- if (!feof(ref_video_fid)) {
- EXPECT_EQ(kFrameSize, num_bytes_read_);
- }
- num_bytes_read_ = fread(test_buffer->get(), 1, kFrameSize,
- test_video_fid);
- if (!feof(test_video_fid)) {
- EXPECT_EQ(kFrameSize, num_bytes_read_);
- }
- if (!feof(test_video_fid) && !feof(test_video_fid)) {
- EXPECT_EQ(0, memcmp(ref_buffer->get(), test_buffer->get(),
- kFrameSize));
- }
- }
- // There should not be anything left in either stream.
- EXPECT_EQ(!feof(test_video_fid), !feof(ref_video_fid));
- }
- std::string reference_video_;
- std::string test_video_;
- FILE* original_fid_;
- FILE* edited_fid_;
- size_t num_bytes_read_;
- std::unique_ptr<int[]> original_buffer_;
- std::unique_ptr<int[]> edited_buffer_;
- int num_frames_read_;
-};
-
-TEST_F(FrameEditingTest, ValidInPath) {
- const int kFirstFrameToProcess = 160;
- const int kInterval = -1;
- const int kLastFrameToProcess = 240;
-
- int result = EditFrames(reference_video_, kWidth, kHeight,
- kFirstFrameToProcess, kInterval, kLastFrameToProcess,
- test_video_);
- EXPECT_EQ(0, result);
-
- for (int i = 1; i < kFirstFrameToProcess; ++i) {
- num_bytes_read_ = fread(original_buffer_.get(), 1, kFrameSize,
- original_fid_);
- EXPECT_EQ(kFrameSize, num_bytes_read_);
-
- num_bytes_read_ = fread(edited_buffer_.get(), 1, kFrameSize, edited_fid_);
- EXPECT_EQ(kFrameSize, num_bytes_read_);
-
- EXPECT_EQ(0, memcmp(original_buffer_.get(), edited_buffer_.get(),
- kFrameSize));
- }
- // Do not compare the frames that have been cut.
- for (int i = kFirstFrameToProcess; i <= kLastFrameToProcess; ++i) {
- num_bytes_read_ = fread(original_buffer_.get(), 1, kFrameSize,
- original_fid_);
- EXPECT_EQ(kFrameSize, num_bytes_read_);
- }
- CompareToTheEnd(edited_fid_, original_fid_, &original_buffer_,
- &edited_buffer_);
-}
-
-TEST_F(FrameEditingTest, EmptySetToCut) {
- const int kFirstFrameToProcess = 2;
- const int kInterval = -1;
- const int kLastFrameToProcess = 1;
-
- int result = EditFrames(reference_video_, kWidth, kHeight,
- kFirstFrameToProcess, kInterval, kLastFrameToProcess,
- test_video_);
- EXPECT_EQ(-10, result);
-}
-
-TEST_F(FrameEditingTest, InValidInPath) {
- const std::string kRefVideo_ = "PATH/THAT/DOES/NOT/EXIST";
-
- const int kFirstFrameToProcess = 30;
- const int kInterval = 1;
- const int kLastFrameToProcess = 120;
-
- int result = EditFrames(kRefVideo_, kWidth, kHeight, kFirstFrameToProcess,
- kInterval, kLastFrameToProcess, test_video_);
- EXPECT_EQ(-11, result);
-}
-
-TEST_F(FrameEditingTest, DeletingEverySecondFrame) {
- const int kFirstFrameToProcess = 1;
- const int kInterval = -2;
- const int kLastFrameToProcess = 10000;
- // Set kLastFrameToProcess to a large value so that all frame are processed.
- int result = EditFrames(reference_video_, kWidth, kHeight,
- kFirstFrameToProcess, kInterval, kLastFrameToProcess,
- test_video_);
- EXPECT_EQ(0, result);
-
- while (!feof(original_fid_) && !feof(edited_fid_)) {
- num_bytes_read_ =
- fread(original_buffer_.get(), 1, kFrameSize, original_fid_);
- if (!feof(original_fid_)) {
- EXPECT_EQ(kFrameSize, num_bytes_read_);
- num_frames_read_++;
- }
- // We want to compare every second frame of the original to the edited.
- // kInterval=-2 and (num_frames_read_ - 1) % kInterval will be -1 for
- // every second frame.
- // num_frames_read_ - 1 because we have deleted frame number 2, 4 , 6 etc.
- if ((num_frames_read_ - 1) % kInterval == -1) {
- num_bytes_read_ = fread(edited_buffer_.get(), 1, kFrameSize,
- edited_fid_);
- if (!feof(edited_fid_)) {
- EXPECT_EQ(kFrameSize, num_bytes_read_);
- }
- if (!feof(original_fid_) && !feof(edited_fid_)) {
- EXPECT_EQ(0, memcmp(original_buffer_.get(),
- edited_buffer_.get(), kFrameSize));
- }
- }
- }
-}
-
-TEST_F(FrameEditingTest, RepeatFrames) {
- const int kFirstFrameToProcess = 160;
- const int kInterval = 2;
- const int kLastFrameToProcess = 240;
-
- int result = EditFrames(reference_video_, kWidth, kHeight,
- kFirstFrameToProcess, kInterval, kLastFrameToProcess,
- test_video_);
- EXPECT_EQ(0, result);
-
- for (int i = 1; i < kFirstFrameToProcess; ++i) {
- num_bytes_read_ = fread(original_buffer_.get(), 1, kFrameSize,
- original_fid_);
- EXPECT_EQ(kFrameSize, num_bytes_read_);
-
- num_bytes_read_ = fread(edited_buffer_.get(), 1, kFrameSize, edited_fid_);
- EXPECT_EQ(kFrameSize, num_bytes_read_);
-
- EXPECT_EQ(0, memcmp(original_buffer_.get(), edited_buffer_.get(),
- kFrameSize));
- }
- // Do not compare the frames that have been repeated.
- for (int i = kFirstFrameToProcess; i <= kLastFrameToProcess; ++i) {
- num_bytes_read_ = fread(original_buffer_.get(), 1, kFrameSize,
- original_fid_);
- EXPECT_EQ(kFrameSize, num_bytes_read_);
- for (int i = 1; i <= kInterval; ++i) {
- num_bytes_read_ = fread(edited_buffer_.get(), 1, kFrameSize,
- edited_fid_);
- EXPECT_EQ(kFrameSize, num_bytes_read_);
- EXPECT_EQ(0, memcmp(original_buffer_.get(), edited_buffer_.get(),
- kFrameSize));
- }
- }
- CompareToTheEnd(edited_fid_, original_fid_, &original_buffer_,
- &edited_buffer_);
-}
-} // namespace test
-} // namespace webrtc
« no previous file with comments | « webrtc/tools/frame_editing/frame_editing_lib.cc ('k') | webrtc/tools/header_usage.sh » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698