{"id":13782549,"url":"https://github.com/vmasek/IFJ-14","last_synced_at":"2025-05-11T15:32:37.657Z","repository":{"id":83086373,"uuid":"41802398","full_name":"vmasek/IFJ-14","owner":"vmasek","description":"Group project 'pascal like interpreter written in C' for IFJ 2014","archived":false,"fork":false,"pushed_at":"2015-09-02T14:33:46.000Z","size":620,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-23T06:41:20.033Z","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":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vmasek.png","metadata":{"files":{"readme":"README.md","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}},"created_at":"2015-09-02T13:24:50.000Z","updated_at":"2016-12-29T11:38:08.000Z","dependencies_parsed_at":"2023-03-06T17:45:27.571Z","dependency_job_id":null,"html_url":"https://github.com/vmasek/IFJ-14","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vmasek%2FIFJ-14","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vmasek%2FIFJ-14/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vmasek%2FIFJ-14/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vmasek%2FIFJ-14/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vmasek","download_url":"https://codeload.github.com/vmasek/IFJ-14/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253588764,"owners_count":21932320,"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":[],"created_at":"2024-08-03T18:01:38.982Z","updated_at":"2025-05-11T15:32:35.961Z","avatar_url":"https://github.com/vmasek.png","language":"C","funding_links":[],"categories":["C"],"sub_categories":[],"readme":"# README #\r\n\r\n# Makefile usage: #\r\n\r\nFor testing your modules create source file containing main function.\r\n\r\nIf is your source file placed in project directory, testing program\r\n\r\nshould be compiled wihout problems.\r\n\r\nCompile program by calling `make` in project directory.\r\n\r\n\r\n# Debugging: #\r\n\r\nFor enable debugging macros compile program with `-DDebug` switch.\r\n\r\nOr run `build` script that has debugging on.\r\n\r\nWhen using makefile try using this command. It has useful aditional gcc switches and Debug enabled.\r\n\r\n`make -B FLAGS='-DDEBUG -g -Wstrict-prototypes -Wstrict-overflow=5 -Wwrite-strings -Wunreachable-code -Winit-self -Werror-implicit-function-declaration' `\r\n\r\n# Tests: #\r\n\r\n####ADVICE:\t\r\n\r\nWhen using test make sure that your normal main(), not the one in tests.c is located in main.c file, not just under your current testing implementation.\r\n\r\nOtherwise it cannot be filtred out and tests will yell.\r\nTwo types of testing were implemented. Direct and by Script.\r\n\r\n####Running tests directly:\r\n\r\n- `./test_ifj`\t\twill run all of the implemented tests.\r\n\r\n- `./test_ifj [args]`\t\twill run all test mentonied in [args].\r\n\r\nExample:\r\n\r\n- `./test_ifj stack` \t\twill run test for stack\r\n\r\n- `./test_ifj kmp stack` \twill run test for kmp and stack\r\n\r\n- `valgrind ./test_ifj kmp stack` \twill run test for kmp and stack and check them with valgrind\r\n\r\n####Using test script:\r\n\r\nAll tests are made automatic. \r\n\r\nOutput of tests is coloured to easily spot the error.\r\n\r\nRun `./test` in Bash\r\n\r\n####Advanced testing:\r\n\r\nUse script arguments to specify test:\r\n\r\n- `mem`:\t\ttest memory allocation/deallocation (valgrind and advanced valgrind)\r\n\r\n- `debug`:\t\ttests will be runned with debugging macros turned on\r\n\r\n\r\n- `delete`:\t\ttest will be forced to delete every log and temp file\r\n- `log`:\t\ttest will be forced to STORE all log files\r\n- `ok`:\t\t\ttest will always show returned err. code\r\n\r\n\r\n- `modules`:\tmodules will be tested\r\n- `project`:\tproject will be tested\r\n\r\nRunning project test located in directories/subdirectories:\r\n\r\n- `ours`:\t\tour all tests\r\n- `scanner`:\tour scanner tests\r\n- `expr`:\t\tour expr tests\r\n- `syntax`:\t\tour syntax tests\r\n- `strins`:\t\tour syntax tests\r\n- `float`:\t\tour float errors tests\r\n- `strings`:\tour strings tests\r\n\r\n\r\n- `skal`:\t\ttests made by \"Skal\"\r\n\r\nAdding tests to script:\r\n\r\nIf you want to add new test that you just implemented:\r\n\r\n\t1.   Open script.\r\n\r\n\t2.   Add keyword to array.\r\n\r\n\t2.1. If needed, add keyword to array that will redirect test output to file.\r\n\r\n\t3.   Use.\r\n\r\n\r\n\r\n\r\n# 1337 IFJ projectis #","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvmasek%2FIFJ-14","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvmasek%2FIFJ-14","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvmasek%2FIFJ-14/lists"}