Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
yangql
googletest
Commits
691e38e5
Commit
691e38e5
authored
Mar 21, 2018
by
Gennadiy Civil
Browse files
More merges
parent
dccc2d67
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
35 additions
and
28 deletions
+35
-28
googletest/include/gtest/internal/gtest-port.h
googletest/include/gtest/internal/gtest-port.h
+2
-1
googletest/src/gtest-port.cc
googletest/src/gtest-port.cc
+26
-26
googletest/src/gtest.cc
googletest/src/gtest.cc
+7
-1
No files found.
googletest/include/gtest/internal/gtest-port.h
View file @
691e38e5
...
@@ -2675,7 +2675,8 @@ bool ParseInt32(const Message& src_text, const char* str, Int32* value);
...
@@ -2675,7 +2675,8 @@ bool ParseInt32(const Message& src_text, const char* str, Int32* value);
// corresponding to the given Google Test flag.
// corresponding to the given Google Test flag.
bool
BoolFromGTestEnv
(
const
char
*
flag
,
bool
default_val
);
bool
BoolFromGTestEnv
(
const
char
*
flag
,
bool
default_val
);
GTEST_API_
Int32
Int32FromGTestEnv
(
const
char
*
flag
,
Int32
default_val
);
GTEST_API_
Int32
Int32FromGTestEnv
(
const
char
*
flag
,
Int32
default_val
);
std
::
string
StringFromGTestEnv
(
const
char
*
flag
,
const
char
*
default_val
);
std
::
string
SpecialCase_Output_Flag_XML_OUTPUT_FILE_Env
();
const
char
*
StringFromGTestEnv
(
const
char
*
flag
,
const
char
*
default_val
);
}
// namespace internal
}
// namespace internal
}
// namespace testing
}
// namespace testing
...
...
googletest/src/gtest-port.cc
View file @
691e38e5
...
@@ -1185,11 +1185,12 @@ bool ParseInt32(const Message& src_text, const char* str, Int32* value) {
...
@@ -1185,11 +1185,12 @@ bool ParseInt32(const Message& src_text, const char* str, Int32* value) {
bool
BoolFromGTestEnv
(
const
char
*
flag
,
bool
default_value
)
{
bool
BoolFromGTestEnv
(
const
char
*
flag
,
bool
default_value
)
{
#if defined(GTEST_GET_BOOL_FROM_ENV_)
#if defined(GTEST_GET_BOOL_FROM_ENV_)
return
GTEST_GET_BOOL_FROM_ENV_
(
flag
,
default_value
);
return
GTEST_GET_BOOL_FROM_ENV_
(
flag
,
default_value
);
#e
ndif // defined(GTEST_GET_BOOL_FROM_ENV_)
#e
lse
const
std
::
string
env_var
=
FlagToEnvVar
(
flag
);
const
std
::
string
env_var
=
FlagToEnvVar
(
flag
);
const
char
*
const
string_value
=
posix
::
GetEnv
(
env_var
.
c_str
());
const
char
*
const
string_value
=
posix
::
GetEnv
(
env_var
.
c_str
());
return
string_value
==
NULL
?
return
string_value
==
NULL
?
default_value
:
strcmp
(
string_value
,
"0"
)
!=
0
;
default_value
:
strcmp
(
string_value
,
"0"
)
!=
0
;
#endif // defined(GTEST_GET_BOOL_FROM_ENV_)
}
}
// Reads and returns a 32-bit integer stored in the environment
// Reads and returns a 32-bit integer stored in the environment
...
@@ -1198,7 +1199,7 @@ bool BoolFromGTestEnv(const char* flag, bool default_value) {
...
@@ -1198,7 +1199,7 @@ bool BoolFromGTestEnv(const char* flag, bool default_value) {
Int32
Int32FromGTestEnv
(
const
char
*
flag
,
Int32
default_value
)
{
Int32
Int32FromGTestEnv
(
const
char
*
flag
,
Int32
default_value
)
{
#if defined(GTEST_GET_INT32_FROM_ENV_)
#if defined(GTEST_GET_INT32_FROM_ENV_)
return
GTEST_GET_INT32_FROM_ENV_
(
flag
,
default_value
);
return
GTEST_GET_INT32_FROM_ENV_
(
flag
,
default_value
);
#e
ndif // defined(GTEST_GET_INT32_FROM_ENV_)
#e
lse
const
std
::
string
env_var
=
FlagToEnvVar
(
flag
);
const
std
::
string
env_var
=
FlagToEnvVar
(
flag
);
const
char
*
const
string_value
=
posix
::
GetEnv
(
env_var
.
c_str
());
const
char
*
const
string_value
=
posix
::
GetEnv
(
env_var
.
c_str
());
if
(
string_value
==
NULL
)
{
if
(
string_value
==
NULL
)
{
...
@@ -1216,37 +1217,36 @@ Int32 Int32FromGTestEnv(const char* flag, Int32 default_value) {
...
@@ -1216,37 +1217,36 @@ Int32 Int32FromGTestEnv(const char* flag, Int32 default_value) {
}
}
return
result
;
return
result
;
#endif // defined(GTEST_GET_INT32_FROM_ENV_)
}
// As a special case for the 'output' flag, if GTEST_OUTPUT is not
// set, we look for XML_OUTPUT_FILE, which is set by the Bazel build
// system. The value of XML_OUTPUT_FILE is a filename without the
// "xml:" prefix of GTEST_OUTPUT.
// Note that this is meant to be called at the call site so it does
// not check that the flag is 'output'
// In essence this checks env. variable called XML_OUTPUT_FILE
// if it is set we prepend "xml:" to its value , if it not set we return ""
std
::
string
SpecialCase_Output_Flag_XML_OUTPUT_FILE_Env
(){
std
::
string
default_value_for_output_flag
=
""
;
const
char
*
xml_output_file_env
=
posix
::
GetEnv
(
"XML_OUTPUT_FILE"
);
if
(
NULL
!=
xml_output_file_env
)
{
default_value_for_output_flag
=
std
::
string
(
"xml:"
)
+
xml_output_file_env
;
}
return
default_value_for_output_flag
;
}
}
// Reads and returns the string environment variable corresponding to
// Reads and returns the string environment variable corresponding to
// the given flag; if it's not set, returns default_value.
// the given flag; if it's not set, returns default_value.
std
::
string
StringFromGTestEnv
(
const
char
*
flag
,
const
char
*
default_value
)
{
const
char
*
StringFromGTestEnv
(
const
char
*
flag
,
const
char
*
default_value
)
{
#if defined(GTEST_GET_STRING_FROM_ENV_)
#if defined(GTEST_GET_STRING_FROM_ENV_)
return
GTEST_GET_STRING_FROM_ENV_
(
flag
,
default_value
);
return
GTEST_GET_STRING_FROM_ENV_
(
flag
,
default_value
);
#e
ndif // defined(GTEST_GET_STRING_FROM_ENV_)
#e
lse
const
std
::
string
env_var
=
FlagToEnvVar
(
flag
);
const
std
::
string
env_var
=
FlagToEnvVar
(
flag
);
const
char
*
value
=
posix
::
GetEnv
(
env_var
.
c_str
());
const
char
*
const
value
=
posix
::
GetEnv
(
env_var
.
c_str
());
if
(
value
!=
NULL
)
{
return
value
==
NULL
?
default_value
:
value
;
return
value
;
#endif // defined(GTEST_GET_STRING_FROM_ENV_)
}
// As a special case for the 'output' flag, if GTEST_OUTPUT is not
// set, we look for XML_OUTPUT_FILE, which is set by the Bazel build
// system. The value of XML_OUTPUT_FILE is a filename without the
// "xml:" prefix of GTEST_OUTPUT.
//
// The net priority order after flag processing is thus:
// --gtest_output command line flag
// GTEST_OUTPUT environment variable
// XML_OUTPUT_FILE environment variable
// 'default_value'
if
(
strcmp
(
flag
,
"output"
)
==
0
)
{
value
=
posix
::
GetEnv
(
"XML_OUTPUT_FILE"
);
if
(
value
!=
NULL
)
{
return
std
::
string
(
"xml:"
)
+
value
;
}
}
return
default_value
;
}
}
}
// namespace internal
}
// namespace internal
...
...
googletest/src/gtest.cc
View file @
691e38e5
...
@@ -230,9 +230,15 @@ GTEST_DEFINE_string_(
...
@@ -230,9 +230,15 @@ GTEST_DEFINE_string_(
GTEST_DEFINE_bool_
(
list_tests
,
false
,
GTEST_DEFINE_bool_
(
list_tests
,
false
,
"List all tests without running them."
);
"List all tests without running them."
);
// The net priority order after flag processing is thus:
// --gtest_output command line flag
// GTEST_OUTPUT environment variable
// XML_OUTPUT_FILE environment variable
// ''
GTEST_DEFINE_string_
(
GTEST_DEFINE_string_
(
output
,
output
,
internal
::
StringFromGTestEnv
(
"output"
,
""
),
internal
::
StringFromGTestEnv
(
"output"
,
internal
::
SpecialCase_Output_Flag_XML_OUTPUT_FILE_Env
().
c_str
()),
"A format (defaults to
\"
xml
\"
but can be specified to be
\"
json
\"
), "
"A format (defaults to
\"
xml
\"
but can be specified to be
\"
json
\"
), "
"optionally followed by a colon and an output file name or directory. "
"optionally followed by a colon and an output file name or directory. "
"A directory is indicated by a trailing pathname separator. "
"A directory is indicated by a trailing pathname separator. "
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment