aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorStephen Oberholtzer <stevie@qrpff.net>2018-07-19 21:30:27 -0400
committerStephen Oberholtzer <stevie@qrpff.net>2018-07-19 21:39:10 -0400
commitf5f1796c5d179c7444ab82f156747effa71d1434 (patch)
tree5e804a5de05ee447bb2c526dc964494670768cbe /src
parentb1c550302207bf765628e8b1d76c520af70a54ba (diff)
downloadprotobuf-f5f1796c5d179c7444ab82f156747effa71d1434.tar.gz
protobuf-f5f1796c5d179c7444ab82f156747effa71d1434.tar.bz2
protobuf-f5f1796c5d179c7444ab82f156747effa71d1434.zip
When running unit tests, read reference files in text mode
This should put an end to all of the reports of unit test failures on Windows machines.
Diffstat (limited to 'src')
-rw-r--r--src/google/protobuf/compiler/cpp/cpp_bootstrap_unittest.cc2
-rw-r--r--src/google/protobuf/compiler/csharp/csharp_bootstrap_unittest.cc2
-rw-r--r--src/google/protobuf/compiler/ruby/ruby_generator_unittest.cc4
-rw-r--r--src/google/protobuf/map_test.cc2
-rw-r--r--src/google/protobuf/testing/file.cc4
-rw-r--r--src/google/protobuf/testing/file.h7
-rw-r--r--src/google/protobuf/text_format_unittest.cc4
7 files changed, 15 insertions, 10 deletions
diff --git a/src/google/protobuf/compiler/cpp/cpp_bootstrap_unittest.cc b/src/google/protobuf/compiler/cpp/cpp_bootstrap_unittest.cc
index 4e150fe3..24f1fe45 100644
--- a/src/google/protobuf/compiler/cpp/cpp_bootstrap_unittest.cc
+++ b/src/google/protobuf/compiler/cpp/cpp_bootstrap_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
diff --git a/src/google/protobuf/compiler/csharp/csharp_bootstrap_unittest.cc b/src/google/protobuf/compiler/csharp/csharp_bootstrap_unittest.cc
index 8c38e52f..33c56198 100644
--- a/src/google/protobuf/compiler/csharp/csharp_bootstrap_unittest.cc
+++ b/src/google/protobuf/compiler/csharp/csharp_bootstrap_unittest.cc
@@ -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)
diff --git a/src/google/protobuf/compiler/ruby/ruby_generator_unittest.cc b/src/google/protobuf/compiler/ruby/ruby_generator_unittest.cc
index 1aabe8aa..8454a5c5 100644
--- a/src/google/protobuf/compiler/ruby/ruby_generator_unittest.cc
+++ b/src/google/protobuf/compiler/ruby/ruby_generator_unittest.cc
@@ -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));
diff --git a/src/google/protobuf/map_test.cc b/src/google/protobuf/map_test.cc
index 829a60ff..51fde2ce 100644
--- a/src/google/protobuf/map_test.cc
+++ b/src/google/protobuf/map_test.cc
@@ -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",
diff --git a/src/google/protobuf/testing/file.cc b/src/google/protobuf/testing/file.cc
index 26cb0a67..def92a00 100644
--- a/src/google/protobuf/testing/file.cc
+++ b/src/google/protobuf/testing/file.cc
@@ -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) {
diff --git a/src/google/protobuf/testing/file.h b/src/google/protobuf/testing/file.h
index 2f63f80e..45989967 100644
--- a/src/google/protobuf/testing/file.h
+++ b/src/google/protobuf/testing/file.h
@@ -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);
diff --git a/src/google/protobuf/text_format_unittest.cc b/src/google/protobuf/text_format_unittest.cc
index 53184130..b0ea5783 100644
--- a/src/google/protobuf/text_format_unittest.cc
+++ b/src/google/protobuf/text_format_unittest.cc
@@ -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));