{"id":21465985,"url":"https://github.com/mp81ss/yacut","last_synced_at":"2025-03-17T05:45:57.802Z","repository":{"id":194978977,"uuid":"44876075","full_name":"mp81ss/yaCut","owner":"mp81ss","description":"Yet Another C Unit Test framework written in C","archived":false,"fork":false,"pushed_at":"2023-09-15T10:34:09.000Z","size":118,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"v2","last_synced_at":"2025-01-23T15:23:02.807Z","etag":null,"topics":["c","framework","header-only","jailhouse-hypervisor","multi-threading","multithreading","parallel","parallel-programming","test","thread","threading","threads","unit","unit-test","unit-testing","unittests","xunit","yacut"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mp81ss.png","metadata":{"files":{"readme":"readme.txt","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}},"created_at":"2015-10-24T17:09:10.000Z","updated_at":"2023-09-15T10:34:12.000Z","dependencies_parsed_at":"2023-09-16T03:22:51.226Z","dependency_job_id":null,"html_url":"https://github.com/mp81ss/yaCut","commit_stats":null,"previous_names":["mp81ss/yacut"],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mp81ss%2FyaCut","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mp81ss%2FyaCut/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mp81ss%2FyaCut/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mp81ss%2FyaCut/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mp81ss","download_url":"https://codeload.github.com/mp81ss/yaCut/tar.gz/refs/heads/v2","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243982139,"owners_count":20378606,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["c","framework","header-only","jailhouse-hypervisor","multi-threading","multithreading","parallel","parallel-programming","test","thread","threading","threads","unit","unit-test","unit-testing","unittests","xunit","yacut"],"created_at":"2024-11-23T08:12:46.276Z","updated_at":"2025-03-17T05:45:57.778Z","avatar_url":"https://github.com/mp81ss.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ARCHIVED - Moved to gitlab\r\n\r\n\r\nyaCut v2.0\r\n\r\nYet Another C \"Unit\" Test framework\r\n\r\n- Single header, ready to use\r\n- Very fast (no complex operations)\r\n- Highly Portable (16/32/64bit support, windows/nix/bsd)\r\n- Follow xUnit architecture\r\n- Support Messages, Warnings and Assertions\r\n- Lot of assertions (values, floating point, strings, arrays, objects)\r\n- Any assertion can add a message\r\n- Support Suites with setup/teardown per test and per suite too\r\n- Disabling/enabling (skip) test/suites in several ways\r\n- Blocking behaviour configurable on assertions and even warnings failure\r\n- Detailed and short result display\r\n- Log support for every assertion\r\n- Timing facilities to profile (yaCut context, test or user defined code)\r\n- Batch mode support (parametric output + error code)\r\n- Unicode aware\r\n- Parallel support (both test and user defined code)\r\n- Jailhouse support\r\n- Free (BSD-license, see file LICENSE for details)\r\n\r\n\r\nWARNING: Download a release package, branches may be unstable.\r\n\r\n\r\nTo declare a test:\r\n\r\n\r\nYCT_TEST(test) {\r\n    YCT_MESSAGE(\"A positioned message\");\r\n    YCT_WARNING(1 != 1);\r\n    YCT_ASSERT_EQUAL_MSG(1, 1, \"mmmmm\");\r\n    YCT_ASSERT_NULL(NULL);\r\n}\r\n\r\nTo run it:\r\n\r\nint main(void) {\r\n    char* title = \"TITLE\";\r\n\r\n    YCT_BEGIN(title);\r\n\r\n    YCT_TEST_RUN(test);\r\n    /* add your tests here */\r\n\r\n    YCT_DUMP(); /* print results */\r\n\r\n    YCT_END();\r\n\r\n    return 0;\r\n}\r\n\r\n\r\nSuites:\r\n\r\nvoid setup(void) {\r\n    x = 0;\r\n}\r\n\r\n/* declare a suite with setup function but not a teardown */\r\n\r\nYCT_SUITE(suite, \u0026setup, NULL) {\r\n    YCT_TEST_ADD(test);\r\n    /* add your tests here */\r\n}\r\nYCT_SUITE_END\r\n\r\nTo run the suite:\r\n\r\nYCT_BEGIN(\"\");\r\nYCT_SUITE_RUN(suite);\r\n/* add your suites/tests here */\r\n\r\nYCT_DUMP_SHORT();\r\nYCT_END();\r\n\r\nFor a complete reference of yaCut APIs, please see file help.txt\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmp81ss%2Fyacut","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmp81ss%2Fyacut","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmp81ss%2Fyacut/lists"}