{"id":23100549,"url":"https://github.com/pseudoincorrect/cpython_testing_framework","last_synced_at":"2026-04-28T08:03:13.700Z","repository":{"id":92888871,"uuid":"176577546","full_name":"pseudoincorrect/Cpython_testing_framework","owner":"pseudoincorrect","description":"Template for testing (integration test) C code with cpython","archived":false,"fork":false,"pushed_at":"2019-03-20T09:12:35.000Z","size":115,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-03T20:44:33.087Z","etag":null,"topics":["c","cpython","python","template"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pseudoincorrect.png","metadata":{"files":{"readme":"readme","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-03-19T18:44:22.000Z","updated_at":"2021-04-14T10:53:58.000Z","dependencies_parsed_at":null,"dependency_job_id":"fbd53271-c5af-4a30-b97b-c2c4d222e420","html_url":"https://github.com/pseudoincorrect/Cpython_testing_framework","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/pseudoincorrect/Cpython_testing_framework","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pseudoincorrect%2FCpython_testing_framework","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pseudoincorrect%2FCpython_testing_framework/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pseudoincorrect%2FCpython_testing_framework/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pseudoincorrect%2FCpython_testing_framework/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pseudoincorrect","download_url":"https://codeload.github.com/pseudoincorrect/Cpython_testing_framework/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pseudoincorrect%2FCpython_testing_framework/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32371673,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-27T20:07:02.737Z","status":"online","status_checked_at":"2026-04-28T02:00:07.250Z","response_time":56,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["c","cpython","python","template"],"created_at":"2024-12-16T23:33:04.180Z","updated_at":"2026-04-28T08:03:13.684Z","avatar_url":"https://github.com/pseudoincorrect.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"Cpython Testing framework\n\nSimple framework made to either test (integration) C code with python or to start a new Cpython project.\n\nFile Architecture:\n    main.py: \n        Python script that will:\n            Compile the C code in c_src/ folder\n            Import the compiled .so C library\n            Import data from data/ folder\n            Run the test (c function thanks to cpython)\n            Display with matplot lib\n    c_src/:\n        src/:\n            .c and .h C files to be compiled\n        makefile:\n            Gnu make build automation file\n    data/:\n        Timeseries data to be inputed in python \n\nExample chosen:\n    The ./data/ folder contains the data of an optical heart rate sensor\n    The C sources contains the algorith need to filter the above date and extrac the heart rate within the python code, we will input those data one by one to the .so library.\n    For each data inputed, the .so library's function will output a filtered one.\n    We will then display both input and output signals.\n\nDebugging python is straight forward (especially with vscode or other \"IDE/text editors\")\n\nHowever to debug the C code in ./src/ folder they are two ways:\n    Simpler one: \n        Use printf with the c code and run the main.py to compile it, and display the print statements\n    More advanced one: \n        Use vscode and GDB (or LLVM on mac) \n        Go to ./c_src/ $\u003e make executable\n        Use gdb with the binary file created in ./c_src/bin\n        Optional, setup VScode to debug with GDB:\n            https://code.visualstudio.com/docs/languages/cpp  (debugging section)\n\nInstructions:\n    $\u003e python main.py","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpseudoincorrect%2Fcpython_testing_framework","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpseudoincorrect%2Fcpython_testing_framework","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpseudoincorrect%2Fcpython_testing_framework/lists"}