The Pest Parallel Plugin

Overview
Comments
  • Update Laravel application detection

    Update Laravel application detection

    Fixes https://github.com/pestphp/pest/issues/501

    This should work, tested locally in Laravel projects and some packages.

    If someone has a better option, I can modify this PR.

    Another way to test package install is to use composer-runtime-api and \Composer\InstalledPackages

    opened by bastien-phi 4
  • Provides support for the `stopOnFailure` phpunit.xml option

    Provides support for the `stopOnFailure` phpunit.xml option

    This resolves pestphp/pest#381

    ParaTest does not reading phpunit configs here.

    It only accepts if it comes as an argument (--stop-on-failure).

    If stopOnFailure="true":

    $this->options->stopOnFailure(); // false
    $this->options->configuration()->phpunit()->stopOnFailure(); // true
    

    If stopOnFailure="false":

    $this->options->stopOnFailure(); // false
    $this->options->configuration()->phpunit()->stopOnFailure(); // false
    

    If stopOnFailure="true" (with --stop-on-failure):

    $this->options->stopOnFailure(); // true
    $this->options->configuration()->phpunit()->stopOnFailure(); // true
    

    Edit

    I think this is a temporary solution that should be.

    Because stopOnWarning etc configs also need to be supported.

    Edit 2

    I found out that ParaTest does not support stopOnWarning.

    opened by mertasan 4
  • [2.x] Update Laravel application detection

    [2.x] Update Laravel application detection

    Re-submission of https://github.com/pestphp/pest-plugin-parallel/pull/13 targetting 2.x

    It fixes https://github.com/pestphp/pest/issues/501 and https://github.com/pestphp/pest/issues/626

    opened by bastien-phi 2
  • Removes the

    Removes the "No tests executed!" output

    This resolves https://github.com/pestphp/pest/issues/380

    Previously, parallel would show output for 'No tests executed'. Now we more closely match standard Pest output by simply skipping over unexecuted test cases.

    opened by lukeraymonddowning 1
  • fix: resolve static analysis warnings

    fix: resolve static analysis warnings

    The only commit I wasn't sure about is 7928bb8e4de3340195cdd33a64f01cd22731c595, it's a private method that doesn't appear to be used anywhere. But wasn't sure if this was intentional.

    opened by owenvoke 0
  • Allows for Laravel parallel hooks to be fired when using `vendor/bin/pest --parallel`

    Allows for Laravel parallel hooks to be fired when using `vendor/bin/pest --parallel`

    Previously, an error in how arguments were handled was causing the Laravel runner to be ignored when using vendor/bin/pest --parallel.

    This PR refactors how arguments are handled. I may yet decide to move away from an abstract class and use a trait instead.

    Kind Regards, Luke

    opened by lukeraymonddowning 0
  • Adds color support for output errors

    Adds color support for output errors

    Howdy!

    This PR makes use of the new env variable in Collision to produce the same beautiful syntax highlighting in parallel as in series.

    Before

    Screenshot 2021-08-26 at 17 05 43

    After

    Screenshot 2021-08-26 at 17 05 51

    Kind Regards, Luke

    opened by lukeraymonddowning 0
  • Modify to use similar WrapperRunner

    Modify to use similar WrapperRunner

    Current parallel execution is slow, but with WrapperRunner it's fast.

    Since pest is different from phpunit, paratest's WrapperRunner cannot be used. So, I implemented the code of paratest by adjusting it to fit pest. Merging https://github.com/pestphp/pest/pull/613 solves most of the problems, but running Pest\Console\Command::run shows results that do not match the arguments.

    I don't know how to fix this. Can I get some help ?

    Reference

    https://github.com/paratestphp/paratest

    opened by soilSpoon 0
Owner
PEST
Pest is an elegant PHP Testing Framework with a focus on simplicity.
PEST
The objective of ParaTest is to support parallel testing in PHPUnit

The objective of ParaTest is to support parallel testing in PHPUnit. Provided you have well-written PHPUnit tests, you can drop paratest in your project and start using it with no additional bootstrap or configurations!

null 2k Dec 31, 2022
⛽ Pest plugin to test Laravel applications powered by Octane.

⛽ Laravel Octane (Pest Plugin) Pest plugin to test Laravel applications powered by Octane. Install Via Composer composer require --dev cerbero/pest-pl

