mathrix/openapi-assertions

该包已被弃用,不再维护。作者建议使用mathrix-education/openapi-assertions包。

验证PSR-7请求是否符合OpenAPI规范。高度基于league/openapi-psr7-validator。

1.0.0 2019-12-13 20:24 UTC

This package is auto-updated.

Last update: 2019-12-13 20:27:07 UTC


README

version license php-version

Mathrix Education SA所有PHP项目的基库。

允许测试API响应是否符合OpenAPI v3规范。由Mathieu Bour自豪地维护,他是副总裁CTO。mathieu@mathrix.fr

该库严重依赖于league/openapi-psr7-validator,以前是lezhnev74/openapi-psr7-validator

Lumen

为了使用Lumen的OpenAPI断言,您需要安装symfony/psr-http-message-bridge和nyholm/psr7。您可以通过以下方式完成

composer require --dev nyholm/psr7 symfony/psr-http-message-bridge

然后,将LumenOpenAPIAssertions trait添加到您的基础TestCase中,如下所示

use \Mathrix\OpenAPI\Assertions\Lumen\LumenOpenAPIAssertions;

class TestCase extends LumenTestCase {
    use LumenOpenAPIAssertions;
    
    public static function setupBeforeClass()
    {
        self::$openAPISpecificationPath = PATH_TO_SPEC_YAML;
        self::bootLumenOpenAPIAssertions();
    }
}

使用方法

要测试Illuminate响应是否符合规范,只需运行

class TestBar extends TesCase {
    public function testFoo() {
        // Your test code
        $this->assertOpenAPIResponse($response); // Where response extends \Illuminate\Http\Response
    }
}