Merge branch 'master' into hethi/unused-import
This commit is contained in:
		
						commit
						f73a2170d3
					
				
							
								
								
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							@ -8,3 +8,5 @@ bazel-genfiles
 | 
			
		||||
bazel-googletest
 | 
			
		||||
bazel-out
 | 
			
		||||
bazel-testlogs
 | 
			
		||||
# python
 | 
			
		||||
*.pyc
 | 
			
		||||
@ -36,8 +36,8 @@ compiler:
 | 
			
		||||
script: ./travis.sh
 | 
			
		||||
env:
 | 
			
		||||
  matrix:
 | 
			
		||||
    - SHARED_LIB=OFF STATIC_LIB=ON CMAKE_PKG=OFF BUILD_TYPE=debug VERBOSE=1
 | 
			
		||||
    - SHARED_LIB=OFF STATIC_LIB=ON CMAKE_PKG=OFF BUILD_TYPE=debug VERBOSE=1 CXX_FLAGS=-std=c++11
 | 
			
		||||
    - SHARED_LIB=OFF STATIC_LIB=ON CMAKE_PKG=OFF BUILD_TYPE=Debug VERBOSE=1
 | 
			
		||||
    - SHARED_LIB=OFF STATIC_LIB=ON CMAKE_PKG=OFF BUILD_TYPE=Debug VERBOSE=1 CXX_FLAGS=-std=c++11
 | 
			
		||||
notifications:
 | 
			
		||||
  email: false
 | 
			
		||||
sudo: false
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										89
									
								
								appveyor.yml
									
									
									
									
									
								
							
							
						
						
									
										89
									
								
								appveyor.yml
									
									
									
									
									
								
							@ -4,68 +4,85 @@ os: Visual Studio 2015
 | 
			
		||||
 | 
			
		||||
environment:
 | 
			
		||||
  matrix:
 | 
			
		||||
  - Toolset: v140
 | 
			
		||||
  - Toolset: v120
 | 
			
		||||
  - Toolset: v110
 | 
			
		||||
  - Toolset: v100
 | 
			
		||||
    - compiler: msvc-14-seh
 | 
			
		||||
      generator: "Visual Studio 14 2015"
 | 
			
		||||
 | 
			
		||||
platform:
 | 
			
		||||
  - Win32
 | 
			
		||||
  - x64
 | 
			
		||||
    - compiler: msvc-14-seh
 | 
			
		||||
      generator: "Visual Studio 14 2015 Win64"
 | 
			
		||||
 | 
			
		||||
    - compiler: msvc-12-seh
 | 
			
		||||
      generator: "Visual Studio 12 2013"
 | 
			
		||||
 | 
			
		||||
    - compiler: msvc-12-seh
 | 
			
		||||
      generator: "Visual Studio 12 2013 Win64"
 | 
			
		||||
 | 
			
		||||
    - compiler: msvc-11-seh
 | 
			
		||||
      generator: "Visual Studio 11 2012"
 | 
			
		||||
 | 
			
		||||
    - compiler: msvc-11-seh
 | 
			
		||||
      generator: "Visual Studio 11 2012 Win64"
 | 
			
		||||
 | 
			
		||||
    - compiler: msvc-10-seh
 | 
			
		||||
      generator: "Visual Studio 10 2010"
 | 
			
		||||
 | 
			
		||||
    - compiler: gcc-5.3.0-posix
 | 
			
		||||
      generator: "MinGW Makefiles"
 | 
			
		||||
      cxx_path: 'C:\mingw-w64\i686-5.3.0-posix-dwarf-rt_v4-rev0\mingw32\bin'
 | 
			
		||||
 | 
			
		||||
    - compiler: gcc-6.3.0-posix
 | 
			
		||||
      generator: "MinGW Makefiles"
 | 
			
		||||
      cxx_path: 'C:\mingw-w64\i686-6.3.0-posix-dwarf-rt_v5-rev1\mingw32\bin'
 | 
			
		||||
 | 
			
		||||
configuration:
 | 
			
		||||
#  - Release
 | 
			
		||||
  - Debug
 | 
			
		||||
  #- Release
 | 
			
		||||
 | 
			
		||||
