Files
pest/tests/.snapshots/success.txt
2023-07-31 11:58:13 +01:00

1189 lines
44 KiB
Plaintext

PASS Tests\Arch
✓ globals
✓ dependencies
✓ contracts
PASS Tests\Environments\Windows
✓ global functions are loaded
PASS Tests\Features\AfterAll
✓ deletes file after all
PASS Tests\Features\AfterEach
✓ it does not get executed before the test
✓ it gets executed after the test
PASS Tests\Features\BeforeAll
✓ it gets executed before tests
✓ it do not get executed before each test
PASS Tests\Features\BeforeEach
✓ it gets executed before each test
✓ it gets executed before each test once again
PASS Tests\Features\BeforeEachProxiesToTestCallWithExpectations
✓ runs 1
✓ runs 2
✓ runs 3
WARN Tests\Features\BeforeEachProxiesToTestCallWithSkip
- does not run 1
- does not run 2
- does not run 3
TODO Tests\Features\BeforeEachProxiesToTestCallWithTodo - 4 todos
↓ is marked as todo 1
↓ is marked as todo 2
↓ is marked as todo 3
↓ shouldBeMarkedAsTodo
WARN Tests\Features\Coverage
✓ it has plugin
- it adds coverage if --coverage exist → Coverage is not available
✓ it adds coverage if --min exist
✓ it generates coverage based on file input
PASS Tests\Features\Covers
✓ it uses the correct PHPUnit attribute for class
✓ it uses the correct PHPUnit attribute for function
✓ it removes duplicated attributes
✓ it guesses if the given argument is a class or function
✓ it uses the correct PHPUnit attribute for trait
✓ it appends CoversNothing to method attributes
✓ it does not append CoversNothing to other methods
✓ it throws exception if no class nor method has been found
✓ a "describe" group of tests → it does not append CoversNothing to method attributes
PASS Tests\Features\DatasetsTests - 1 todo
✓ it throws exception if dataset does not exist
✓ it throws exception if dataset already exist
✓ it sets closures
✓ it sets arrays
✓ it gets bound to test case object with ('a')
✓ it gets bound to test case object with ('b')
✓ it truncates the description with ('FoooFoooFoooFoooFoooFoooFoooF…ooFooo')
✓ lazy datasets with (1)
✓ lazy datasets with (2)
✓ lazy datasets did the job right
✓ eager datasets with (1)
✓ eager datasets with (2)
✓ eager datasets did the job right
✓ lazy registered datasets with (1)
✓ lazy registered datasets with (2)
✓ lazy registered datasets did the job right
✓ eager registered datasets with (1)
✓ eager registered datasets with (2)
✓ eager registered datasets did the job right
✓ eager wrapped registered datasets with (1)
✓ eager wrapped registered datasets with (2)
✓ eager registered wrapped datasets did the job right
✓ named datasets with dataset "one"
✓ named datasets with dataset "two"
✓ named datasets did the job right
✓ lazy named datasets with (Bar)
✓ it creates unique test case names with ('Name 1', Pest\Plugin Object (), true) #1
✓ it creates unique test case names with ('Name 1', Pest\Plugin Object (), true) #2
✓ it creates unique test case names with ('Name 1', Pest\Plugin Object (), false)
✓ it creates unique test case names with ('Name 2', Pest\Plugin Object (), false)
✓ it creates unique test case names with ('Name 2', Pest\Plugin Object (), true)
✓ it creates unique test case names with ('Name 1', Pest\Plugin Object (), true) #3
✓ it creates unique test case names - count
✓ lazy multiple datasets with (1) / (3)
✓ lazy multiple datasets with (1) / (4)
✓ lazy multiple datasets with (2) / (3)
✓ lazy multiple datasets with (2) / (4)
✓ lazy multiple datasets did the job right
✓ eager multiple datasets with (1) / (3)
✓ eager multiple datasets with (1) / (4)
✓ eager multiple datasets with (2) / (3)
✓ eager multiple datasets with (2) / (4)
✓ eager multiple datasets did the job right
✓ lazy registered multiple datasets with (1) / (1)
✓ lazy registered multiple datasets with (1) / (2)
✓ lazy registered multiple datasets with (2) / (1)
✓ lazy registered multiple datasets with (2) / (2)
✓ lazy registered multiple datasets did the job right
✓ eager registered multiple datasets with (1) / (1)
✓ eager registered multiple datasets with (1) / (2)
✓ eager registered multiple datasets with (2) / (1)
✓ eager registered multiple datasets with (2) / (2)
✓ eager registered multiple datasets did the job right
✓ eager wrapped registered multiple datasets with (1) / (1)
✓ eager wrapped registered multiple datasets with (1) / (2)
✓ eager wrapped registered multiple datasets with (2) / (1)
✓ eager wrapped registered multiple datasets with (2) / (2)
✓ eager wrapped registered multiple datasets did the job right
✓ named multiple datasets with dataset "one" / dataset "three"
✓ named multiple datasets with dataset "one" / dataset "four"
✓ named multiple datasets with dataset "two" / dataset "three"
✓ named multiple datasets with dataset "two" / dataset "four"
✓ named multiple datasets did the job right
✓ more than two datasets with (1) / (3) / (5)
✓ more than two datasets with (1) / (3) / (6)
✓ more than two datasets with (1) / (4) / (5)
✓ more than two datasets with (1) / (4) / (6)
✓ more than two datasets with (2) / (3) / (5)
✓ more than two datasets with (2) / (3) / (6)
✓ more than two datasets with (2) / (4) / (5)
✓ more than two datasets with (2) / (4) / (6)
✓ more than two datasets did the job right
✓ eager registered wrapped datasets with Generator functions with (1)
✓ eager registered wrapped datasets with Generator functions with (2)
✓ eager registered wrapped datasets with Generator functions with (3)
✓ eager registered wrapped datasets with Generator functions with (4)
✓ eager registered wrapped datasets with Generator functions did the job right
✓ eager registered wrapped datasets with Generator functions display description with dataset "taylor"
✓ eager registered wrapped datasets with Generator functions display description with dataset "james"
✓ it can resolve a dataset after the test case is available with (Closure) #1
✓ it can resolve a dataset after the test case is available with (Closure) #2
✓ it can resolve a dataset after the test case is available with multiple datasets with (Closure) / (Closure) #1
✓ it can resolve a dataset after the test case is available with multiple datasets with (Closure) / (Closure) #2
✓ it can resolve a dataset after the test case is available with multiple datasets with (Closure) / (Closure) #3
✓ it can resolve a dataset after the test case is available with multiple datasets with (Closure) / (Closure) #4
✓ it can resolve a dataset after the test case is available with shared yield sets with (Closure) #1
✓ it can resolve a dataset after the test case is available with shared yield sets with (Closure) #2
✓ it can resolve a dataset after the test case is available with shared array sets with (Closure) #1
✓ it can resolve a dataset after the test case is available with shared array sets with (Closure) #2
✓ it resolves a potential bound dataset logically with ('foo', Closure)
✓ it resolves a potential bound dataset logically even when the closure comes first with (Closure, 'bar')
✓ it will not resolve a closure if it is type hinted as a closure with (Closure) #1
✓ it will not resolve a closure if it is type hinted as a closure with (Closure) #2
✓ it will not resolve a closure if it is type hinted as a callable with (Closure) #1
✓ it will not resolve a closure if it is type hinted as a callable with (Closure) #2
✓ it can correctly resolve a bound dataset that returns an array with (Closure)
✓ it can correctly resolve a bound dataset that returns an array but wants to be spread with (Closure)
↓ forbids to define tests in Datasets dirs and Datasets.php files
PASS Tests\Features\Depends
✓ first
✓ second
✓ depends
✓ depends with ...params
✓ depends with defined arguments
✓ depends run test only once
✓ it asserts true is true
✓ depends works with the correct test name
PASS Tests\Features\DependsInheritance
✓ it is a test
✓ it uses correct parent class
DEPR Tests\Features\Deprecated
! deprecated → str_contains(): Passing null to parameter #1 ($haystack) of type string is deprecated // tests/Features/Deprecated.php:6
! user deprecated → Since foo 1.0: This is a deprecation description // vendor/symfony/deprecation-contracts/function.php:25
PASS Tests\Features\Describe - 5 todos
✓ before each
✓ hooks → value
✓ hooks in different orders → value
↓ todo
✓ previous describable before each does not get applied here
↓ todo on hook → should not fail
↓ todo on hook → should run
↓ todo on describe → should not fail
↓ todo on describe → should run
✓ should run
✓ with with (1)
✓ with on hook → value with (2)
✓ with on describe → value with (3)
PASS Tests\Features\DescriptionLess
✓ get 'foo'
✓ get 'foo' → get 'bar' → expect true → toBeTrue
✓ get 'foo' → expect true → toBeTrue
✓ a "describe" group of tests → get 'foo'
✓ a "describe" group of tests → get 'foo' → get 'bar' → expect true → toBeTrue
✓ a "describe" group of tests → get 'foo' → expect true → toBeTrue
PASS Tests\Features\Exceptions
✓ it gives access the the underlying expectException
✓ it catch exceptions
✓ it catch exceptions and messages
✓ it catch exceptions, messages and code
✓ it can just define the message
✓ it can just define the code
✓ it not catch exceptions if given condition is false
✓ it catch exceptions if given condition is true
✓ it catch exceptions and messages if given condition is true
✓ it catch exceptions, messages and code if given condition is true
✓ it can just define the message if given condition is true
✓ it can just define the code if given condition is true
✓ it can just define the message if given condition is 1
✓ it can just define the code if given condition is 1
PASS Tests\Features\Expect\HigherOrder\methods
✓ it can access methods
✓ it can access multiple methods
✓ it works with not
✓ it can accept arguments
✓ it works with each
✓ it works inside of each
✓ it works with sequence
✓ it can compose complex expectations
✓ it can handle nested method calls
✓ it works with higher order tests
✓ it can use the scoped method to lock into the given level for expectations
✓ it works consistently with the json expectation method
PASS Tests\Features\Expect\HigherOrder\methodsAndProperties
✓ it can access methods and properties
✓ it can handle nested methods and properties
✓ it works with higher order tests
✓ it can start a new higher order expectation using the and syntax
✓ it can start a new higher order expectation using the and syntax in higher order tests
✓ it can start a new higher order expectation using the and syntax without nesting expectations
PASS Tests\Features\Expect\HigherOrder\properties
✓ it allows properties to be accessed from the value
✓ it can access multiple properties from the value
✓ it works with not
✓ it works with each
✓ it works inside of each
✓ it works with sequence
✓ it can compose complex expectations
✓ it works with objects
✓ it works with nested properties
✓ it works with higher order tests
PASS Tests\Features\Expect\each
✓ an exception is thrown if the the type is not iterable
✓ it expects on each item
✓ it chains expectations on each item
✓ opposite expectations on each item
✓ chained opposite and non-opposite expectations
✓ it can add expectations via "and"
✓ it accepts callables
✓ it passes the key of the current item to callables
PASS Tests\Features\Expect\extend
✓ it macros true is true
✓ it macros false is not true
✓ it macros true is true with argument
✓ it macros false is not true with argument
PASS Tests\Features\Expect\json
✓ it properly parses json string
✓ fails with broken json string
PASS Tests\Features\Expect\matchExpectation
✓ it pass
✓ it failures
✓ it runs with truthy
✓ it runs with falsy
✓ it runs with truthy closure condition
✓ it runs with falsy closure condition
✓ it can be passed non-callable values
✓ it fails with unhandled match
✓ it can be used in higher order tests
PASS Tests\Features\Expect\not
✓ not property calls
PASS Tests\Features\Expect\pipes
✓ pipe is applied and can stop pipeline
✓ pipe is run and can let the pipeline keep going
✓ pipe works with negated expectation
✓ interceptor is applied
✓ interceptor stops the pipeline
✓ interceptor is called only when filter is met
✓ interceptor can be filtered with a closure
✓ interceptor can be filter the expected parameter as well
✓ interceptor works with negated expectation
✓ intercept can add new parameters to the expectation
PASS Tests\Features\Expect\ray
✓ ray calls do not fail when ray is not installed
PASS Tests\Features\Expect\sequence
✓ an exception is thrown if the the type is not iterable
✓ allows for sequences of checks to be run on iterable data
✓ loops back to the start if it runs out of sequence items
✓ fails if the number of iterable items is greater than the number of expectations
✓ it works with associative arrays
✓ it can be passed non-callable values
✓ it can be passed a mixture of value types
PASS Tests\Features\Expect\toBe
✓ strict comparisons
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeArray
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeBool
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeCallable
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeDirectory
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeEmpty
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeFalse
✓ strict comparisons
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeFalsy
✓ passes as falsy with (false)
✓ passes as falsy with ('')
✓ passes as falsy with (null)
✓ passes as falsy with (0)
✓ passes as falsy with ('0')
✓ passes as not falsy with (true)
✓ passes as not falsy with (1) #1
✓ passes as not falsy with ('false')
✓ passes as not falsy with (1) #2
✓ passes as not falsy with (-1)
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeFile
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeFloat
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeGreaterThan
✓ passes
✓ passes with DateTime and DateTimeImmutable
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeGreaterThanOrEqual
✓ passes
✓ passes with DateTime and DateTimeImmutable
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeIn
✓ passes
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeInfinite
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeInstanceOf
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeInt
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeIterable
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeJson
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeLessThan
✓ passes
✓ passes with DateTime and DateTimeImmutable
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeLessThanOrEqual
✓ passes
✓ passes with DateTime and DateTimeImmutable
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeNAN
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeNull
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeNumeric
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeObject
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeReadableDirectory
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeReadableFile
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeResource
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeScalar
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeString
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeTrue
✓ strict comparisons
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeTruthy
✓ passes as truthy with (true)
✓ passes as truthy with (1) #1
✓ passes as truthy with ('false')
✓ passes as truthy with (1) #2
✓ passes as truthy with (-1)
✓ passes as not truthy with (false)
✓ passes as not truthy with ('')
✓ passes as not truthy with (null)
✓ passes as not truthy with (0)
✓ passes as not truthy with ('0')
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeWritableDirectory
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toBeWritableFile
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toContain
✓ passes strings
✓ passes strings with multiple needles
✓ passes arrays
✓ passes arrays with multiple needles
✓ passes with array needles
✓ failures
✓ failures with multiple needles (all failing)
✓ failures with multiple needles (some failing)
✓ not failures
✓ not failures with multiple needles (all failing)
✓ not failures with multiple needles (some failing)
PASS Tests\Features\Expect\toContainOnlyInstancesOf
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toEndWith
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toEqual
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toEqualCanonicalizing
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toEqualWithDelta
✓ pass
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toHaveCount
✓ pass
✓ failures
✓ failures with message
✓ not failures
PASS Tests\Features\Expect\toHaveKey
✓ pass
✓ pass with nested key
✓ pass with plain key with dots
✓ pass with value check
✓ pass with value check and nested key
✓ pass with value check and plain key with dots
✓ failures
✓ failures with custom message
✓ failures with custom message and Any matcher
✓ failures with nested key
✓ failures with nested key and custom message
✓ failures with nested key and custom message with Any matcher
✓ failures with plain key with dots
✓ fails with wrong value
✓ fails with wrong value and nested key
✓ fails with wrong value and plain key with dots
✓ not failures
✓ not failures with nested key
✓ not failures with plain key with dots
✓ not failures with correct value
✓ not failures with correct value and with nested key
✓ not failures with correct value and with plain key with dots
PASS Tests\Features\Expect\toHaveKeys
✓ pass
✓ pass with multi-dimensional arrays
✓ failures
✓ failures with custom message
✓ failures with multi-dimensional arrays
✓ failures with multi-dimensional arrays and custom message
✓ not failures
✓ not failures with multi-dimensional arrays
PASS Tests\Features\Expect\toHaveLength
✓ it passes with ('Fortaleza')
✓ it passes with ('Sollefteå')
✓ it passes with ('Ιεράπετρα')
✓ it passes with (stdClass)
✓ it passes with array
✓ it passes with *not*
✓ it properly fails with *not*
✓ it fails
✓ it fails with message
PASS Tests\Features\Expect\toHaveMethod
✓ pass
✓ failures
✓ failures with message
✓ not failures
PASS Tests\Features\Expect\toHaveMethods
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toHavePrefix
✓ missing prefix
✓ has prefix
✓ opposite missing prefix
✓ opposite has prefix
PASS Tests\Features\Expect\toHaveProperties
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toHaveProperty
✓ pass
✓ failures
✓ failures with message
✓ failures with message and Any matcher
✓ not failures
PASS Tests\Features\Expect\toHaveSuffix
✓ missing suffix
✓ has suffix
✓ opposite missing suffix
✓ opposite has suffix
PASS Tests\Features\Expect\toMatch
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toMatchArray
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toMatchConstraint
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toMatchObject
✓ pass
✓ pass with class
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toMatchSnapshot
✓ pass
✓ pass with __toString
✓ pass with toString
✓ pass with dataset with ('my-datas-set-value')
✓ within describe → pass with dataset with ('my-datas-set-value')
✓ pass with toArray
✓ pass with array
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toStartWith
✓ pass
✓ failures
✓ failures with custom message
✓ not failures
PASS Tests\Features\Expect\toThrow
✓ passes
✓ failures 1
✓ failures 2
✓ failures 3
✓ failures 4
✓ failures 5
✓ failures 6
✓ failures 7
✓ failures 8
✓ failures with custom message
✓ not failures
✓ closure missing parameter
✓ closure missing type-hint
✓ it can handle a non-defined exception
✓ it can handle a class not found Error
PASS Tests\Features\Expect\unless
✓ it pass
✓ it failures
✓ it runs with truthy
✓ it skips with falsy
✓ it runs with truthy closure condition
✓ it skips with falsy closure condition
✓ it can be used in higher order tests
PASS Tests\Features\Expect\when
✓ it pass
✓ it failures
✓ it runs with truthy
✓ it skips with falsy
✓ it runs with truthy closure condition
✓ it skips with falsy closure condition
✓ it can be used in higher order tests
WARN Tests\Features\Helpers
✓ it can set/get properties on $this
! it gets null if property do not exist → Undefined property Tests\Features\Helpers::$wqdwqdqw
✓ it allows to call underlying protected/private methods
✓ it throws error if method do not exist
✓ it can forward unexpected calls to any global function
✓ it can use helpers from helpers file
✓ it can use helpers from helpers directory
PASS Tests\Features\HigherOrderTests
✓ it proxies calls to object
✓ it is capable doing multiple assertions
✓ it resolves expect callables correctly
✓ does not treat method names as callables
✓ it can defer a method until after test setup
✓ it can tap a method until after test setup
✓ it can pass datasets into the expect callables with (1, 2, 3)
✓ it can pass datasets into the defer callable with (1, 2, 3)
✓ it can pass datasets into the tap callable with (1, 2, 3)
✓ it can pass shared datasets into callables with (1)
✓ it can pass shared datasets into callables with (2)
WARN Tests\Features\Incompleted
… incompleted
… it is incompleted
… it is incompleted even with method calls like skip
… it is incompleted even with method calls like group
✓ it is not incompleted because of expect
✓ it is not incompleted because of assert
✓ it is not incompleted because of test with assertions
… a "describe" group of tests → it is incompleted
PASS Tests\Features\It
✓ it is a test
✓ it is a higher order message test
✓ a "describe" group of tests → it is a test
✓ a "describe" group of tests → it is a higher order message test
NOTI Tests\Features\Notices
! notice → This is a notice description // tests/Features/Notices.php:4
! a "describe" group of tests → notice → This is a notice description // tests/Features/Notices.php:11
PASS Tests\Features\Repeat
✓ once
✓ multiple times @ repetition 1 of 5
✓ multiple times @ repetition 2 of 5
✓ multiple times @ repetition 3 of 5
✓ multiple times @ repetition 4 of 5
✓ multiple times @ repetition 5 of 5
✓ multiple times with single dataset dataset "a" @ repetition 1 of 6
✓ multiple times with single dataset dataset "b" @ repetition 1 of 6
✓ multiple times with single dataset dataset "c" @ repetition 1 of 6
✓ multiple times with single dataset dataset "a" @ repetition 2 of 6
✓ multiple times with single dataset dataset "b" @ repetition 2 of 6
✓ multiple times with single dataset dataset "c" @ repetition 2 of 6
✓ multiple times with single dataset dataset "a" @ repetition 3 of 6
✓ multiple times with single dataset dataset "b" @ repetition 3 of 6
✓ multiple times with single dataset dataset "c" @ repetition 3 of 6
✓ multiple times with single dataset dataset "a" @ repetition 4 of 6
✓ multiple times with single dataset dataset "b" @ repetition 4 of 6
✓ multiple times with single dataset dataset "c" @ repetition 4 of 6
✓ multiple times with single dataset dataset "a" @ repetition 5 of 6
✓ multiple times with single dataset dataset "b" @ repetition 5 of 6
✓ multiple times with single dataset dataset "c" @ repetition 5 of 6
✓ multiple times with single dataset dataset "a" @ repetition 6 of 6
✓ multiple times with single dataset dataset "b" @ repetition 6 of 6
✓ multiple times with single dataset dataset "c" @ repetition 6 of 6
✓ multiple times with multiple dataset dataset "a" / (4) @ repetition 1 of 7
✓ multiple times with multiple dataset dataset "a" / (5) @ repetition 1 of 7
✓ multiple times with multiple dataset dataset "a" / (6) @ repetition 1 of 7
✓ multiple times with multiple dataset dataset "b" / (4) @ repetition 1 of 7
✓ multiple times with multiple dataset dataset "b" / (5) @ repetition 1 of 7
✓ multiple times with multiple dataset dataset "b" / (6) @ repetition 1 of 7
✓ multiple times with multiple dataset dataset "c" / (4) @ repetition 1 of 7
✓ multiple times with multiple dataset dataset "c" / (5) @ repetition 1 of 7
✓ multiple times with multiple dataset dataset "c" / (6) @ repetition 1 of 7
✓ multiple times with multiple dataset dataset "a" / (4) @ repetition 2 of 7
✓ multiple times with multiple dataset dataset "a" / (5) @ repetition 2 of 7
✓ multiple times with multiple dataset dataset "a" / (6) @ repetition 2 of 7
✓ multiple times with multiple dataset dataset "b" / (4) @ repetition 2 of 7
✓ multiple times with multiple dataset dataset "b" / (5) @ repetition 2 of 7
✓ multiple times with multiple dataset dataset "b" / (6) @ repetition 2 of 7
✓ multiple times with multiple dataset dataset "c" / (4) @ repetition 2 of 7
✓ multiple times with multiple dataset dataset "c" / (5) @ repetition 2 of 7
✓ multiple times with multiple dataset dataset "c" / (6) @ repetition 2 of 7
✓ multiple times with multiple dataset dataset "a" / (4) @ repetition 3 of 7
✓ multiple times with multiple dataset dataset "a" / (5) @ repetition 3 of 7
✓ multiple times with multiple dataset dataset "a" / (6) @ repetition 3 of 7
✓ multiple times with multiple dataset dataset "b" / (4) @ repetition 3 of 7
✓ multiple times with multiple dataset dataset "b" / (5) @ repetition 3 of 7
✓ multiple times with multiple dataset dataset "b" / (6) @ repetition 3 of 7
✓ multiple times with multiple dataset dataset "c" / (4) @ repetition 3 of 7
✓ multiple times with multiple dataset dataset "c" / (5) @ repetition 3 of 7
✓ multiple times with multiple dataset dataset "c" / (6) @ repetition 3 of 7
✓ multiple times with multiple dataset dataset "a" / (4) @ repetition 4 of 7
✓ multiple times with multiple dataset dataset "a" / (5) @ repetition 4 of 7
✓ multiple times with multiple dataset dataset "a" / (6) @ repetition 4 of 7
✓ multiple times with multiple dataset dataset "b" / (4) @ repetition 4 of 7
✓ multiple times with multiple dataset dataset "b" / (5) @ repetition 4 of 7
✓ multiple times with multiple dataset dataset "b" / (6) @ repetition 4 of 7
✓ multiple times with multiple dataset dataset "c" / (4) @ repetition 4 of 7
✓ multiple times with multiple dataset dataset "c" / (5) @ repetition 4 of 7
✓ multiple times with multiple dataset dataset "c" / (6) @ repetition 4 of 7
✓ multiple times with multiple dataset dataset "a" / (4) @ repetition 5 of 7
✓ multiple times with multiple dataset dataset "a" / (5) @ repetition 5 of 7
✓ multiple times with multiple dataset dataset "a" / (6) @ repetition 5 of 7
✓ multiple times with multiple dataset dataset "b" / (4) @ repetition 5 of 7
✓ multiple times with multiple dataset dataset "b" / (5) @ repetition 5 of 7
✓ multiple times with multiple dataset dataset "b" / (6) @ repetition 5 of 7
✓ multiple times with multiple dataset dataset "c" / (4) @ repetition 5 of 7
✓ multiple times with multiple dataset dataset "c" / (5) @ repetition 5 of 7
✓ multiple times with multiple dataset dataset "c" / (6) @ repetition 5 of 7
✓ multiple times with multiple dataset dataset "a" / (4) @ repetition 6 of 7
✓ multiple times with multiple dataset dataset "a" / (5) @ repetition 6 of 7
✓ multiple times with multiple dataset dataset "a" / (6) @ repetition 6 of 7
✓ multiple times with multiple dataset dataset "b" / (4) @ repetition 6 of 7
✓ multiple times with multiple dataset dataset "b" / (5) @ repetition 6 of 7
✓ multiple times with multiple dataset dataset "b" / (6) @ repetition 6 of 7
✓ multiple times with multiple dataset dataset "c" / (4) @ repetition 6 of 7
✓ multiple times with multiple dataset dataset "c" / (5) @ repetition 6 of 7
✓ multiple times with multiple dataset dataset "c" / (6) @ repetition 6 of 7
✓ multiple times with multiple dataset dataset "a" / (4) @ repetition 7 of 7
✓ multiple times with multiple dataset dataset "a" / (5) @ repetition 7 of 7
✓ multiple times with multiple dataset dataset "a" / (6) @ repetition 7 of 7
✓ multiple times with multiple dataset dataset "b" / (4) @ repetition 7 of 7
✓ multiple times with multiple dataset dataset "b" / (5) @ repetition 7 of 7
✓ multiple times with multiple dataset dataset "b" / (6) @ repetition 7 of 7
✓ multiple times with multiple dataset dataset "c" / (4) @ repetition 7 of 7
✓ multiple times with multiple dataset dataset "c" / (5) @ repetition 7 of 7
✓ multiple times with multiple dataset dataset "c" / (6) @ repetition 7 of 7
PASS Tests\Features\ScopedDatasets\Directory\NestedDirectory1\TestFileInNestedDirectoryWithDatasetsFile
✓ uses dataset with (1)
✓ uses dataset with (2)
✓ uses dataset with (3)
✓ uses dataset with (4)
✓ uses dataset with (5)
✓ uses dataset with ('ScopedDatasets/NestedDirector…ts.php')
✓ the right dataset is taken
PASS Tests\Features\ScopedDatasets\Directory\NestedDirectory2\TestFileInNestedDirectory
✓ uses dataset with (1)
✓ uses dataset with (2)
✓ uses dataset with (3)
✓ uses dataset with (4)
✓ uses dataset with (5)
✓ uses dataset with ('ScopedDatasets/Datasets/Scoped.php')
✓ the right dataset is taken
PASS Tests\Features\ScopedDatasets\Directory\TestFileWithLocallyDefinedDataset
✓ uses dataset with (1)
✓ uses dataset with (2)
✓ uses dataset with (3)
✓ uses dataset with (4)
✓ uses dataset with (5)
✓ uses dataset with ('ScopedDatasets/ScopedDatasets.php')
✓ the right dataset is taken
PASS Tests\Features\ScopedDatasets\Directory\TestFileWithScopedDataset
✓ uses dataset with (1)
✓ uses dataset with (2)
✓ uses dataset with (3)
✓ uses dataset with (4)
✓ uses dataset with (5)
✓ uses dataset with ('ScopedDatasets/Datasets/Scoped.php')
✓ the right dataset is taken
PASS Tests\Features\ScopedDatasets\TestFileOutOfScope
✓ uses dataset with (1)
✓ uses dataset with (2)
✓ the right dataset is taken
WARN Tests\Features\Skip
✓ it do not skips
- it skips with truthy → 1
- it skips with truthy condition by default
- it skips with message → skipped because bar
- it skips with truthy closure condition
✓ it do not skips with falsy closure condition
- it skips with condition and message → skipped because foo
- it skips when skip after assertion
- it can use something in the test case as a condition → This test was skipped
- it can user higher order callables and skip
PASS Tests\Features\Test
✓ a test
✓ higher order message test
PASS Tests\Features\ThrowsNoExceptions
✓ it allows access to the underlying expectNotToPerformAssertions method
✓ it allows performing no expectations without being risky
✓ a "describe" group of tests → it allows performing no expectations without being risky
PASS Tests\Features\Todo - 3 todos
↓ something todo later
↓ something todo later chained
↓ something todo later chained and with function body
✓ it does something within a file with a todo
WARN Tests\Features\Warnings
! warning → Undefined property: P\Tests\Features\Warnings::$fooqwdfwqdfqw
! user warning → This is a warning description
! a "describe" group of tests → user warning → This is a warning description
WARN Tests\Fixtures\CollisionTest
- error
- success
PASS Tests\Fixtures\DirectoryWithTests\ExampleTest
✓ it example 1
PASS Tests\Fixtures\ExampleTest
✓ it example 2
WARN Tests\Fixtures\UnexpectedOutput
- output
PASS Tests\Helpers\TestInHelpers
✓ it executes tests in the Helpers directory
PASS Tests\Hooks\AfterAllTest
✓ global afterAll execution order
✓ it only gets called once per file
PASS Tests\Hooks\AfterEachTest
✓ global afterEach execution order
PASS Tests\Hooks\BeforeAllTest
✓ global beforeAll execution order
✓ it only gets called once per file
PASS Tests\Hooks\BeforeEachTest
✓ global beforeEach execution order
PASS Tests\PHPUnit\CustomAffixes\InvalidTestName
✓ it runs file names like @#$%^&()-_=+.php
PASS Tests\PHPUnit\CustomAffixes\ATestWithSpaces
✓ it runs file names like A Test With Spaces.php
PASS Tests\PHPUnit\CustomAffixes\AdditionalFileExtension
✓ it runs file names like AdditionalFileExtension.spec.php
PASS Tests\PHPUnit\CustomAffixes\FolderWithAn\ExampleTest
✓ custom traits can be used
✓ trait applied in this file
PASS Tests\PHPUnit\CustomAffixes\ManyExtensions
✓ it runs file names like ManyExtensions.class.test.php
PASS Tests\PHPUnit\CustomAffixes\TestCaseWithQuotes
✓ it runs file names like Test 'Case' With Quotes.php
PASS Tests\PHPUnit\CustomAffixes\kebabcasespec
✓ it runs file names like kebab-case-spec.php
PASS Tests\PHPUnit\CustomAffixes\snakecasespec
✓ it runs file names like snake_case_spec.php
PASS Tests\CustomTestCase\ExecutedTest
✓ that gets executed
PASS Tests\PHPUnit\CustomTestCase\UsesPerDirectory
✓ closure was bound to CustomTestCase
PASS Tests\PHPUnit\CustomTestCaseInSubFolders\SubFolder\SubFolder\UsesPerSubDirectory
✓ closure was bound to CustomTestCase
PASS Tests\PHPUnit\CustomTestCaseInSubFolders\SubFolder2\UsesPerFile
✓ custom traits can be used
✓ trait applied in this file
PASS Tests\PHPUnit\GlobPatternTests\SubFolder\InnerFolder\UsesPerDirectoryAsPattern
✓ closure was bound to CustomTestCase
PASS Tests\PHPUnit\GlobPatternTests\SubFolder2\UsesPerFileAsPattern
✓ closure was bound to CustomTestCase
PASS Tests\Playground
✓ basic
PASS Tests\Plugins\Traits
✓ it allows global uses
✓ it allows multiple global uses registered in the same path
PASS Tests\Unit\Console\Help
✓ it outputs the help information when --help is used
PASS Tests\Unit\DatasetsTests
✓ it show only the names of named datasets in their description
✓ it show the actual dataset of non-named datasets in their description
✓ it show only the names of multiple named datasets in their description
✓ it show the actual dataset of multiple non-named datasets in their description
✓ it show the correct description for mixed named and not-named datasets
✓ it shows the correct description for long texts with newlines
✓ it shows the correct description for arrays with many elements
PASS Tests\Unit\Expectations\OppositeExpectation
✓ it throw expectation failed exception with string argument
✓ it throw expectation failed exception with array argument
PASS Tests\Unit\Overrides\ThrowableBuilder
✓ collision editor can be added to the stack trace
PASS Tests\Unit\Plugins\Environment
✓ environment is set to CI when --ci option is used
✓ environment is set to Local when --ci option is not used
PASS Tests\Unit\Plugins\Retry
✓ it orders by defects and stop on defects if when --retry is used
PASS Tests\Unit\Support\Backtrace
✓ it gets file name from called file
PASS Tests\Unit\Support\Container
✓ it exists
✓ it gets an instance
✓ autowire
✓ it creates an instance and resolves parameters
✓ it creates an instance and resolves also sub parameters
✓ it can resolve builtin value types
✓ it cannot resolve a parameter without type
PASS Tests\Unit\Support\DatasetInfo
✓ it can check if dataset is defined inside a Datasets directory with ('/var/www/project/tests/Datase…rs.php', true)
✓ it can check if dataset is defined inside a Datasets directory with ('/var/www/project/tests/Datasets.php', false)
✓ it can check if dataset is defined inside a Datasets directory with ('/var/www/project/tests/Featur…rs.php', true)
✓ it can check if dataset is defined inside a Datasets directory with ('/var/www/project/tests/Featur…rs.php', false)
✓ it can check if dataset is defined inside a Datasets directory with ('/var/www/project/tests/Featur…ts.php', false)
✓ it can check if dataset is defined inside a Datasets.php file with ('/var/www/project/tests/Datase…rs.php', false)
✓ it can check if dataset is defined inside a Datasets.php file with ('/var/www/project/tests/Datasets.php', true)
✓ it can check if dataset is defined inside a Datasets.php file with ('/var/www/project/tests/Featur…rs.php', false) #1
✓ it can check if dataset is defined inside a Datasets.php file with ('/var/www/project/tests/Featur…rs.php', false) #2
✓ it can check if dataset is defined inside a Datasets.php file with ('/var/www/project/tests/Featur…ts.php', true)
✓ it computes the dataset scope with ('/var/www/project/tests/Datase…rs.php', '/var/www/project/tests')
✓ it computes the dataset scope with ('/var/www/project/tests/Datasets.php', '/var/www/project/tests')
✓ it computes the dataset scope with ('/var/www/project/tests/Featur…rs.php', '/var/www/project/tests/Features')
✓ it computes the dataset scope with ('/var/www/project/tests/Featur…rs.php', '/var/www/project/tests/Featur…rs.php') #1
✓ it computes the dataset scope with ('/var/www/project/tests/Featur…ts.php', '/var/www/project/tests/Features')
✓ it computes the dataset scope with ('/var/www/project/tests/Featur…rs.php', '/var/www/project/tests/Featur…ollers')
✓ it computes the dataset scope with ('/var/www/project/tests/Featur…rs.php', '/var/www/project/tests/Featur…rs.php') #2
✓ it computes the dataset scope with ('/var/www/project/tests/Featur…ts.php', '/var/www/project/tests/Featur…ollers')
PASS Tests\Unit\Support\ExceptionTrace
✓ it ensures the given closures reports the correct class name
✓ it ensures the given closures reports the correct class name and suggests the [uses()] function
PASS Tests\Unit\Support\HigherOrderMessage
✓ undefined method exceptions
PASS Tests\Unit\Support\Reflection
✓ it gets file name from closure
✓ it gets property values
PASS Tests\Unit\Support\Str
✓ it evaluates the code with ('version()', '__pest_evaluable_version__')
✓ it evaluates the code with ('version__ ', '__pest_evaluable_version_____')
✓ it evaluates the code with ('version\', '__pest_evaluable_version_')
PASS Tests\Unit\TestName
✓ it may start with P with ('P\Tests\BarTest', 'Tests\BarTest')
✓ it may start with P with ('P\Packages\Foo', 'Packages\Foo')
✓ it may start with P with ('P\PPPackages\Foo', 'PPPackages\Foo')
✓ it may start with P with ('PPPackages\Foo', 'PPPackages\Foo') #1
✓ it may start with P with ('PPPackages\Foo', 'PPPackages\Foo') #2
✓ test description
✓ test_description
✓ ふ+が+
✓ ほげ
✓ 卜竹弓一十山
✓ アゴデヸ
✓ !p8VrB
✓ &xe6VeKWF#n4
✓ %%HurHUnw7zM!
✓ rundeliekend
✓ g%%c!Jt9$fy#Kf
✓ NRs*Gz2@hmB$W$BPD%%b2U%3P%z%apnwSX
✓ ÀĤ{¼÷
✓ ìèéàòç
✓ زهراء المعادي
✓ الجبيهه
✓ الظهران
✓ Каролин
✓ অ্যান্টার্কটিকা
✓ Frýdek-Místek"
✓ Allingåbro&
✓ Κεντροαφρικανική Δημοκρατία
✓ آذربایجان غربی
✓ זימבבואה
✓ Belišće
✓ Գվատեմալա
✓ パプアニューギニア
✓ 富山県
✓ Қарағанды
✓ Қостанай
✓ 안양시 동안구
✓ Itālija
✓ Honningsvåg
✓ Águeda
✓ Râșcani
✓ Năsăud
✓ Орехово-Зуево
✓ Čereňany
✓ Moravče
✓ Šentjernej
✓ Врање
✓ Крушевац
✓ Åkersberga
✓ บอสเนียและเฮอร์เซโกวีนา
✓ Birleşik Arap Emirlikleri
✓ Німеччина
✓ Nam Định
✓ 呼和浩特
✓ test /** with comment */ should do
PASS Tests\Unit\TestSuite
✓ it does not allow to add the same test description twice
✓ it alerts users about tests with arguments but no input
✓ it can return an array of all test suite filenames
PASS Tests\Visual\BeforeEachTestName
✓ description
✓ latest description
PASS Tests\Visual\Collision
✓ collision with ([''])
✓ collision with (['--parallel'])
PASS Tests\Visual\Help
✓ visual snapshot of help command output
PASS Tests\Visual\Parallel
✓ parallel
✓ a parallel test can extend another test with same name
PASS Tests\Visual\SingleTestOrDirectory
✓ allows to run a single test
✓ allows to run a directory
✓ it disable decorating printer when colors is set to never
WARN Tests\Visual\Success
- visual snapshot of test suite on success
WARN Tests\Visual\TeamCity
- visual snapshot of team city with ('Failure.php')
- visual snapshot of team city with ('SuccessOnly.php')
PASS Tests\Visual\Todo
✓ todo
✓ todo in parallel
WARN Tests\Visual\Version
- visual snapshot of help command output
Tests: 2 deprecated, 4 warnings, 5 incomplete, 2 notices, 13 todos, 19 skipped, 838 passed (1939 assertions)