mirror of
https://github.com/pestphp/pest.git
synced 2026-03-10 01:37:21 +01:00
Compare commits
13 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 97dc32f9d2 | |||
| a3ab065343 | |||
| c390721ac3 | |||
| f83d758d4b | |||
| e00aba539a | |||
| 7799500d06 | |||
| c099991cd9 | |||
| e27d2e7394 | |||
| 8f738f5d49 | |||
| 1e2ca40c5b | |||
| 4522cb5dcb | |||
| 4f35dbc607 | |||
| 8ea7b2b802 |
@ -19,14 +19,14 @@
|
|||||||
"require": {
|
"require": {
|
||||||
"php": "^8.1.0",
|
"php": "^8.1.0",
|
||||||
"brianium/paratest": "^7.3.1",
|
"brianium/paratest": "^7.3.1",
|
||||||
"nunomaduro/collision": "^7.10.0|^8.0.0",
|
"nunomaduro/collision": "^7.10.0|^8.0.1",
|
||||||
"nunomaduro/termwind": "^1.15.1|^2.0.0",
|
"nunomaduro/termwind": "^1.15.1|^2.0.0",
|
||||||
"pestphp/pest-plugin": "^2.1.1",
|
"pestphp/pest-plugin": "^2.1.1",
|
||||||
"pestphp/pest-plugin-arch": "^2.5.0",
|
"pestphp/pest-plugin-arch": "^2.5.0",
|
||||||
"phpunit/phpunit": "^10.5.3"
|
"phpunit/phpunit": "^10.5.5"
|
||||||
},
|
},
|
||||||
"conflict": {
|
"conflict": {
|
||||||
"phpunit/phpunit": ">10.5.3",
|
"phpunit/phpunit": ">10.5.5",
|
||||||
"sebastian/exporter": "<5.1.0",
|
"sebastian/exporter": "<5.1.0",
|
||||||
"webmozart/assert": "<1.11.0"
|
"webmozart/assert": "<1.11.0"
|
||||||
},
|
},
|
||||||
@ -52,8 +52,8 @@
|
|||||||
},
|
},
|
||||||
"require-dev": {
|
"require-dev": {
|
||||||
"pestphp/pest-dev-tools": "^2.16.0",
|
"pestphp/pest-dev-tools": "^2.16.0",
|
||||||
"pestphp/pest-plugin-type-coverage": "^2.5.0",
|
"pestphp/pest-plugin-type-coverage": "^2.6.0",
|
||||||
"symfony/process": "^6.4.0|^7.0.1"
|
"symfony/process": "^6.4.0|^7.0.0"
|
||||||
},
|
},
|
||||||
"minimum-stability": "dev",
|
"minimum-stability": "dev",
|
||||||
"prefer-stable": true,
|
"prefer-stable": true,
|
||||||
|
|||||||
@ -1,21 +1,16 @@
|
|||||||
ARG PHP=8.1
|
ARG PHP=8.1
|
||||||
FROM php:${PHP}-cli-alpine
|
FROM php:${PHP}-cli-alpine
|
||||||
|
|
||||||
RUN apk update \
|
RUN apk update && apk add \
|
||||||
&& apk add zip libzip-dev icu-dev git
|
zip libzip-dev icu-dev git \
|
||||||
|
|
||||||
RUN docker-php-ext-configure zip
|
RUN docker-php-ext-configure zip intl
|
||||||
RUN docker-php-ext-install zip
|
RUN docker-php-ext-install zip intl
|
||||||
RUN docker-php-ext-enable zip
|
RUN docker-php-ext-enable zip intl
|
||||||
|
|
||||||
RUN docker-php-ext-configure intl
|
RUN apk add --no-cache linux-headers
|
||||||
RUN docker-php-ext-install intl
|
|
||||||
RUN docker-php-ext-enable intl
|
|
||||||
|
|
||||||
RUN apk add --no-cache $PHPIZE_DEPS linux-headers
|
|
||||||
RUN pecl install xdebug
|
RUN pecl install xdebug
|
||||||
RUN docker-php-ext-enable xdebug
|
RUN docker-php-ext-enable xdebug
|
||||||
|
|
||||||
COPY --from=composer:2 /usr/bin/composer /usr/bin/composer
|
COPY --from=composer:2 /usr/bin/composer /usr/bin/composer
|
||||||
|
|
||||||
WORKDIR /var/www/html
|
WORKDIR /var/www/html
|
||||||
|
|||||||
@ -535,7 +535,7 @@ final class Expectation
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Asserts that the given expectation targets is an class.
|
* Asserts that the given expectation target is a class.
|
||||||
*/
|
*/
|
||||||
public function toBeClass(): ArchExpectation
|
public function toBeClass(): ArchExpectation
|
||||||
{
|
{
|
||||||
|
|||||||
@ -18,6 +18,7 @@ use Pest\Support\HigherOrderCallables;
|
|||||||
use Pest\Support\NullClosure;
|
use Pest\Support\NullClosure;
|
||||||
use Pest\Support\Str;
|
use Pest\Support\Str;
|
||||||
use Pest\TestSuite;
|
use Pest\TestSuite;
|
||||||
|
use PHPUnit\Framework\AssertionFailedError;
|
||||||
use PHPUnit\Framework\TestCase;
|
use PHPUnit\Framework\TestCase;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -57,6 +58,14 @@ final class TestCall
|
|||||||
$this->testSuite->beforeEach->get($this->filename)[0]($this);
|
$this->testSuite->beforeEach->get($this->filename)[0]($this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Asserts that the test fails with the given message.
|
||||||
|
*/
|
||||||
|
public function fails(?string $message = null): self
|
||||||
|
{
|
||||||
|
return $this->throws(AssertionFailedError::class, $message);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Asserts that the test throws the given `$exceptionClass` when called.
|
* Asserts that the test throws the given `$exceptionClass` when called.
|
||||||
*/
|
*/
|
||||||
|
|||||||
@ -6,7 +6,7 @@ namespace Pest;
|
|||||||
|
|
||||||
function version(): string
|
function version(): string
|
||||||
{
|
{
|
||||||
return '2.28.1';
|
return '2.30.0';
|
||||||
}
|
}
|
||||||
|
|
||||||
function testDirectory(string $file = ''): string
|
function testDirectory(string $file = ''): string
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
|
|
||||||
Pest Testing Framework 2.28.1.
|
Pest Testing Framework 2.30.0.
|
||||||
|
|
||||||
USAGE: pest <file> [options]
|
USAGE: pest <file> [options]
|
||||||
|
|
||||||
|
|||||||
@ -1,3 +1,3 @@
|
|||||||
|
|
||||||
Pest Testing Framework 2.28.1.
|
Pest Testing Framework 2.30.0.
|
||||||
|
|
||||||
|
|||||||
@ -898,6 +898,14 @@
|
|||||||
✓ it skips with falsy closure condition
|
✓ it skips with falsy closure condition
|
||||||
✓ it can be used in higher order tests
|
✓ it can be used in higher order tests
|
||||||
|
|
||||||
|
PASS Tests\Features\Fail
|
||||||
|
✓ it may fail
|
||||||
|
✓ it may fail with the given message
|
||||||
|
|
||||||
|
PASS Tests\Features\Fails
|
||||||
|
✓ it may fail
|
||||||
|
✓ it may fail with the given message
|
||||||
|
|
||||||
WARN Tests\Features\Helpers
|
WARN Tests\Features\Helpers
|
||||||
✓ it can set/get properties on $this
|
✓ it can set/get properties on $this
|
||||||
! it gets null if property do not exist → Undefined property Tests\Features\Helpers::$wqdwqdqw
|
! it gets null if property do not exist → Undefined property Tests\Features\Helpers::$wqdwqdqw
|
||||||
@ -1356,4 +1364,4 @@
|
|||||||
WARN Tests\Visual\Version
|
WARN Tests\Visual\Version
|
||||||
- visual snapshot of help command output
|
- visual snapshot of help command output
|
||||||
|
|
||||||
Tests: 2 deprecated, 4 warnings, 5 incomplete, 2 notices, 13 todos, 19 skipped, 966 passed (2286 assertions)
|
Tests: 2 deprecated, 4 warnings, 5 incomplete, 2 notices, 13 todos, 19 skipped, 970 passed (2296 assertions)
|
||||||
11
tests/Features/Fail.php
Normal file
11
tests/Features/Fail.php
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
use PHPUnit\Framework\AssertionFailedError;
|
||||||
|
|
||||||
|
it('may fail', function () {
|
||||||
|
$this->fail();
|
||||||
|
})->throws(AssertionFailedError::class);
|
||||||
|
|
||||||
|
it('may fail with the given message', function () {
|
||||||
|
$this->fail('this is a failure');
|
||||||
|
})->throws(AssertionFailedError::class, 'this is a failure');
|
||||||
9
tests/Features/Fails.php
Normal file
9
tests/Features/Fails.php
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
it('may fail', function () {
|
||||||
|
$this->fail();
|
||||||
|
})->fails();
|
||||||
|
|
||||||
|
it('may fail with the given message', function () {
|
||||||
|
$this->fail('this is a failure');
|
||||||
|
})->fails('this is a failure');
|
||||||
@ -16,7 +16,7 @@ $run = function () {
|
|||||||
|
|
||||||
test('parallel', function () use ($run) {
|
test('parallel', function () use ($run) {
|
||||||
expect($run('--exclude-group=integration'))
|
expect($run('--exclude-group=integration'))
|
||||||
->toContain('Tests: 1 deprecated, 4 warnings, 5 incomplete, 2 notices, 13 todos, 15 skipped, 953 passed (2267 assertions)')
|
->toContain('Tests: 1 deprecated, 4 warnings, 5 incomplete, 2 notices, 13 todos, 15 skipped, 957 passed (2277 assertions)')
|
||||||
->toContain('Parallel: 3 processes');
|
->toContain('Parallel: 3 processes');
|
||||||
})->skipOnWindows();
|
})->skipOnWindows();
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user