jlaswell/vcr
最新稳定版本:v0.1.3
Composer 安装命令:
composer require jlaswell/vcr
包简介
A simple VCR-like HTTP recording and replay library for Guzzle
README 文档
README
A simple VCR-like HTTP recording and replay library for Guzzle.
Overview
This library allows you to record HTTP interactions and replay them during tests. It was built so that I could stop copy and pasting mock requests in test cases.
Installation
First, add the library to your project's dependencies by running:
composer require --dev jlaswell/vcr
Once the library is installed, you can start using it in your project. Here's a basic example of how to use it:
<?php namespace Jlaswell\Weather\Tests; use Jlaswell\VCR\VCR; use GuzzleHttp\Client; use GuzzleHttp\HandlerStack; use Jlaswell\Weather\Client as WeatherClient; class ClientTest extends TestCase { // This will make a real request the first time and replay the request // on future calls. public function testCurrentWeather(): void { $cassette = VCR::insertCassette('weather-client'); $stack = HandlerStack::create(); $stack->push($cassette); $client = new Client(['handler' => $stack]); $weather = new WeatherClient($client) $conditions = $weather->forZipcode('20252'); $this->assertEquals('Sunny', $conditions->simpleDescription); $this->assertEquals('Sunny with a 30% chance of rain', $conditions->longDescription); } public function testAndRecordEveryTime(): void { $cassette = VCR::insertCassette('weather-client', Cassette::MODE_RECORD); $stack = HandlerStack::create(); $stack->push($cassette); // test logic } public function testAndOnlyReplayIfPresent(): void { $cassette = VCR::insertCassette('weather-client', Cassette::MODE_REPLAY); $stack = HandlerStack::create(); $stack->push($cassette); // test logic } }
For more advanced usage and configuration options, please refer to the documentation.
统计信息
- 总下载量: 11
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2024-11-19