Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,9 @@ set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

# TODO: Remove this when upgrading to a newer version of backward-cpp (newer than v1.6)
set(CMAKE_POLICY_VERSION_MINIMUM 3.14 CACHE STRING "" FORCE)

if(MSVC)
# Ensure debug symbols are generated and linked
add_compile_options(/Zi)
Expand Down
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,11 +56,11 @@ That's it! Run your tests and see the enhanced output.

## Features

- 🎯 **Grid Visualization** - See all tests progress in real-time
- 🛡️ **Crash Handling** - Get stack traces when tests crash
- 🎨 **Color Support** - Automatic terminal detection
- 🔍 **Test Filtering** - Run specific tests or suites
- 📦 **Zero Config** - Works out of the box with Google Test
- **Grid Visualization** - See all tests progress in real-time
- **Crash Handling** - Get stack traces when tests crash
- **Color Support** - Automatic terminal detection
- **Test Filtering** - Run specific tests or suites
- **Zero Config** - Works out of the box with Google Test

## Examples

Expand Down
34 changes: 17 additions & 17 deletions docs/ARCHITECTURE.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,22 +7,22 @@ testcoe enhances Google Test by intercepting test events and providing visual fe
## Component Architecture

```
┌─────────────────────────────────────┐
│ Test Application
│ (Your Google Tests)
└────────────────────────────────────┘
┌────────────────────────────────────┐
testcoe
│ (Main Interface & API)
└────────────────────────────────────┘
┌────────────────────────────┐
┌───────▼────────┐ ┌─────▼──────┐ ┌────────────┐
│ GridListener │SignalHandler│ │TerminalUtils│
│ (Visual Grid) │ (Crashes) │ │ (Terminal)
└────────────────┘ └────────────┘ └──────────────┘
┌─────────────────────────────────────┐
Test Application │
(Your Google Tests) │
└────────────────────────────────────┘
┌────────────────────────────────────┐
testcoe
(Main Interface & API) │
└────────────────────────────────────┘
┌──────────────────│──────────────────┐
┌───────▼───────┌─────▼──────┐ ┌────────────┐
│ GridListener │SignalHandler│ │TerminalUtils│
│ (Visual Grid) │ (Crashes) │ │ (Terminal) │
└───────────────└─────────────┘ └─────────────┘
```

## Core Components
Expand Down Expand Up @@ -90,7 +90,7 @@ testcoe enhances Google Test by intercepting test events and providing visual fe
- [**backward-cpp**](https://github.com/bombela/backward-cpp) (v1.6) - Stack trace generation

### Platform Dependencies
- **Windows**: DbgHelp.dll (for symbol resolution)
- **Windows**: dbghelp, psapi and imagehlp
- **Unix/Linux**: Standard POSIX signal handling
- **macOS**: Standard POSIX signal handling

Expand Down
38 changes: 9 additions & 29 deletions docs/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,6 @@ The CI runs the following checks:
## Making Changes

### Code Style
- Use 4 spaces for indentation
- Follow existing naming conventions
- Keep lines under 120 characters
- Add comments for complex logic
Expand All @@ -74,29 +73,17 @@ The CI runs the following checks:
### Pull Request Process

1. Fork the repository
2. Create a feature branch (`git checkout -b feature/amazing-feature`)
2. Create a feature branch
3. Make your changes
4. Run tests locally
5. Commit with clear messages
6. Push to your fork (`git push origin feature/amazing-feature`)
6. Push to your fork
7. Open a Pull Request from your fork to the main repository

### Commit Messages
- Use present tense ("Add feature" not "Added feature")
- Keep first line under 50 characters
- Reference issues if applicable

## Platform-Specific Considerations

### Windows
- Test with both MSVC and MinGW
- Ensure DbgHelp.dll linking works correctly
- Verify SEH handling functions properly

### Linux/macOS
- Test signal handlers work correctly
- Verify ANSI color detection
- Check terminal clearing functions
- Use prefix for PR title `[Subject]: <PR title>`
- PR description should describe the major changes in bullet-points
- Sqaushed commit title should be the PR title, and the message should be PR description

## Adding New Features

Expand All @@ -107,20 +94,13 @@ When adding features:
4. Add tests covering the new functionality
5. Update documentation

## Debugging Tips

### Debugging Grid Display
- Set breakpoints in `GridListener::printGrid()`
- Check stream redirection in `OnTestStart/End`
## Questions?

### Debugging Crashes
- Test signal handlers with example crash tests
- Verify backward-cpp integration
- Check platform-specific code paths
Feel free to reach out at nircoe@gmail.com

## Questions?
I'm here to help make contributing to logcoe as smooth as possible!

Feel free to open an issue for:
Please open an issue for:
- Bug reports
- Feature requests
- Questions about the codebase
Expand Down
12 changes: 1 addition & 11 deletions docs/ROADMAP.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,21 +17,11 @@
- ⏳ Customizable grid layout and colors
- ⏳ JSON/XML test report generation
- ⏳ Test execution time tracking and reporting
- ⏳ Parallel test execution visualization
- ⏳ Interactive test selection mode
- ⏳ Test history and trend analysis
- ⏳ Integration with popular IDEs
- ⏳ Support for Google Test's sharding feature
- ⏳ Custom test status indicators
- ⏳ Test dependency visualization
- ⏳ Performance profiling integration
- ⏳ Remote test execution monitoring
- ⏳ Test coverage visualization
- ⏳ Support for other test frameworks

## Feature Requests

Have an idea for testcoe? Please open an issue on GitHub with the "enhancement" label.
And of course, feel free to reach out at nircoe@gmail.com

## Versioning

Expand Down
Loading