{"id":13622714,"url":"https://github.com/peridot-php/peridot","last_synced_at":"2025-05-16T10:06:28.170Z","repository":{"id":20779830,"uuid":"24064753","full_name":"peridot-php/peridot","owner":"peridot-php","description":"Event driven BDD test framework for PHP","archived":false,"fork":false,"pushed_at":"2023-06-01T12:41:01.000Z","size":644,"stargazers_count":327,"open_issues_count":8,"forks_count":27,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-05-16T10:06:23.565Z","etag":null,"topics":["bdd","php","testing"],"latest_commit_sha":null,"homepage":"http://peridot-php.github.io/","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"AOSP-CAF/platform_packages_apps_FMRadio","license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/peridot-php.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","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":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2014-09-15T16:51:30.000Z","updated_at":"2025-03-19T00:54:22.000Z","dependencies_parsed_at":"2024-06-18T11:51:50.793Z","dependency_job_id":"0356e931-ceb3-4673-9c6a-f1d98e331f37","html_url":"https://github.com/peridot-php/peridot","commit_stats":{"total_commits":392,"total_committers":12,"mean_commits":"32.666666666666664","dds":0.1607142857142857,"last_synced_commit":"7e4f1ffe55226fb353362be99fd33f49befcdd6c"},"previous_names":[],"tags_count":43,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/peridot-php%2Fperidot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/peridot-php%2Fperidot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/peridot-php%2Fperidot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/peridot-php%2Fperidot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/peridot-php","download_url":"https://codeload.github.com/peridot-php/peridot/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254509475,"owners_count":22082891,"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":["bdd","php","testing"],"created_at":"2024-08-01T21:01:23.227Z","updated_at":"2025-05-16T10:06:28.149Z","avatar_url":"https://github.com/peridot-php.png","language":"PHP","readme":"![Peridot logo](https://raw.github.com/peridot-php/peridot/master/logo.png \"Peridot logo\")\n\n[![Packagist Version](https://img.shields.io/packagist/v/peridot-php/peridot.svg?style=flat-square \"Packagist Version\")](https://packagist.org/packages/peridot-php/peridot)\n[![Build Status](https://img.shields.io/travis/peridot-php/peridot/master.svg?style=flat-square \"Build Status\")](https://travis-ci.org/peridot-php/peridot)\n[![HHVM Build Status](https://img.shields.io/badge/hhvm-tested-brightgreen.svg?style=flat-square \"HHVM Build Status\")](https://travis-ci.org/peridot-php/peridot)\n[![Windows Build Status](https://img.shields.io/appveyor/ci/peridot/peridot/master.svg?label=windows\u0026style=flat-square \"Windows Build Status\")](https://ci.appveyor.com/project/peridot/peridot)\n[![Scrutinizer Code Quality](https://img.shields.io/scrutinizer/g/peridot-php/peridot.svg?style=flat-square \"Scrutinizer Code Quality\")](https://scrutinizer-ci.com/g/peridot-php/peridot/?branch=master)\n[![Codecov Coverage](https://img.shields.io/codecov/c/github/peridot-php/peridot/master.svg?style=flat-square \"Codecov Coverage\")](https://codecov.io/gh/peridot-php/peridot)\n[![Gitter Chat](https://img.shields.io/gitter/room/peridot-php/lobby.svg?style=flat-square \"Gitter Chat\")](https://gitter.im/peridot-php/lobby)\n\nThe highly extensible, highly enjoyable, PHP testing framework.\n\nRead more at [peridot-php.github.io](http://peridot-php.github.io/) or head over to the [wiki](https://github.com/peridot-php/peridot/wiki).\n\n## Building PHAR\n\nPeridot's phar is built using [Box](https://github.com/box-project/). Once box is installed, the phar can be built using\nthe following command from the project directory:\n\n```\nbox build\n```\n\n## Generating Peridot's documentation\n\nPeridot API documentation is generated using [apigen](https://github.com/apigen/apigen). Once apigen is installed, run\nthe following command from the project directory:\n\n```\napigen generate\n```\n\nThis will output documentation to the docs/ directory.\n\n## Running Peridot's tests\n\nPeridot's test suite can be run using Peridot:\n\n```\n$ bin/peridot\n```\n\nAnd a sample of output:\n\n![Peridot output sample](https://raw.github.com/peridot-php/peridot/master/output-sample.png \"Peridot output sample\")\n\n## Release\n\nWe use [Robo](https://github.com/Codegyre/Robo) for releases.\n\n```\nrobo release [version] [site-path]\n```\n\n## using assert for expectations\n\nPeridot sets `ASSERT_CALLBACK` via [assert_options](http://php.net/manual/en/function.assert-options.php) in order to throw exceptions when using the native `assert` function. Peridot specs are considered passing if they don't throw an exception; if you are using `assert` for expectations and you find your specs are triggering false positives, you may need to update `zend.assertions` to `1` in your php.ini. This is set to `-1` by default in PHP 7+\n\nIf you aren't too keen on using `assert` for testing, there are a ton of assertion/expectation libraries out there. Anything that throws exceptions in response to a failed assertion will do. The [peridot-php](https://github.com/peridot-php) org has authored [Leo](https://github.com/peridot-php/leo), and this library offers a richer assertion vocabulary for testing.\n","funding_links":[],"categories":["测试 Testing","PHP","Table of Contents","目录","测试( Testing )"],"sub_categories":["Testing","测试 Testing"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fperidot-php%2Fperidot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fperidot-php%2Fperidot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fperidot-php%2Fperidot/lists"}