* Move "using namespace std;" from header to module file (to no longer pollute the global namespace).
* Fix inconsistency of having namespace prefix in test code.
* Add include guard to GildedRose.h.
* Avoid std::endl.
* Have consistent white-space.
* Rename the library under test from src to GildedRoseLib.
* Move the lib folder to test/third_party and handle ApprovalTests.hpp as header-only dependency.
* Remove the superfluous googletest_approval_main.cpp (in the same sense as there is only one GildedRoseCatch2ApprovalTests.cc)
* Set USE_FOLDERS property such that target ALL_BUILD, RUN_TESTS and ZERO_CHECK are grouped for Visual Studio.
* Set WORKING_DIRECTORY such that the RUN_TESTS target works successfully.
* Fix C++ language standard for Catch2 v3 to C++14.
* Bump third-party dependencies
* Update ApprovalTests.hpp to v10.13.0
* Update Catch2 to v3.8.0
* Update GTest to v1.16.0
* Make it possible to build and run tests in CLion
and Visual Studio 2019 out of the box
* Provide four types of initial test using different test frameworks:
* Catch2 test framework
* Traditional unit testing using Catch2
* Approval test using Catch2
* Google Test test framework
* Traditional unit testing using Google Test
* Approval test using Google Test
* The different types of initial test are located in separate folders
in the test folder.
* Remove scripts to build and run tests and replace
with instructions in the cpp README.md
* Use C++17
* Use CMake => 3.13
* Add testcase using https://github.com/approvals/ApprovalTests.cpp and google test.
* Change google test to be downloaded if not installed with cmake
* Add a run-once-cmake.sh script to build and test with cmake
* Add a run-approval-once.sh script to build and run approval test