{"id":13418688,"url":"https://github.com/unittest-cpp/unittest-cpp","last_synced_at":"2026-02-20T00:31:06.774Z","repository":{"id":5498100,"uuid":"6696968","full_name":"unittest-cpp/unittest-cpp","owner":"unittest-cpp","description":"A lightweight unit testing framework for C++","archived":false,"fork":false,"pushed_at":"2023-12-18T19:09:42.000Z","size":411,"stargazers_count":578,"open_issues_count":44,"forks_count":179,"subscribers_count":48,"default_branch":"master","last_synced_at":"2026-02-13T17:33:36.431Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/unittest-cpp.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2012-11-14T23:50:08.000Z","updated_at":"2026-02-05T01:23:19.000Z","dependencies_parsed_at":"2024-05-01T23:11:40.491Z","dependency_job_id":"ec479e64-e299-4a59-85f1-ba20dee25300","html_url":"https://github.com/unittest-cpp/unittest-cpp","commit_stats":{"total_commits":219,"total_committers":33,"mean_commits":6.636363636363637,"dds":0.319634703196347,"last_synced_commit":"10e50ad70c696002b1d5bbefd0ea04b3ea92a03b"},"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/unittest-cpp/unittest-cpp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unittest-cpp%2Funittest-cpp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unittest-cpp%2Funittest-cpp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unittest-cpp%2Funittest-cpp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unittest-cpp%2Funittest-cpp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/unittest-cpp","download_url":"https://codeload.github.com/unittest-cpp/unittest-cpp/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unittest-cpp%2Funittest-cpp/sbom","scorecard":{"id":910373,"data":{"date":"2025-08-11","repo":{"name":"github.com/unittest-cpp/unittest-cpp","commit":"10e50ad70c696002b1d5bbefd0ea04b3ea92a03b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.4,"checks":[{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":6,"reason":"Found 9/13 approved changesets -- score normalized to 6","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact v2.0.0 not signed: https://api.github.com/repos/unittest-cpp/unittest-cpp/releases/5157121","Warn: release artifact v1.6.1 not signed: https://api.github.com/repos/unittest-cpp/unittest-cpp/releases/3162263","Warn: release artifact v2.0.0 does not have provenance: https://api.github.com/repos/unittest-cpp/unittest-cpp/releases/5157121","Warn: release artifact v1.6.1 does not have provenance: https://api.github.com/repos/unittest-cpp/unittest-cpp/releases/3162263"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 27 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-24T18:53:40.152Z","repository_id":5498100,"created_at":"2025-08-24T18:53:40.152Z","updated_at":"2025-08-24T18:53:40.152Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29637408,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-19T22:32:43.237Z","status":"ssl_error","status_checked_at":"2026-02-19T22:32:38.330Z","response_time":117,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-07-30T22:01:05.582Z","updated_at":"2026-02-20T00:31:06.756Z","avatar_url":"https://github.com/unittest-cpp.png","language":"C++","readme":"\u003e  ### Maintenance of UnitTest++, recently sporadic, is officially on hiatus until 26 November 2020. Subscribe to https://github.com/unittest-cpp/unittest-cpp/issues/180 for updates.\n\n\n[![Build Status](https://travis-ci.org/unittest-cpp/unittest-cpp.svg?branch=master)](https://travis-ci.org/unittest-cpp/unittest-cpp)\n[![Build status](https://ci.appveyor.com/api/projects/status/ffs2k8dddts5cyok/branch/master?svg=true)](https://ci.appveyor.com/project/pjohnmeyer/unittest-cpp/branch/master)\n\nUnitTest++\n===========\n\nUnitTest++ is a lightweight unit testing framework for C++. It was designed to do test-driven development on a wide variety of platforms. Simplicity, portability, speed, and small footprint are all very important aspects of UnitTest++. UnitTest++ is mostly standard C++ and makes minimal use of advanced library and language features, which means it should be easily portable to just about any platform. Out of the box, the following platforms are supported:\n\n* Windows\n* Linux\n* Mac OS X\n\nDocumentation\n--------------\nThe full documentation for building and using UnitTest++ can be found on the [GitHub wiki page](https://github.com/unittest-cpp/unittest-cpp/wiki). The contents of this wiki are also included as a git submodule under the `docs` folder, so version-specific Markdown documentation is always available along with the download.\n\nPre-requisites\n---------------\nWhile there are currently some bundled automake files, UnitTest++ is primarily built and supported using [CMake](http://cmake.org).\n\nDownloading\n------------\n### Latest (HEAD) ###\n\nVia git:\n\n    git clone https://github.com/unittest-cpp/unittest-cpp\n\nVia svn:\n\n    svn checkout https://github.com/unittest-cpp/unittest-cpp/trunk unittest-cpp\n\n### Latest release (v2.0.0) ###\n\nVia git:\n\n    git clone https://github.com/unittest-cpp/unittest-cpp\n    cd unittest-cpp\n    git checkout v2.0.0\n\nVia svn:\n\n    svn checkout https://github.com/unittest-cpp/unittest-cpp/tags/v2.0.0 unittest-cpp\n\nLicense\n---------\n*UnitTest++ is free software. You may copy, distribute, and modify it under\nthe terms of the License contained in the file LICENSE distributed\nwith this package. This license is the same as the MIT/X Consortium\nlicense.*\n\nContributors\n--------------\n### [GitHub Contributor Graph](https://github.com/unittest-cpp/unittest-cpp/contributors) ###\n\n### Current Maintainers: ###\n* Patrick Johnmeyer (pjohnmeyer@gmail.com) @pjohnmeyer\n* Charles Nicholson (charles.nicholson@gmail.com) @charlesnicholson\n\n### Original Authors: ###\n* Noel Llopis (llopis@convexhull.com)\n* Charles Nicholson (charles.nicholson@gmail.com)\n\n### Contributors not included in github history ###\n* Jim Tilander\n* Kim Grasman\n* Jonathan Jansson\n* Dirck Blaskey\n* Rory Driscoll\n* Dan Lind\n* Matt Kimmel -- Submitted with permission from Blue Fang Games\n* Anthony Moralez\n* Jeff Dixon\n* Randy Coulman\n* Lieven van der Heide\n\nHistoric release notes\n----------------------\n\n### Version 2.0.0 (2017-01-13) ###\n- Change Check method supporting CHECK macro to accept argument by reference\n- Introduce long macro forms (e.g. UNITTEST_CHECK); make short forms optional\n- Improved Visual Studio 2015 support\n- [Full List](https://github.com/unittest-cpp/unittest-cpp/issues?q=milestone%3A2.0.0+)\n\n### Version 1.6.0 (2016-02-29) ###\n- Add REQUIRE macro to end tests early when selected checks fail\n- [Full List](https://github.com/unittest-cpp/unittest-cpp/issues?q=milestone%3A1.6.0+)\n\n### Version 1.5.1 (2016-01-30) ###\n- pkg-config support\n- Fix for Visual Studio 2010 compilation issue in 1.5.0\n- [Full List](https://github.com/unittest-cpp/unittest-cpp/issues?q=milestone%3A1.5.1+)\n\n### Version 1.5 (2015-11-04) ###\n- Visual Studio 2015 support\n- CMake-based build management\n- Integration of SourceForge and Google Code versions of the project\n- [Full List](https://github.com/unittest-cpp/unittest-cpp/issues?q=is%3Aissue+is%3Aclosed+milestone%3A1.5.0)\n\n### Version 1.4 (2008-10-30) ###\n- CHECK macros work at arbitrary stack depth from inside TESTs.\n- Remove obsolete TEST_UTILITY macros\n- Predicated test execution (via TestRunner::RunTestsIf)\n- Better exception handling for fixture ctors/dtors.\n- VC6/7/8/9 support\n\n### Version 1.3 (2007-4-22) ###\n- Removed dynamic memory allocations (other than streams)\n- MinGW support\n- Consistent (native) line endings\n- Minor bug fixing\n\n### Version 1.2 (2006-10-29) ###\n- First pass at documentation.\n- More detailed error crash catching in fixtures.\n- Standard streams used for printing objects under check. This should allow the\n  use of standard class types such as std::string or other custom classes with\n  stream operators to ostream.\n- Standard streams can be optionally compiled off by defining UNITTEST_USE_CUSTOM_STREAMS\n  in Config.h\n- Added named test suites\n- Added CHECK_ARRAY2D_CLOSE\n- Posix library name is libUnitTest++.a now\n- Floating point numbers are postfixed with 'f' in the failure reports\n\n### Version 1.1 (2006-04-18) ###\n- CHECK macros do not have side effects even if one of the parameters changes state\n- Removed CHECK_ARRAY_EQUAL (too similar to CHECK_ARRAY_CLOSE)\n- Added local and global time constraints\n- Removed dependencies on strstream\n- Improved Posix signal to exception translator\n- Failing tests are added to Visual Studio's error list\n- Fixed Visual Studio projects to work with spaces in directories\n\n### Version 1.0 (2006-03-15) ###\n- Initial release\n\n","funding_links":[],"categories":["TODO scan for Android support in followings","Debug","C++"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Funittest-cpp%2Funittest-cpp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Funittest-cpp%2Funittest-cpp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Funittest-cpp%2Funittest-cpp/lists"}