Merge pull request #4943 from Stevie-O/fix-unit-tests-on-win32

When running unit tests, read reference files in text mode
pull/4952/head
Adam Cozzette 7 years ago committed by GitHub
commit 656f64ec0b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 2
      src/google/protobuf/compiler/cpp/cpp_bootstrap_unittest.cc
  2. 2
      src/google/protobuf/compiler/csharp/csharp_bootstrap_unittest.cc
  3. 4
      src/google/protobuf/compiler/ruby/ruby_generator_unittest.cc
  4. 2
      src/google/protobuf/map_test.cc
  5. 4
      src/google/protobuf/testing/file.cc
  6. 7
      src/google/protobuf/testing/file.h
  7. 4
      src/google/protobuf/text_format_unittest.cc

@ -95,7 +95,7 @@ class MockGeneratorContext : public GeneratorContext {
string actual_contents;
GOOGLE_CHECK_OK(
File::GetContents(TestSourceDir() + "/" + physical_filename,
File::GetContentsAsText(TestSourceDir() + "/" + physical_filename,
&actual_contents, true));
EXPECT_TRUE(actual_contents == *expected_contents)
<< physical_filename

@ -90,7 +90,7 @@ class MockGeneratorContext : public GeneratorContext {
string actual_contents;
GOOGLE_CHECK_OK(
File::GetContents(TestSourceDir() + "/" + physical_filename,
File::GetContentsAsText(TestSourceDir() + "/" + physical_filename,
&actual_contents, true))
<< "Unable to get " << physical_filename;
EXPECT_TRUE(actual_contents == *expected_contents)

@ -90,12 +90,12 @@ TEST(RubyGeneratorTest, GeneratorTest) {
// Load the generated output and compare to the expected result.
string output;
GOOGLE_CHECK_OK(File::GetContents(
GOOGLE_CHECK_OK(File::GetContentsAsText(
TestTempDir() + "/ruby_generated_code_pb.rb",
&output,
true));
string expected_output;
GOOGLE_CHECK_OK(File::GetContents(
GOOGLE_CHECK_OK(File::GetContentsAsText(
ruby_tests + "/ruby_generated_code_pb.rb",
&expected_output,
true));

@ -3183,7 +3183,7 @@ TEST(TextFormatMapTest, Sorted) {
tester.SetMapFieldsViaReflection(&message);
string expected_text;
GOOGLE_CHECK_OK(File::GetContents(
GOOGLE_CHECK_OK(File::GetContentsAsText(
TestSourceDir() +
"/google/protobuf/"
"testdata/map_test_data.txt",

@ -69,9 +69,9 @@ bool File::Exists(const string& name) {
return access(name.c_str(), F_OK) == 0;
}
bool File::ReadFileToString(const string& name, string* output) {
bool File::ReadFileToString(const string& name, string* output, bool text_mode) {
char buffer[1024];
FILE* file = fopen(name.c_str(), "rb");
FILE* file = fopen(name.c_str(), text_mode ? "rt" : "rb");
if (file == NULL) return false;
while (true) {

@ -50,7 +50,7 @@ class File {
// Read an entire file to a string. Return true if successful, false
// otherwise.
static bool ReadFileToString(const string& name, string* output);
static bool ReadFileToString(const string& name, string* output, bool text_mode = false);
// Same as above, but crash on failure.
static void ReadFileToStringOrDie(const string& name, string* output);
@ -85,6 +85,11 @@ class File {
return ReadFileToString(name, output);
}
static bool GetContentsAsText(
const string& name, string* output, bool /*is_default*/) {
return ReadFileToString(name, output, true);
}
static bool SetContents(
const string& name, const string& contents, bool /*is_default*/) {
return WriteStringToFile(contents, name);

@ -77,7 +77,7 @@ const string kEscapeTestStringEscaped =
class TextFormatTest : public testing::Test {
public:
static void SetUpTestCase() {
GOOGLE_CHECK_OK(File::GetContents(
GOOGLE_CHECK_OK(File::GetContentsAsText(
TestSourceDir() +
"/google/protobuf/"
"testdata/text_format_unittest_data_oneof_implemented.txt",
@ -99,7 +99,7 @@ string TextFormatTest::static_proto_debug_string_;
class TextFormatExtensionsTest : public testing::Test {
public:
static void SetUpTestCase() {
GOOGLE_CHECK_OK(File::GetContents(TestSourceDir() +
GOOGLE_CHECK_OK(File::GetContentsAsText(TestSourceDir() +
"/google/protobuf/testdata/"
"text_format_unittest_extensions_data.txt",
&static_proto_debug_string_, true));

Loading…
Cancel
Save