Andrea Marco Sartori 21 Apr 5, 2022
A Pest plugin to control the flow of time

This Pest plugin offers a function testTime that allows you to freeze and manipulate the current time in your tests.

Spatie 34 Nov 16, 2022
This plugin adds basic HTTP requests functionality to Pest tests, using minicli/curly

Curly Pest Plugin This plugin adds basic HTTP requests functionality to Pest tests, using minicli/curly. Installation composer require minicli/pest-pl

minicli 16 Mar 24, 2022
Given When Then (GWT) Plugin for Pest

Given When Then (GWT) Plugin for Pest A simple API allows you to structure your tests focused on the behaviour. Given-When-Then separation makes the t

Milroy Fraser 85 Dec 22, 2022
Add mocking capabilities to Pest or PHPUnit

This repository contains the Pest Plugin Mock. The Mocking API can be used in regular PHPUnit projects. For that, you just have to run the following c

PEST 16 Dec 3, 2022
Integrates Pest with PHP-VCR using plugins.

Pest plugin for PHP-VCR Integrates Pest with PHP-VCR using plugins. Installation You can install the package via composer: composer require phpjuice/p

PHPJuice 4 Sep 1, 2021
Wraps your Pest suite in a Laravel application instance, allowing global use of the framework in tests.

Pest Larastrap Plugin This is currently a highly experimental project and is subject to large pre-release changes. Pest PHP is an awesome PHP testing

Luke Downing 3 Jan 6, 2022
PHPUnit to Pest Converter

PestConverter PestConverter is a PHP library for converting PHPUnit tests to Pest tests. Before use Before using this converter, make sure your files

null 10 Nov 21, 2022
Pest is an elegant PHP Testing Framework with a focus on simplicity

Pest is an elegant PHP Testing Framework with a focus on simplicity. It was carefully crafted to bring the joy of testing to PHP. Explore the docs: pe

PEST 5.9k Dec 27, 2022
Enforce consistent styling for your Pest PHP tests

A set of PHP CS rules for formatting Pest PHP tests.

Worksome 2 Mar 15, 2022
Prevent none-test output in your Pest tests.

Pest Plugin Silence Often, when writing tests, we echo and dump test code to debug and check everything is working correctly. It can be easy to forget

Worksome 5 Feb 23, 2022
composer parallel install plugin

prestissimo (composer plugin) This is a composer 1.x plugin that downloads packages in parallel to speed up the installation process. Announcement: Co

Hiraku NAKANO 6.3k Dec 25, 2022
This composer plugin is a temporary implementation of using symbolic links to local packages as dependencies to allow a parallel work process

Composer symlinker A Composer plugin to install packages as local symbolic links. This plugin is a temporary implementation of using symbolic links to

Pierre Cassat 18 Nov 9, 2021
:computer: Parallel testing for PHPUnit

ParaTest The objective of ParaTest is to support parallel testing in PHPUnit. Provided you have well-written PHPUnit tests, you can drop paratest in y

null 2k Dec 31, 2022
A simple PHP Toolkit to parallel generate combinations, save and use the generated terms to brute force attack via the http protocol.

Brutal A simple PHP Toolkit to parallel generate combinations, save and use the generated terms to apply brute force attack via the http protocol. Bru

Jean Carlo de Souza 4 Jul 28, 2021
The objective of ParaTest is to support parallel testing in PHPUnit

The objective of ParaTest is to support parallel testing in PHPUnit. Provided you have well-written PHPUnit tests, you can drop paratest in your project and start using it with no additional bootstrap or configurations!

null 2k Dec 31, 2022
PHP Parallel Lint - This tool check syntax of PHP files faster than serial check with fancier output

PHP Parallel Lint This application checks syntax of PHP files in parallel. It can output in plain text, colored text, json and checksyntax formats. Ad

PHP Parallel lint 156 Apr 24, 2022
⛽ Pest plugin to test Laravel applications powered by Octane.

⛽ Laravel Octane (Pest Plugin) Pest plugin to test Laravel applications powered by Octane. Install Via Composer composer require --dev cerbero/pest-pl

Andrea Marco Sartori 21 Apr 5, 2022
A plugin for working with popular money libraries in Pest

This package is a plugin for Pest PHP. It allows you to write tests against monetary values provided by either brick/money or moneyphp/money using the same declarative syntax you're used to with Pest's expectation syntax.

Luke Downing 19 Oct 30, 2022