build:
 | 
			
		||||
  verbosity: minimal
 | 
			
		||||
 | 
			
		||||
artifacts:
 | 
			
		||||
  - path: '_build/Testing/Temporary/*'
 | 
			
		||||
    name: test_results
 | 
			
		||||
 | 
			
		||||
before_build:
 | 
			
		||||
install:
 | 
			
		||||
- ps: |
 | 
			
		||||
    Write-Output "Configuration: $env:CONFIGURATION"
 | 
			
		||||
    Write-Output "Platform: $env:PLATFORM"
 | 
			
		||||
    $generator = switch ($env:TOOLSET)
 | 
			
		||||
    {
 | 
			
		||||
        "v140" {"Visual Studio 14 2015"}
 | 
			
		||||
        "v120" {"Visual Studio 12 2013"}
 | 
			
		||||
        "v110" {"Visual Studio 11 2012"}
 | 
			
		||||
        "v100" {"Visual Studio 10 2010"}
 | 
			
		||||
    }
 | 
			
		||||
    if ($env:PLATFORM -eq "x64")
 | 
			
		||||
    {
 | 
			
		||||
        $generator = "$generator Win64"
 | 
			
		||||
    Write-Output "Compiler: $env:compiler"
 | 
			
		||||
    Write-Output "Generator: $env:generator"
 | 
			
		||||
 | 
			
		||||
    # git bash conflicts with MinGW makefiles
 | 
			
		||||
    if ($env:generator -eq "MinGW Makefiles") {
 | 
			
		||||
        $env:path = $env:path.replace("C:\Program Files\Git\usr\bin;", "")
 | 
			
		||||
        if ($env:cxx_path -ne "") {
 | 
			
		||||
            $env:path += ";$env:cxx_path"
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
build_script:
 | 
			
		||||
- ps: |
 | 
			
		||||
    if (($env:TOOLSET -eq "v100") -and ($env:PLATFORM -eq "x64"))
 | 
			
		||||
    {
 | 
			
		||||
        return
 | 
			
		||||
    }
 | 
			
		||||
    md _build -Force | Out-Null
 | 
			
		||||
    cd _build
 | 
			
		||||
 | 
			
		||||
    & cmake -G "$generator" -DCMAKE_CONFIGURATION_TYPES="Debug;Release" -Dgtest_build_tests=ON -Dgtest_build_samples=ON -Dgmock_build_tests=ON ..
 | 
			
		||||
    $conf = if ($env:generator -eq "MinGW Makefiles") {"-DCMAKE_BUILD_TYPE=$env:configuration"} else {"-DCMAKE_CONFIGURATION_TYPES=Debug;Release"}
 | 
			
		||||
    # Disable test for MinGW (gtest tests fail, gmock tests can not build)
 | 
			
		||||
    $gtest_build_tests = if ($env:generator -eq "MinGW Makefiles") {"-Dgtest_build_tests=OFF"} else {"-Dgtest_build_tests=ON"}
 | 
			
		||||
    $gmock_build_tests = if ($env:generator -eq "MinGW Makefiles") {"-Dgmock_build_tests=OFF"} else {"-Dgmock_build_tests=ON"}
 | 
			
		||||
    & cmake -G "$env:generator" $conf -Dgtest_build_samples=ON $gtest_build_tests $gmock_build_tests ..
 | 
			
		||||
    if ($LastExitCode -ne 0) {
 | 
			
		||||
        throw "Exec: $ErrorMessage"
 | 
			
		||||
    }
 | 
			
		||||
    & cmake --build . --config $env:CONFIGURATION
 | 
			
		||||
    & cmake --build . --config $env:configuration
 | 
			
		||||
    if ($LastExitCode -ne 0) {
 | 
			
		||||
        throw "Exec: $ErrorMessage"
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
test_script:
 | 
			
		||||
- ps: |
 | 
			
		||||
    if (($env:Toolset -eq "v100") -and ($env:PLATFORM -eq "x64"))
 | 
			
		||||
    {
 | 
			
		||||
        return
 | 
			
		||||
    if ($env:generator -eq "MinGW Makefiles") {
 | 
			
		||||
        return # No test available for MinGW
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    & ctest -C $env:CONFIGURATION --output-on-failure
 | 
			
		||||
    & ctest -C $env:configuration --timeout 300 --output-on-failure
 | 
			
		||||
    if ($LastExitCode -ne 0) {
 | 
			
		||||
        throw "Exec: $ErrorMessage"
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
artifacts:
 | 
			
		||||
  - path: '_build/CMakeFiles/*.log'
 | 
			
		||||
    name: logs
 | 
			
		||||
  - path: '_build/Testing/**/*.xml'
 | 
			
		||||
    name: test_results
 | 
			
		||||
 | 
			
		||||
@ -78,7 +78,7 @@ posting a question on the
 | 
			
		||||
 | 
			
		||||
Google Mock is not a testing framework itself.  Instead, it needs a
 | 
			
		||||
testing framework for writing tests.  Google Mock works seamlessly
 | 
			
		||||
with [Google Test](http://code.google.com/p/googletest/), but
 | 
			
		||||
with [Google Test](https://github.com/google/googletest), but
 | 
			
		||||
you can also use it with [any C++ testing framework](../../master/googlemock/docs/ForDummies.md#using-google-mock-with-any-testing-framework).
 | 
			
		||||
 | 
			
		||||
### Requirements for End Users ###
 | 
			
		||||
@ -333,8 +333,8 @@ may need to tweak your compiler and/or linker flags.  Please see the
 | 
			
		||||
If you have custom matchers defined using `MatcherInterface` or
 | 
			
		||||
`MakePolymorphicMatcher()`, you'll need to update their definitions to
 | 
			
		||||
use the new matcher API (
 | 
			
		||||
[monomorphic](http://code.google.com/p/googlemock/wiki/CookBook#Writing_New_Monomorphic_Matchers),
 | 
			
		||||
[polymorphic](http://code.google.com/p/googlemock/wiki/CookBook#Writing_New_Polymorphic_Matchers)).
 | 
			
		||||
[monomorphic](./docs/CookBook.md#writing-new-monomorphic-matchers),
 | 
			
		||||
[polymorphic](./docs/CookBook.md#writing-new-polymorphic-matchers)).
 | 
			
		||||
Matchers defined using `MATCHER()` or `MATCHER_P*()` aren't affected.
 | 
			
		||||
 | 
			
		||||
### Developing Google Mock ###
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
m4_include(../googletest/m4/acx_pthread.m4)
 | 
			
		||||
 | 
			
		||||
AC_INIT([Google C++ Mocking Framework],
 | 
			
		||||
        [1.7.0],
 | 
			
		||||
        [1.8.0],
 | 
			
		||||
        [googlemock@googlegroups.com],
 | 
			
		||||
        [gmock])
 | 
			
		||||
 | 
			
		||||
@ -101,7 +101,7 @@ AC_ARG_VAR([GTEST_VERSION],
 | 
			
		||||
           [The version of Google Test available.])
 | 
			
		||||
HAVE_BUILT_GTEST="no"
 | 
			
		||||
 | 
			
		||||
GTEST_MIN_VERSION="1.7.0"
 | 
			
		||||
GTEST_MIN_VERSION="1.8.0"
 | 
			
		||||
 | 
			
		||||
AS_IF([test "x${enable_external_gtest}" = "xyes"],
 | 
			
		||||
      [# Begin filling in variables as we are able.
 | 
			
		||||
 | 
			
		||||
@ -249,7 +249,7 @@ match them more flexibly, or get more informative messages, you can use:
 | 
			
		||||
| `SizeIs(m)`              | `argument` is a container whose size matches `m`. E.g. `SizeIs(2)` or `SizeIs(Lt(2))`.                                           |
 | 
			
		||||
| `UnorderedElementsAre(e0, e1, ..., en)` | `argument` has `n + 1` elements, and under some permutation each element matches an `ei` (for a different `i`), which can be a value or a matcher. 0 to 10 arguments are allowed. |
 | 
			
		||||
| `UnorderedElementsAreArray({ e0, e1, ..., en })`, `UnorderedElementsAreArray(array)`, or `UnorderedElementsAreArray(array, count)` | The same as `UnorderedElementsAre()` except that the expected element values/matchers come from an initializer list, STL-style container, or C-style array. |
 | 
			
		||||
| `WhenSorted(m)`          | When `argument` is sorted using the `<` operator, it matches container matcher `m`. E.g. `WhenSorted(UnorderedElementsAre(1, 2, 3))` verifies that `argument` contains elements `1`, `2`, and `3`, ignoring order. |
 | 
			
		||||
| `WhenSorted(m)`          | When `argument` is sorted using the `<` operator, it matches container matcher `m`. E.g. `WhenSorted(ElementsAre(1, 2, 3))` verifies that `argument` contains elements `1`, `2`, and `3`, ignoring order. |
 | 
			
		||||
| `WhenSortedBy(comparator, m)` | The same as `WhenSorted(m)`, except that the given comparator instead of `<` is used to sort `argument`. E.g. `WhenSortedBy(std::greater<int>(), ElementsAre(3, 2, 1))`. |
 | 
			
		||||
 | 
			
		||||
Notes:
 | 
			
		||||
 | 
			
		||||
@ -64,7 +64,7 @@ compile it in the [README](../README.md) file.
 | 
			
		||||
A mocking framework is of no good if itself is not thoroughly tested.
 | 
			
		||||
Tests should be written for any new code, and changes should be
 | 
			
		||||
verified to not break existing tests before they are submitted for
 | 
			
		||||
review. To perform the tests, follow the instructions in [README](http://code.google.com/p/googlemock/source/browse/trunk/README) and
 | 
			
		||||
review. To perform the tests, follow the instructions in [README](../README.md) and
 | 
			
		||||
verify that there are no failures.
 | 
			
		||||
 | 
			
		||||
# Contributing Code #
 | 
			
		||||
@ -98,7 +98,7 @@ to conform to the style outlined [here](https://google.github.io/styleguide/cppg
 | 
			
		||||
Please do submit code. Here's what you need to do:
 | 
			
		||||
 | 
			
		||||
  1. Normally you should make your change against the SVN trunk instead of a branch or a tag, as the latter two are for release control and should be treated mostly as read-only.
 | 
			
		||||
  1. Decide which code you want to submit. A submission should be a set of changes that addresses one issue in the [Google Mock issue tracker](http://code.google.com/p/googlemock/issues/list). Please don't mix more than one logical change per submittal, because it makes the history hard to follow. If you want to make a change that doesn't have a corresponding issue in the issue tracker, please create one.
 | 
			
		||||
  1. Decide which code you want to submit. A submission should be a set of changes that addresses one issue in the [Google Mock issue tracker](https://github.com/google/googletest/issues). Please don't mix more than one logical change per submittal, because it makes the history hard to follow. If you want to make a change that doesn't have a corresponding issue in the issue tracker, please create one.
 | 
			
		||||
  1. Also, coordinate with team members that are listed on the issue in question. This ensures that work isn't being duplicated and communicating your plan early also generally leads to better patches.
 | 
			
		||||
  1. Ensure that your code adheres to the [Google Mock source code style](#Coding_Style.md).
 | 
			
		||||
  1. Ensure that there are unit tests for your code.
 | 
			
		||||
 | 
			
		||||
@ -875,7 +875,7 @@ DoAll(Action1 a1, Action2 a2, Action3 a3, Action4 a4, Action5 a5, Action6 a6,
 | 
			
		||||
// MORE INFORMATION:
 | 
			
		||||
//
 | 
			
		||||
// To learn more about using these macros, please search for 'ACTION'
 | 
			
		||||
// on http://code.google.com/p/googlemock/wiki/CookBook.
 | 
			
		||||
// on https://github.com/google/googletest/blob/master/googlemock/docs/CookBook.md
 | 
			
		||||
 | 
			
		||||
// An internal macro needed for implementing ACTION*().
 | 
			
		||||
#define GMOCK_ACTION_ARG_TYPES_AND_NAMES_UNUSED_\
 | 
			
		||||
 | 
			
		||||
@ -357,7 +357,7 @@ $range j2 2..i
 | 
			
		||||
// MORE INFORMATION:
 | 
			
		||||
//
 | 
			
		||||
// To learn more about using these macros, please search for 'ACTION'
 | 
			
		||||
// on http://code.google.com/p/googlemock/wiki/CookBook.
 | 
			
		||||
// on https://github.com/google/googletest/blob/master/googlemock/docs/CookBook.md
 | 
			
		||||
 | 
			
		||||
$range i 0..n
 | 
			
		||||
$range k 0..n-1
 | 
			
		||||
 | 
			
		||||
@ -1376,7 +1376,7 @@ AnyOf(M1 m1, M2 m2, M3 m3, M4 m4, M5 m5, M6 m6, M7 m7, M8 m8, M9 m9, M10 m10) {
 | 
			
		||||
// ================
 | 
			
		||||
//
 | 
			
		||||
// To learn more about using these macros, please search for 'MATCHER'
 | 
			
		||||
// on http://code.google.com/p/googlemock/wiki/CookBook.
 | 
			
		||||
// on https://github.com/google/googletest/blob/master/googlemock/docs/CookBook.md
 | 
			
		||||
 | 
			
		||||
#define MATCHER(name, description)\
 | 
			
		||||
  class name##Matcher {\
 | 
			
		||||
 | 
			
		||||
@ -587,7 +587,7 @@ $$   // show up in the generated code.
 | 
			
		||||
// ================
 | 
			
		||||
//
 | 
			
		||||
// To learn more about using these macros, please search for 'MATCHER'
 | 
			
		||||
// on http://code.google.com/p/googlemock/wiki/CookBook.
 | 
			
		||||
// on https://github.com/google/googletest/blob/master/googlemock/docs/CookBook.md
 | 
			
		||||
 | 
			
		||||
$range i 0..n
 | 
			
		||||
$for i
 | 
			
		||||
 | 
			
		||||
@ -55,7 +55,7 @@ EXAMPLES
 | 
			
		||||
This tool is experimental.  In particular, it assumes that there is no
 | 
			
		||||
conditional inclusion of Google Mock or Google Test headers.  Please
 | 
			
		||||
report any problems to googlemock@googlegroups.com.  You can read
 | 
			
		||||
http://code.google.com/p/googlemock/wiki/CookBook for more
 | 
			
		||||
https://github.com/google/googletest/blob/master/googlemock/docs/CookBook.md for more
 | 
			
		||||
information.
 | 
			
		||||
"""
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										2
									
								
								googletest/.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								googletest/.gitignore
									
									
									
									
										vendored
									
									
								
							@ -1,2 +0,0 @@
 | 
			
		||||
# python
 | 
			
		||||
*.pyc
 | 
			
		||||
@ -236,23 +236,33 @@ endfunction()
 | 
			
		||||
# creates a Python test with the given name whose main module is in
 | 
			
		||||
# test/name.py.  It does nothing if Python is not installed.
 | 
			
		||||
function(py_test name)
 | 
			
		||||
  # We are not supporting Python tests on Linux yet as they consider
 | 
			
		||||
  # all Linux environments to be google3 and try to use google3 features.
 | 
			
		||||
  if (PYTHONINTERP_FOUND)
 | 
			
		||||
    # ${CMAKE_BINARY_DIR} is known at configuration time, so we can
 | 
			
		||||
    # directly bind it from cmake. ${CTEST_CONFIGURATION_TYPE} is known
 | 
			
		||||
    # only at ctest runtime (by calling ctest -c <Configuration>), so
 | 
			
		||||
    # we have to escape $ to delay variable substitution here.
 | 
			
		||||
    if (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 3.1)
 | 
			
		||||
      add_test(
 | 
			
		||||
        NAME ${name}
 | 
			
		||||
        COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/test/${name}.py
 | 
			
		||||
            --build_dir=${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>)
 | 
			
		||||
      if (CMAKE_CONFIGURATION_TYPES)
 | 
			
		||||
	# Multi-configuration build generators as for Visual Studio save
 | 
			
		||||
	# output in a subdirectory of CMAKE_CURRENT_BINARY_DIR (Debug,
 | 
			
		||||
	# Release etc.), so we have to provide it here.
 | 
			
		||||
        add_test(
 | 
			
		||||
          NAME ${name}
 | 
			
		||||
          COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/test/${name}.py
 | 
			
		||||
              --build_dir=${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>)
 | 
			
		||||
      else (CMAKE_CONFIGURATION_TYPES)
 | 
			
		||||
	# Single-configuration build generators like Makefile generators
 | 
			
		||||
	# don't have subdirs below CMAKE_CURRENT_BINARY_DIR.
 | 
			
		||||
        add_test(
 | 
			
		||||
          NAME ${name}
 | 
			
		||||
          COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/test/${name}.py
 | 
			
		||||
              --build_dir=${CMAKE_CURRENT_BINARY_DIR})
 | 
			
		||||
      endif (CMAKE_CONFIGURATION_TYPES)
 | 
			
		||||
    else (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 3.1)
 | 
			
		||||
      # ${CMAKE_CURRENT_BINARY_DIR} is known at configuration time, so we can
 | 
			
		||||
      # directly bind it from cmake. ${CTEST_CONFIGURATION_TYPE} is known
 | 
			
		||||
      # only at ctest runtime (by calling ctest -c <Configuration>), so
 | 
			
		||||
      # we have to escape $ to delay variable substitution here.
 | 
			
		||||
      add_test(
 | 
			
		||||
        ${name}
 | 
			
		||||
        ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/test/${name}.py
 | 
			
		||||
          --build_dir=${CMAKE_CURRENT_BINARY_DIR}/\${CTEST_CONFIGURATION_TYPE})
 | 
			
		||||
    endif (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 3.1)
 | 
			
		||||
  endif()
 | 
			
		||||
  endif(PYTHONINTERP_FOUND)
 | 
			
		||||
endfunction()
 | 
			
		||||
 | 
			
		||||
@ -5,7 +5,7 @@ m4_include(m4/acx_pthread.m4)
 | 
			
		||||
# "[1.0.1]"). It also asumes that there won't be any closing parenthesis
 | 
			
		||||
# between "AC_INIT(" and the closing ")" including comments and strings.
 | 
			
		||||
AC_INIT([Google C++ Testing Framework],
 | 
			
		||||
        [1.7.0],
 | 
			
		||||
        [1.8.0],
 | 
			
		||||
        [googletestframework@googlegroups.com],
 | 
			
		||||
        [gtest])
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1034,7 +1034,7 @@ namespace bar {
 | 
			
		||||
TEST(CoolTest, DoSomething) {
 | 
			
		||||
  SUCCEED();
 | 
			
		||||
}
 | 
			
		||||
}  // namespace foo
 | 
			
		||||
}  // namespace bar
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
However, the following code is **not allowed** and will produce a runtime error from Google Test because the test methods are using different test fixture classes with the same test case name.
 | 
			
		||||
@ -1052,7 +1052,7 @@ class CoolTest : public ::testing::Test {};  // Fixture: bar::CoolTest
 | 
			
		||||
TEST_F(CoolTest, DoSomething) {
 | 
			
		||||
  SUCCEED();
 | 
			
		||||
}
 | 
			
		||||
}  // namespace foo
 | 
			
		||||
}  // namespace bar
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## How do I build Google Testing Framework with Xcode 4? ##
 | 
			
		||||
 | 
			
		||||
@ -40,7 +40,7 @@ maintain.
 | 
			
		||||
## Highlights ##
 | 
			
		||||
 | 
			
		||||
  * The implementation is in a single Python script and thus ultra portable: no build or installation is needed and it works cross platforms.
 | 
			
		||||
  * Pump tries to be smart with respect to [Google's style guide](http://code.google.com/p/google-styleguide/): it breaks long lines (easy to have when they are generated) at acceptable places to fit within 80 columns and indent the continuation lines correctly.
 | 
			
		||||
  * Pump tries to be smart with respect to [Google's style guide](https://github.com/google/styleguide): it breaks long lines (easy to have when they are generated) at acceptable places to fit within 80 columns and indent the continuation lines correctly.
 | 
			
		||||
  * The format is human-readable and more concise than XML.
 | 
			
		||||
  * The format works relatively well with Emacs' C++ mode.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -52,7 +52,7 @@ EXAMPLES
 | 
			
		||||
This tool is experimental.  In particular, it assumes that there is no
 | 
			
		||||
conditional inclusion of Google Test headers.  Please report any
 | 
			
		||||
problems to googletestframework@googlegroups.com.  You can read
 | 
			
		||||
http://code.google.com/p/googletest/wiki/GoogleTestAdvancedGuide for
 | 
			
		||||
https://github.com/google/googletest/blob/master/googletest/docs/AdvancedGuide.md for
 | 
			
		||||
more information.
 | 
			
		||||
"""
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -4812,7 +4812,7 @@ bool ShouldRunTestOnShard(int total_shards, int shard_index, int test_id) {
 | 
			
		||||
// each TestCase and TestInfo object.
 | 
			
		||||
// If shard_tests == true, further filters tests based on sharding
 | 
			
		||||
// variables in the environment - see
 | 
			
		||||
// http://code.google.com/p/googletest/wiki/GoogleTestAdvancedGuide.
 | 
			
		||||
// https://github.com/google/googletest/blob/master/googletest/docs/AdvancedGuide.md .
 | 
			
		||||
// Returns the number of tests that should run.
 | 
			
		||||
int UnitTestImpl::FilterTests(ReactionToSharding shard_tests) {
 | 
			
		||||
  const Int32 total_shards = shard_tests == HONOR_SHARDING_PROTOCOL ?
 | 
			
		||||
 | 
			
		||||
@ -141,7 +141,7 @@ void VerifyGenerator(const ParamGenerator<T>& generator,
 | 
			
		||||
        << ", expected_values[i] is " << PrintValue(expected_values[i])
 | 
			
		||||
        << ", *it is " << PrintValue(*it)
 | 
			
		||||
        << ", and 'it' is an iterator created with the copy constructor.\n";
 | 
			
		||||
    it++;
 | 
			
		||||
    ++it;
 | 
			
		||||
  }
 | 
			
		||||
  EXPECT_TRUE(it == generator.end())
 | 
			
		||||
        << "At the presumed end of sequence when accessing via an iterator "
 | 
			
		||||
@ -161,7 +161,7 @@ void VerifyGenerator(const ParamGenerator<T>& generator,
 | 
			
		||||
        << ", expected_values[i] is " << PrintValue(expected_values[i])
 | 
			
		||||
        << ", *it is " << PrintValue(*it)
 | 
			
		||||
        << ", and 'it' is an iterator created with the copy constructor.\n";
 | 
			
		||||
    it++;
 | 
			
		||||
    ++it;
 | 
			
		||||
  }
 | 
			
		||||
  EXPECT_TRUE(it == generator.end())
 | 
			
		||||
        << "At the presumed end of sequence when accessing via an iterator "
 | 
			
		||||
@ -196,7 +196,7 @@ TEST(IteratorTest, ParamIteratorConformsToForwardIteratorConcept) {
 | 
			
		||||
                           << "element same as its source points to";
 | 
			
		||||
 | 
			
		||||
  // Verifies that iterator assignment works as expected.
 | 
			
		||||
  it++;
 | 
			
		||||
  ++it;
 | 
			
		||||
  EXPECT_FALSE(*it == *it2);
 | 
			
		||||
  it2 = it;
 | 
			
		||||
  EXPECT_TRUE(*it == *it2) << "Assigned iterators must point to the "
 | 
			
		||||
@ -215,7 +215,7 @@ TEST(IteratorTest, ParamIteratorConformsToForwardIteratorConcept) {
 | 
			
		||||
  // Verifies that prefix and postfix operator++() advance an iterator
 | 
			
		||||
  // all the same.
 | 
			
		||||
  it2 = it;
 | 
			
		||||
  it++;
 | 
			
		||||
  ++it;
 | 
			
		||||
  ++it2;
 | 
			
		||||
  EXPECT_TRUE(*it == *it2);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -7655,7 +7655,7 @@ TEST(NativeArrayTest, MethodsWork) {
 | 
			
		||||
  EXPECT_EQ(0, *it);
 | 
			
		||||
  ++it;
 | 
			
		||||
  EXPECT_EQ(1, *it);
 | 
			
		||||
  it++;
 | 
			
		||||
  ++it;
 | 
			
		||||
  EXPECT_EQ(2, *it);
 | 
			
		||||
  ++it;
 | 
			
		||||
  EXPECT_EQ(na.end(), it);
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user