-
macOS, Linux or Windows
-
git client
-
curl command line utility
-
a working build environment (Visual Studio, GCC or Clang) for C++ 20
Details
-
C++ Version
By default, the kata's CMake file is referencing C++ version 20. We also tested and compiled the code with versions 11, 14 and 17.
To use a version other than 20, simply modify the line below in the CMake configuration file to reference 11, 14 or 17.
set(CMAKE_CXX_STANDARD 20)
-
Compiler
When running on Windows, the code is compiled with MSVC.
On other platforms, the script uses the default C++ compiler set on the machine. Both GCC and Clang are supported.
-
git clone https://github.com/murex/Kata-PascalTriangle.git
cd Kata-PascalTriangle/cpp
The kata comes with a setup script to simplify initializing the project.
This setup script does the following:
- Create a build directory: Kata-PascalTriangle/cpp/build. All build-related files are generated under this directory.
- Download a copy of cmake compatible with your platform.
- Download the dependencies required to build and test the kata (such as GoogleTest).
- Generate the solution file Kata-PascalTriangle.sln for Visual Studio 2022 on Windows, or the project file Kata-PascalTriangle.xcodeproj for Xcode on macOS.
- Run an initial build and test of the kata to ensure that everything is set up properly.
./cpp_easy_setup.sh
You can run the kata from the command line or from your IDE of choice.
You may also run it using TCR if you want to add a bit of spice.
- From a terminal with CMake
- From a terminal with TCR
- From Visual Studio
- From Visual Studio with TCR
- From CLion
- From CLion with TCR
- From Visual Studio Code
- From Visual Studio Code with TCR
- From Xcode
- From Xcode with TCR
If you already have CMake 3.21.0 or higher installed on your machine, you can run one of the below commands to build the project.
Reminder: the commands below should be run from Kata-PascalTriangle/cpp directory
To build the project:
cmake --build . --config Debug
To run the tests:
ctest --output-on-failure -C Debug
Note to Windows users
Use a git bash terminal for running the command below. Windows CMD and PowerShell are not supported
Reminder: the command below should be run from Kata-PascalTriangle/cpp directory
Type the following to start TCR:
./tcrw
Refer to Using TCR section for additional details about TCR and available options.
Supported Versions: Visual Studio 2022 or later
Open Visual Studio, choose Open a project or solution
, navigate to
the location containing the cloned kata repository, and open the solution file:
Kata-PascalTriangle
/ cpp
/ build
/ Kata-PascalTriangle.sln
After loading the solution:
- Make sure the 'Kata-PascalTriangle-test' project is set as the Start-up Project.
- Run the project (press
F5
or click onLocal Window Debugger
in the toolbar). - You can also use the
Test Explorer
window to run and browse all the executed tests.
TCR is provided as a command line utility running in a terminal. You can run it from Visual Studio directly, through leveraging on its built-in terminal.
Notes
- Supported Versions: Visual Studio 2022 or later
- Visual Studio 2017 and earlier versions are not supported as they do not have a built-in terminal.
Open Visual Studio, choose Open a project or solution
, navigate to
the location containing the cloned kata repository, and open the solution file:
Kata-PascalTriangle
/ cpp
/ build
/ Kata-PascalTriangle.sln
Windows Only
Skip this step if you're on macOS or Linux
Visual Studio for Windows is usually set up to run PowerShell by default in its built-in terminal. TCR does not run in PowerShell.
Tools
> Options
> Environment
> Terminal
> Add
Parameter | Set value to |
---|---|
Name: |
Git Bash |
Shell location: |
C:\Program Files\Git\bin\bash.exe |
Arguments: |
The above Shell location
value is for a default git installation location.
You may need to adjust it in case you have installed git at a different location.
Don't forget to click the Apply
button when done.
View
> Terminal
If Git Bash is not set as the default environment for Visual Studio built-in terminal,
click in the terminal title bar on the dropdown arrow button to the right of title,
and select Git Bash
from the dropdown list.
Reminder: the command below should be run from Kata-PascalTriangle/cpp directory
From the built-in terminal:
./tcrw
Refer to Using TCR section for additional details about TCR and available options.
Open CLion and select:
File
> Open
> Kata-PascalTriangle
> cpp
CLion should automatically build the CMake file.
Run the test file PascalTriangleTest.cpp
The "Run" tool window should display all the executed tests.
TCR is provided as a command line utility running in a terminal. You can run it from CLion directly, through leveraging on its built-in terminal.
Open CLion and select:
File
> Open
> Kata-PascalTriangle
> cpp
TCR is constantly watching the filesystem for changes. For this reason you need to turn off CLion's auto-save in order for it to behave as expected.
File
> Settings
> Appearance & Behavior
> System Settings
Under Autosave
section, uncheck the 2 following options:
- Save files if the IDE is idle for ___ seconds
- Save files when switching to a different application or a built-in terminal
Windows Only
Skip this step if you're on macOS or Linux
CLion for Windows is usually set up to run PowerShell by default in its built-in terminal. TCR does not run in PowerShell.
File
> Settings
> Tools
> Terminal
Under Application Settings
section, set the Shell path
to C:\Program Files\Git\bin\bash.exe
The above path is for a default git installation location. You may need to adjust it in case you have installed git at a different location.
View
> Tool Windows
> Terminal
Reminder: the command below should be run from Kata-PascalTriangle/cpp directory
From the built-in terminal:
./tcrw
Refer to Using TCR section for additional details about TCR and available options.
Open Visual Studio Code, choose Open Folder
, navigate to Kata-PascalTriangle
/ cpp
then click Select Folder
.
Once the project is opened in Visual Studio Code, click on Build
in the bottom toolbar to build the project.
In order to run the tests, select View
> Testing
, then click on the Play
button.
TCR is provided as a command line utility running in a terminal. You can run it from Visual Studio Code directly, through leveraging on its built-in terminal.
Open Visual Studio Code, choose Open Folder
, navigate to Kata-PascalTriangle
/ cpp
then click Select Folder
.
TCR is constantly watching the filesystem for changes. For this reason you need to make sure that Visual Studio Code's auto-save is turned off in order for TCR to behave as expected.
File
> Preferences
> Settings
In Text Editor
> Files
section, make sure that Auto Save
setting is set to off
Windows Only
Skip this step if you're on macOS or Linux
Visual Studio Code for Windows is usually set up to run PowerShell by default in its built-in terminal. TCR does not run in PowerShell.
File
> Preferences
> Settings
In Features
> Terminal
section, set External: Windows Exec
to C:\Program Files\Git\bin\bash.exe
The above path is for a default git installation location. You may need to adjust it in case you have installed git at a different location.
Terminal
> New Terminal
Reminder: the command below should be run from Kata-PascalTriangle/cpp directory
From the built-in terminal:
./tcrw
Refer to Using TCR section for additional details about TCR and available options.
Open Xcode, choose Open a project or file
, navigate to Kata-PascalTriangle
/ cpp
/ build
/ Kata-PascalTriangle.xcodeproj
then click Open
.
Once the project is opened in Xcode, select Product
/ Scheme
/ Kata-PascalTriangle-test
to set it as the current active scheme.
Select Product
/ Run
to build the project and run the tests.
TCR is provided as a command line utility running in a terminal.
Xcode does not provide a built-in terminal. You can still use Xcode as an editor while running TCR in a separate terminal window.
Open Xcode, choose Open a project or file
, navigate to Kata-PascalTriangle
/ cpp
/ build
/ Kata-PascalTriangle.xcodeproj
then click Open
.
Once the project is opened in Xcode, select Product
/ Scheme
/ Kata-PascalTriangle-test
to set it as the current active scheme.
No need to build and test from Xcode
TCR takes care of building the project and running the tests. For this reason you should not build and test the project from Xcode when TCR is running. The only thing you should pay attention to is when saving your changes, which will trigger TCR's build and test.
You can use any terminal application available on macOS.
If you're not familiar with terminals, macOS comes with a built-in terminal application available under
Applications
> Utilities
> Terminal.app
.
Reminder: the command below should be run from Kata-PascalTriangle/cpp directory
From the terminal window:
./tcrw
Refer to Using TCR section for additional details about TCR and available options.
Here are the main shortcuts available once TCR utility is running:
Shortcut | Description |
---|---|
o / O |
Open in browser (with web subcommand only) |
d / D |
Enter driver role |
n / N |
Enter navigator role |
t / T |
Query timer status |
p / P |
Toggle on/off git auto-push |
l / L |
Pull from remote |
s / S |
Push to remote |
a / A |
Abort current command (when in driver role) |
q / Q |
Quit current role / Quit TCR |
? |
List available options |
Refer to TCR - Test && Commit || Revert page for additional details and explanations about TCR utility.