承接 l2iterative/mock-webserver-ext 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

l2iterative/mock-webserver-ext

最新稳定版本:1.1.0

Composer 安装命令:

composer require l2iterative/mock-webserver-ext

包简介

A simple extension to donatj/mock-webserver with extra matching

README 文档

README

a group of actors sitting in a parade

This minimalistic library is intended to enable donatj/mock-webserver to handle more complex request definitions, by adapting the interfaces of InterNations/http-mock into it.

Most of the code appears to be a partial rewriting of the Matcher and Expectation implementation in InterNations/http-mock. Therefore, credits of the code should go to InterNations/http-mock.

Why extending donatj/mock-webserver?

We could have chosen not to use donatj/mock-webserver and instead to use InterNations/http-mock. We did not choose this path because InterNations/http-mock is somewhat archived, while donatj/mock-webserver is actively being maintained.

Another reason why we prefer donatj/mock-webserver is the simpler dependency, as InterNations/http-mock appears to use the Symfony framework, which could be a heavy machinery.

How to use

The test script provides a self-explanatory example.

<?php
$complex_response = new ComplexResponse();
$complex_response
    ->when_path_is('/api/users')
    ->when_method_is('POST')
    ->when_header_is('x-api-key', new RegexMatcher('/^mock/'))
    ->when_header_exists('x-api-version')
    ->when_header_not_exists('x-api-version-old')
    ->when_query_param_is('GET', 'session_uid', new RegexMatcher('/^s/'))
    ->when_query_param_exists('POST', 'image')
    ->when_query_param_not_exists('POST', 'debug')
    ->then(new Response('{"id": 1, "name": "John Doe"}', [], 200));
?>

Since ComplexResponse implements ResponseInterface, it can be a drop-in replacement.

License

This package is under the MIT license. For more detail, see LICENSE.

统计信息

  • 总下载量: 14
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 0
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-01-07