{"id":15805953,"url":"https://github.com/chiiya/comet-demo","last_synced_at":"2026-05-11T07:45:37.376Z","repository":{"id":97720638,"uuid":"169762301","full_name":"chiiya/comet-demo","owner":"chiiya","description":"Example Laravel project showing test case generation with comet","archived":false,"fork":false,"pushed_at":"2019-05-05T19:00:31.000Z","size":368,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-10-05T02:41:13.057Z","etag":null,"topics":["api","books","comet","laravel","open-api","rest","testing","travel"],"latest_commit_sha":null,"homepage":"","language":"PHP","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/chiiya.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-02-08T16:14:00.000Z","updated_at":"2019-05-05T19:00:33.000Z","dependencies_parsed_at":"2023-03-07T02:00:51.014Z","dependency_job_id":null,"html_url":"https://github.com/chiiya/comet-demo","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/chiiya%2Fcomet-demo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chiiya%2Fcomet-demo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chiiya%2Fcomet-demo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chiiya%2Fcomet-demo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chiiya","download_url":"https://codeload.github.com/chiiya/comet-demo/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246552893,"owners_count":20795836,"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":["api","books","comet","laravel","open-api","rest","testing","travel"],"created_at":"2024-10-05T02:40:54.482Z","updated_at":"2026-05-11T07:45:32.355Z","avatar_url":"https://github.com/chiiya.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\u003cimg src=\"https://i.postimg.cc/0QZsGfyb/comet-demo-logo.png\" alt=\"Comet Demo\"\u003e\u003c/p\u003e\n\u003cp align=\"center\"\u003e\u003cstrong\u003eExample project illustrating \u003ca href=\"https://github.com/chiiya/comet\"\u003ecomet\u003c/a\u003e abilities.\u003c/strong\u003e\u003c/p\u003e\n\n## Index\n\u003cpre\u003e\n\u003ca href=\"#introduction\"\n\u003e\u003e Introduction .....................................................................\u003c/a\u003e\n\u003ca href=\"#setup\"\n\u003e\u003e Setup ............................................................................\u003c/a\u003e\n\u003ca href=\"#testing\"\n\u003e\u003e Testing ..........................................................................\u003c/a\u003e\n\u003ca href=\"#documentation\"\n\u003e\u003e Documentation ....................................................................\u003c/a\u003e\n\u003c/pre\u003e\n\n## Introduction\nThis project contains the implementation of a simple Laravel example RESTful API for travel books.\nWe have several different models: countries, languages, authors and books. Travel books are written by one author,\nin one language, for one country. Some endpoints allow additional filtering or including of relationships.\n\nThe different API routes and their parameters are:\n```http request\n# Countries\nGET /countries{?include}\nGET /countries/{code}{?include}\nPOST /countries\nPATCH /countries/{code}\nDELETE /countries/{code}\n\n# Languages\nGET /languages{?include}\nGET /languages/{id}{?include}\nPOST /languages\nPATCH /languages/{id}\nDELETE /languages/{id}\n\n# Authors\nGET /authors{?filter[name],include}\nGET /authors/{id}{?include}\nPOST /authors\nPATCH /authors/{id}\nDELETE /authors/{id}\n\n# Books\nGET /books{?filter[title],filter[publisher],filter[author],filter[country],filter[language],include}\nGET /books/{id}{?include}\nPOST /books\nPATCH /books/{id}\nDELETE /books/{id}\n```\n\n## Setup\nAfter cloning the repository, initialize the project with:\n```bash\ncp .env.example .env\ncomposer install\nphp artisan key:generate\nphp artisan migrate --seed\nyarn # or npm install\n```\nWhen using Homestead (recommended), don't forget to update your site configuration and add an entry to your local hosts file.\n\n## Testing\nFor this relatively simple API with 20 endpoints, Comet is able to generate 112 test-cases.\nBy executing `npx comet make:tests specification.yml` all test-cases will be generated. What this does is: \n1. Add a Comet test suite to your `phpunit.xml` file, if not already present.\n2. Add the necessary dependencies to your `composer.json` (Make sure to run `composer install` afterwards).\n3. Generate the hook trait and the actual test cases (@`tests/Comet`)\nTo execute the tests, run `make test`. In order to generate a code-coverage report, run `make code-coverage`.\n\n## Documentation\nComing soon.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchiiya%2Fcomet-demo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchiiya%2Fcomet-demo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchiiya%2Fcomet-demo/lists"}