// Copyright (c) 2013 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 "base/logging.h"
|
|
#include "compat/string.h"
|
#include "compat/test.h"
|
#include "conversion_utils.h"
|
#include "perf_test_files.h"
|
#include "scoped_temp_path.h"
|
#include "test_utils.h"
|
|
namespace quipper {
|
|
class PerfFile : public ::testing::TestWithParam<const char*> {};
|
|
TEST_P(PerfFile, TextOutput) {
|
ScopedTempDir output_dir;
|
ASSERT_FALSE(output_dir.path().empty());
|
const string output_path = output_dir.path();
|
|
const string test_file = GetParam();
|
|
FormatAndFile input, output;
|
|
input.filename = GetTestInputFilePath(test_file);
|
input.format = kPerfFormat;
|
output.filename = output_path + test_file + ".pb_text";
|
output.format = kProtoTextFormat;
|
EXPECT_TRUE(ConvertFile(input, output));
|
|
string golden_file = GetTestInputFilePath(string(test_file) + ".pb_text");
|
LOG(INFO) << "golden: " << golden_file;
|
LOG(INFO) << "output: " << output.filename;
|
|
CompareTextProtoFiles<PerfDataProto>(output.filename, golden_file);
|
}
|
|
INSTANTIATE_TEST_CASE_P(
|
ConversionUtilsTest, PerfFile,
|
::testing::ValuesIn(perf_test_files::GetPerfDataFiles()));
|
} // namespace quipper
|