Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Assumptions Laravel Package

mehr-als-nix/assumptions

Assumptions for PHPUnit: skip tests when preconditions aren’t met (PHP version, extensions, etc.). Provides assumeTrue/assumeThat and Hamcrest matchers; failed assumptions are treated as skipped, including in @before/@beforeClass. Similar to @requires.

View on GitHub
Deep Wiki
Context7

Assumptions (not only) for PHPUnit.

Build Status Code Climate Test Coverage Dependency Status Latest Stable Version Latest Unstable Version License Total Downloads Build status

Introduction

Assumptions can be used to skip tests when common preconditions, like the PHP Version or installed extensions, are not met.

The default PHPUnit runner treats tests with failing assumptions as skipped. Custom runners may behave differently.

We have included several assumptions like assumeTrue, assumeExtensionLoaded,... by default. All of those functions are subsumed in assumeThat, with the appropriate Hamcrest matcher.

A failing assumption in a @before or @beforeClass method will have the same effect as a failing assumption in each @test method of the class.


The concept behind Assumptions for PHPUnit is based on the adequate junit feature, which is documented on their wiki - Assumptions with assume

Note

There is a similar feature in PHPUnit called @requires!

If you are familiar in using @requires annotation to dedicate that a given requirement would be given and you are happy about, then you just do not need the use of Assumption for PHPUnit.

But if you want to have

  • code completion
  • better readability
  • finer control
  • more requirement abilities

then you should give Assumption for PHPUnit a try.

Requirements

  • PHP >= 7.1

if you are looking for a version which supports PHP < 7.0.7 just use the v2.0.0

Installation

see wiki:installation

Assumptions

see wiki:assumptions

Examples

see wiki:examples

ResultPrinter

see wiki:result-printer

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
enqueue/dsn
bunny/bunny
enqueue/test
enqueue/null
enqueue/amqp-tools
milesj/emojibase
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport