peridot-php/leo-http-foundation

Leo assertions for testing HttpFoundation applications

Maintainers

👁 brianium

Package info

github.com/peridot-php/leo-http-foundation

pkg:composer/peridot-php/leo-http-foundation

Statistics

Installs: 21 270

Dependents: 0

Suggesters: 0

Stars: 4

Open Issues: 2

1.1.0 2015-02-10 18:03 UTC

Requires (Dev)

Suggests

None

Provides

None

Conflicts

None

Replaces

None

MIT 6f87194f7fb229f22477e8a50ca0d06f8a62db24

  • Brian Scaturro <scaturrob.woop@gmail.com>

This package is not auto-updated.

Last update: 2026-06-16 12:39:27 UTC


README

#Leo Http Foundation

Leo assertions for use with HttpFoundation

👁 Build Status
👁 Scrutinizer Code Quality

This set of assertions is evolving as needed. Please feel free to submit pull requests and make feature requests.

##Usage

You can add HttpFoundation behavior to Leo by extending the Leo assertion property.

$assertion = Leo::assertion();
$assertion->extend(new LeoHttpFoundation());

##Assertions

###->allow(methods, [message])

  • @param array $methods
  • @param string $message [optional]

Checks that the Allowed header is present on the response and that it contains all values passed in the methods array.

expect($response)->to->allow(['POST', 'GET']);
expect($response)->to->not->allow(['GET']);

###->status(status, [message])

  • @param int $status
  • @param string $message [optional]

Asserts that the response status is equal to status.

expect($response)->to->have->status(200);
expect($response)->to->not->have->status(400);

###->json

  • @param bool $assoc [optional]
  • @param int $depth [optional]
  • @param int $options [optional]

A language chain that parses the response body as json and sets it as the subject of the assertion chain. The options parameters for json_decode() may also be included.

expect($response)->json->to->have->property('name');
expect($response)->json->to->loosely->equal($expected);
expect($response)->json(true, 999, JSON_BIGINT_AS_STRING)->to->equal($expected);