1. 09 Nov, 2020 1 commit
    • Abseil Team's avatar
      Googletest export · fbef0711
      Abseil Team authored
      Change ACTION{,_Pn,_TEMPLATE} macros to build functors rather than ActionInterface<> subclasses, thus changing the Action<> wrappers they create to use the modernized (non-const) argument tuple type, allowing these macros to mutate their arguments.
      
      Functor-based Action<>s deep-copy the implementing object, so have the functors use a shared_ptr to the non-trivial state of bound value parameters.  No longer specialize that shared state to the particular action signature, encoding that information instead only in the instantiation of the implementation function.
      
      PiperOrigin-RevId: 341116208
      fbef0711
  2. 05 Nov, 2020 1 commit
    • ofats's avatar
      Googletest export · 710f9c11
      ofats authored
      Rewrite InvokeArgument action without using pump.
      
      PiperOrigin-RevId: 340861582
      710f9c11
  3. 10 Sep, 2020 1 commit
    • Abseil Team's avatar
      Googletest export · a4ab0abb
      Abseil Team authored
      Mark ACTION_Pn()-generated functions as must-use-result.
      
      This catches when a client creates an action and discards it, thinking that the action has actually been applied to something.
      
      This will help people who make the mistake of defining, for example, both `void Use(Foo*)` and `ACTION(Use) { Use(arg); }` for later application to a Foo.  With such an overload, a client may then write `Use();`, forgetting the param and being confused why nothing happens.
      
      This also catches when a client defines their own action in terms of an ACTION()-generated one, invokes the ACTION's builder, and then fails to invoke the resulting action, thinking it's operating on the outer action's parameters.
      
      PiperOrigin-RevId: 330614454
      a4ab0abb
  4. 28 Jul, 2020 1 commit
    • ofats's avatar
      Googletest export · c6430992
      ofats authored
      Stop using ADL for InvokeArgument action.
      
      PiperOrigin-RevId: 323234396
      c6430992
  5. 28 May, 2020 2 commits
    • dmauro's avatar
      Googletest export · 8f3854e2
      dmauro authored
      Rollback of warning on unused ACTION result change
      
      PiperOrigin-RevId: 313380971
      8f3854e2
    • Abseil Team's avatar
      Googletest export · 1397db9e
      Abseil Team authored
      Mark ACTION_Pn()-generated functions as must-use-result.
      
      This catches when a client creates an action and discards it, thinking that the action has actually been applied to something.
      
      This will help people who make the mistake of defining, for example, both `void Use(Foo*)` and `ACTION(Use) { Use(arg); }` for later application to a Foo.  With such an overload, a client may then write `Use();`, forgetting the param and being confused why nothing happens.
      
      This also catches when a client defines their own action in terms of an ACTION()-generated one, invokes the ACTION's builder, and then fails to invoke the resulting action, thinking it's operating on the outer action's parameters.
      
      PiperOrigin-RevId: 312108101
      1397db9e
  6. 01 May, 2020 1 commit
    • Abseil Team's avatar
      Googletest export · 95555251
      Abseil Team authored
      Rewrite ReturnNew action without using pump.
      
      PiperOrigin-RevId: 308219616
      95555251
  7. 24 Apr, 2020 1 commit
    • Arthur O'Dwyer's avatar
      Remove all uses of GTEST_DISALLOW_{MOVE_,}ASSIGN_. · 766ac2e1
      Arthur O'Dwyer authored
      None of these are strictly needed for correctness.
      A large number of them (maybe all of them?) trigger `-Wdeprecated`
      warnings on Clang trunk as soon as you try to use the implicitly
      defaulted (but deprecated) copy constructor of a class that has
      deleted its copy assignment operator.
      
      By declaring a deleted copy assignment operator, the old code
      also caused the move constructor and move assignment operator
      to be non-declared. This means that the old code never got move
      semantics -- "move-construction" would simply call the defaulted
      (but deprecated) copy constructor instead. With the new code,
      "move-construction" calls the defaulted move constructor, which
      I believe is what we want to happen. So this is a runtime
      performance optimization.
      
      Unfortunately we can't yet physically remove the definitions
      of these macros from gtest-port.h, because they are being used
      by other code internally at Google (according to zhangxy988).
      But no new uses should be added going forward.
      766ac2e1
  8. 16 Jan, 2020 2 commits
    • Abseil Team's avatar
      Googletest export · 5336106b
      Abseil Team authored
      Use GMOCK_PP to create GMOCK_INTERNAL_ACTION macro.
      
      Create GMOCK_INTERNAL_ACTION macro that generates ACTION_P* macroses using
      GMOCK_PP.
      
      PiperOrigin-RevId: 289815906
      5336106b
    • Abseil Team's avatar
      Googletest export · 7a8591e6
      Abseil Team authored
      Use GMOCK_PP to generate args boilerplate.
      
      Move common args describing part to separate macroses that uses GMOCK_PP to
      generate sequences.
      
      PiperOrigin-RevId: 289655624
      7a8591e6
  9. 09 Jan, 2020 2 commits
    • Abseil Team's avatar
      Googletest export · c901f67d
      Abseil Team authored
      Move part of functionality of Action* class to the base one. Reduce copypaste.
      
      Make constructor and conversion operator of Action* class independent of pump.
      
      PiperOrigin-RevId: 288907005
      c901f67d
    • Abseil Team's avatar
      Googletest export · 4b9c1691
      Abseil Team authored
      Use C++11 variadic templates for Invoke in gmock-generated-actions.h.
      
      Replace InvokeArgumentAdl with Invoke that uses C++11 variadic templates.
      
      PiperOrigin-RevId: 288449236
      4b9c1691
  10. 02 Jan, 2020 2 commits
    • Abseil Team's avatar
      Googletest export · d0a52125
      Abseil Team authored
      Use C++11 variadic templates for InvokeArgumentAdl in gmock-generated-actions.h.
      
      Make InvokeArgumentAdl use variadic templates to generate its overloads instead
      of using pump.py syntax.
      
      PiperOrigin-RevId: 286267615
      d0a52125
    • Abseil Team's avatar
      Googletest export · 6f1a8ffd
      Abseil Team authored
      Use C++11 variadic templates for InvokeArgumentAdl in gmock-generated-actions.h.
      
      Make InvokeArgumentAdl use variadic templates to generate its overloads instead
      of using pump.py syntax.
      
      PiperOrigin-RevId: 286148805
      6f1a8ffd
  11. 13 Dec, 2019 1 commit
    • Abseil Team's avatar
      Googletest export · d8eeb976
      Abseil Team authored
      Use C++11 variadic templates for ActionHelper in gmock-generated-actions.h.
      
      Make ActionHelper use variadic templates to generate Perform static member function specializations instead of using pump.py syntax.
      
      PiperOrigin-RevId: 284988441
      d8eeb976
  12. 19 Nov, 2019 1 commit
    • Abseil Team's avatar
      Googletest export · 50cfbb72
      Abseil Team authored
      Update stale comments to point to proper location.
      
      PiperOrigin-RevId: 281157036
      50cfbb72
  13. 11 Oct, 2019 1 commit
    • Robert Luberda's avatar
      Add more override keywords · 3cddd56e
      Robert Luberda authored
      Mark more functions with "override" keyword, just like
      it was done in commit 2460f971.
      
      This should prevent compiler from complaining while compiling both
      user code, and the googletest code itself with the -Wsuggest-override
      option turned on; with the exception of:
       * calls to new MOCK_METHOD() in test/gmock-function-mocker_test.cc
       * calls to old MOCK_METHODx()/MOCK_CONST_METHODx() in other
         unit test files.
      
      Closes #2493
      3cddd56e
  14. 31 Jul, 2019 1 commit
  15. 16 Jul, 2019 2 commits
    • misterg's avatar
      Googletest export · 3d9cdd58
      misterg authored
      Fix documentation links
      
      PiperOrigin-RevId: 258389329
      3d9cdd58
    • Abseil Team's avatar
      Googletest export · e4f097b5
      Abseil Team authored
      Update a broken link in a comment.
      
      PiperOrigin-RevId: 257493975
      e4f097b5
  16. 19 Jun, 2019 1 commit
    • Gennadiy Civil's avatar
      · 5ed950c9
      Gennadiy Civil authored
      Renaming doc files to make the file names more palatable and in preparation for including documentation in sync process
      5ed950c9
  17. 21 Mar, 2019 1 commit
    • Abseil Team's avatar
      Googletest export · a4b63e7e
      Abseil Team authored
      Action helpers need to pass by const& so that they can work with unique_ptr.
      
      PiperOrigin-RevId: 239062671
      a4b63e7e
  18. 17 Jan, 2019 1 commit
    • Abseil Team's avatar
      Googletest export · 0adeadd2
      Abseil Team authored
      Refactor the `Invoke` and `InvokeWithoutArgs` actions:
       - Replace pump'd classes and functions with templates.
       - Make the polymorphic actions be polymorphic functors instead.
       - Fix Invoke(Callback*) to work with subclasses of the callbacks, instead of trying to diagnose that in gmock_doctor.
      
      PiperOrigin-RevId: 229604112
      0adeadd2
  19. 17 Dec, 2018 1 commit
    • Abseil Team's avatar
      Googletest export · 096fb37a
      Abseil Team authored
      Replace pump'd code for DoAll with variadic templates.
      
      PiperOrigin-RevId: 225584656
      096fb37a
  20. 13 Dec, 2018 1 commit
  21. 20 Nov, 2018 2 commits
    • misterg's avatar
      Googletest export · b4926660
      misterg authored
      Internal Change
      
      PiperOrigin-RevId: 222123106
      b4926660
    • Abseil Team's avatar
      Googletest export · aac18185
      Abseil Team authored
      Upgrade WithArgs family of actions to C++11.
      
      PiperOrigin-RevId: 221671690
      aac18185
  22. 29 Oct, 2018 1 commit
    • misterg's avatar
      Googletest export · 80b43d90
      misterg authored
      Remove linked_ptr and use std::shared_ptr instead
      
      PiperOrigin-RevId: 219129336
      80b43d90
  23. 26 Oct, 2018 2 commits
    • Abseil Team's avatar
      Googletest export · b57c7039
      Abseil Team authored
      Remove linked_ptr and use std::shared_ptr instead
      
      PiperOrigin-RevId: 218618184
      b57c7039
    • misterg's avatar
      Googletest export · a50e4f05
      misterg authored
      Remove linked_ptr and use std::shared_ptr instead
      
      PiperOrigin-RevId: 218571466
      a50e4f05
  24. 18 Oct, 2018 1 commit
  25. 09 Oct, 2018 1 commit
  26. 14 Aug, 2018 2 commits
  27. 27 Jul, 2018 1 commit
    • Gennadiy Civil's avatar
      · 984cba30
      Gennadiy Civil authored
      Formatting changes for automatic code management
      984cba30
  28. 10 Apr, 2018 2 commits
  29. 09 Apr, 2018 1 commit
  30. 31 Aug, 2017 1 commit
  31. 25 Aug, 2015 1 commit