TinyTest Examples
This directory contains examples demonstrating how to use TinyTest in different build environments.
Available Examples
1. Standalone Example
Located in the standalone directory, this example demonstrates:
- How to use TinyTest in a standalone project with CMake's FetchContent
- No pre-installation required - TinyTest is automatically downloaded and built
- Testing multiple functions: arithmetic, string manipulation, prime checking
- Collecting and reporting test results
2. Preinstalled Example
Located in the preinstalled directory, this example demonstrates:
- How to use TinyTest when it's installed on the system
- Using CMake's find_package to locate the TinyTest installation
- Testing a simple calculator application with exception handling
- The build script automatically installs TinyTest if it's not found
3. Sample Project
Located in the sample_project directory, this example demonstrates:
- A minimal example that tests a single function
- Complete build scripts for both Windows and Linux/macOS
- Clear structure for a small TinyTest project
Building the Examples
Each example includes its own build scripts and instructions. See the README.md file in each example directory for specific details.
Quick Start
# For the standalone example
cd standalone
chmod +x build.sh # On Linux/macOS
./build.sh # On Linux/macOS
build.bat # On Windows
# For the preinstalled example
cd preinstalled
chmod +x build.sh # On Linux/macOS
./build.sh # On Linux/macOS
build.bat # On Windows
# For the sample project
cd sample_project
chmod +x build.sh # On Linux/macOS
./build.sh # On Linux/macOS
build.bat # On Windows
Choosing the Right Approach
-
Standalone (FetchContent): Best for projects where you want to ensure everyone has the same version of TinyTest without requiring a separate installation step.
-
Preinstalled (find_package): Best for larger projects or environments where TinyTest is a common dependency shared across multiple projects.
-
Sample Project: Best for learning the basics of TinyTest with minimal complexity.