mirror of
https://github.com/pestphp/pest.git
synced 2026-03-06 15:57:21 +01:00
1785 lines
72 KiB
Plaintext
1785 lines
72 KiB
Plaintext
|
|
PASS Tests\Arch
|
|
✓ preset → php → ignoring ['Pest\Expectation', 'debug_backtrace', 'var_export', …]
|
|
✓ preset → strict → ignoring ['usleep']
|
|
✓ preset → security → ignoring ['eval', 'str_shuffle', 'exec', …]
|
|
✓ globals
|
|
✓ contracts
|
|
|
|
PASS Tests\Environments\Windows
|
|
✓ global functions are loaded
|
|
|
|
WARN Tests\Features\After
|
|
✓ it can run after test
|
|
✓ it can run after test twice
|
|
- it does not run when skipped
|
|
- something → it does not run when skipped
|
|
✓ something → it can run after test
|
|
✓ something 2 → it can run after test
|
|
✓ high order test
|
|
- high order test with skip
|
|
✓ post 'foo' → defer Closure Object () → expect Closure Object () → toBe 1
|
|
|
|
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
|
|
✓ outer → inner → it does not get executed before the test
|
|
✓ outer → inner → it should call all parent afterEach functions
|
|
✓ matching describe block names → outer → middle → inner → it does not get executed before the test
|
|
✓ matching describe block names → outer → middle → inner → it should call all parent afterEach functions
|
|
✓ matching describe block names → outer → middle → it does not get executed before the test
|
|
✓ matching describe block names → outer → middle → it should not call afterEach functions for sibling describe blocks with the same name
|
|
✓ matching describe block names → outer → inner → it does not get executed before the test
|
|
✓ matching describe block names → outer → inner → it should not call afterEach functions for descendent of sibling describe blocks with the same name
|
|
|
|
PASS Tests\Features\Assignee
|
|
✓ it may be associated with an assignee [@nunomaduro, @taylorotwell]
|
|
✓ nested → it may be associated with an assignee [@nunomaduro, @jamesbrooks, @joedixon, @taylorotwell]
|
|
// an note between an the assignee
|
|
|
|
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
|
|
✓ outer → inner → it should call all parent beforeEach functions
|
|
✓ with expectations → nested block → test
|
|
✓ with expectations → test
|
|
✓ matching describe block names → outer → middle → inner → it should call all parent beforeEach functions
|
|
✓ matching describe block names → outer → middle → it should not call beforeEach functions for sibling describe blocks with the same name
|
|
✓ matching describe block names → outer → inner → it should not call beforeEach functions for descendent of sibling describe blocks with the same name
|
|
✓ matching name → it should call the before each
|
|
✓ matching name → it should not call the before each on the describe block with the same name
|
|
✓ called on all tests → beforeEach should be called
|
|
✓ called on all tests → beforeEach should be called for all tests
|
|
|
|
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\ClassCoverage
|
|
✓ it uses the correct PHPUnit attribute for class
|
|
|
|
PASS Tests\Features\Covers\ExceptionHandling
|
|
✓ it throws exception if no class nor method has been found
|
|
|
|
PASS Tests\Features\Covers\FunctionCoverage
|
|
✓ it uses the correct PHPUnit attribute for function
|
|
|
|
PASS Tests\Features\Covers\GuessCoverage
|
|
✓ it guesses if the given argument is a class or function
|
|
|
|
PASS Tests\Features\Covers\TraitCoverage
|
|
✓ it uses the correct PHPUnit attribute for trait
|
|
|
|
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
|
|
✓ interpolated (1) lazy datasets
|
|
✓ interpolated (2) lazy datasets
|
|
✓ 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"
|
|
✓ interpolated "one" named datasets
|
|
✓ interpolated "two" named datasets
|
|
✓ named datasets did the job right
|
|
✓ lazy named datasets with (Bar)
|
|
✓ it creates unique test case names with ('Name 1', Pest\Plugin, true) #1
|
|
✓ it creates unique test case names with ('Name 1', Pest\Plugin, true) #2
|
|
✓ it creates unique test case names with ('Name 1', Pest\Plugin, false)
|
|
✓ it creates unique test case names with ('Name 2', Pest\Plugin, false)
|
|
✓ it creates unique test case names with ('Name 2', Pest\Plugin, true)
|
|
✓ it creates unique test case names with ('Name 1', Pest\Plugin, 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 Object ()) #1
|
|
✓ it can resolve a dataset after the test case is available with (Closure Object ()) #2
|
|
✓ it can resolve a dataset after the test case is available with multiple datasets with (Closure Object ()) / (Closure Object ()) #1
|
|
✓ it can resolve a dataset after the test case is available with multiple datasets with (Closure Object ()) / (Closure Object ()) #2
|
|
✓ it can resolve a dataset after the test case is available with multiple datasets with (Closure Object ()) / (Closure Object ()) #3
|
|
✓ it can resolve a dataset after the test case is available with multiple datasets with (Closure Object ()) / (Closure Object ()) #4
|
|
✓ it can resolve a dataset after the test case is available with shared yield sets with (Closure Object ()) #1
|
|
✓ it can resolve a dataset after the test case is available with shared yield sets with (Closure Object ()) #2
|
|
✓ it can resolve a dataset after the test case is available with shared array sets with (Closure Object ()) #1
|
|
✓ it can resolve a dataset after the test case is available with shared array sets with (Closure Object ()) #2
|
|
✓ it resolves a potential bound dataset logically with ('foo', Closure Object ())
|
|
✓ it resolves a potential bound dataset logically even when the closure comes first with (Closure Object (), 'bar')
|
|
✓ it will not resolve a closure if it is type hinted as a closure with (Closure Object ()) #1
|
|
✓ it will not resolve a closure if it is type hinted as a closure with (Closure Object ()) #2
|
|
✓ it will not resolve a closure if it is type hinted as a callable with (Closure Object ()) #1
|
|
✓ it will not resolve a closure if it is type hinted as a callable with (Closure Object ()) #2
|
|
✓ it can correctly resolve a bound dataset that returns an array with (Closure Object ())
|
|
✓ it can correctly resolve a bound dataset that returns an array but wants to be spread with (Closure Object ())
|
|
↓ forbids to define tests in Datasets dirs and Datasets.php files
|
|
✓ it may be used with high order with dataset "formal"
|
|
✓ it may be used with high order with dataset "informal"
|
|
✓ it may be used with high order even when bound with dataset "formal"
|
|
✓ it may be used with high order even when bound with dataset "informal"
|
|
✓ with on nested describe → nested → before inner describe block with (1)
|
|
✓ with on nested describe → nested → describe → it should include the with value from all parent describe blocks with (1) / (2)
|
|
✓ with on nested describe → nested → describe → should include the with value from all parent describe blocks and the test with (1) / (2) / (3)
|
|
✓ with on nested describe → nested → after inner describe block with (1)
|
|
✓ matching describe block names → outer → before inner describe block with (1)
|
|
✓ matching describe block names → outer → inner → it should include the with value from all parent describe blocks with (1) / (2)
|
|
✓ matching describe block names → outer → inner → should include the with value from all parent describe blocks and the test with (1) / (2) / (3)
|
|
✓ matching describe block names → outer → inner → it should not include the value from the other describe block with the same name with (1)
|
|
✓ matching describe block names → outer → after inner describe block with (1)
|
|
✓ after describe block with (5)
|
|
✓ it may be used with high order after describe block with dataset "formal"
|
|
✓ it may be used with high order after describe block with dataset "informal"
|
|
✓ after describe block with named dataset with ('after')
|
|
|
|
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
|
|
✓ describe block → first in describe
|
|
✓ describe block → second in describe
|
|
✓ describe block → third in describe
|
|
✓ describe block → nested describe → first in nested describe
|
|
✓ describe block → nested describe → second in nested describe
|
|
✓ describe block → nested describe → third in nested describe
|
|
✓ depends on test after describe block
|
|
|
|
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:4
|
|
! user deprecated → Since foo 1.0: This is a deprecation description // tests/Features/Deprecated.php:10
|
|
|
|
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)
|
|
✓ depends on describe → foo
|
|
✓ depends on describe → bar
|
|
✓ depends on describe using with → foo with (3)
|
|
✓ depends on describe using with → bar with (3)
|
|
✓ with test after describe → it should run the before each
|
|
|
|
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\Done
|
|
✓ it may have an associated assignee [@nunomaduro]
|
|
✓ it may have an associated issue #1
|
|
✓ it may have an associated PR #1
|
|
✓ it may have an associated note
|
|
// a note
|
|
|
|
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
|
|
✓ it not catch exceptions if given condition is true
|
|
✓ it catch exceptions if given condition is false
|
|
✓ it catch exceptions and messages if given condition is false
|
|
✓ it catch exceptions, messages and code if given condition is false
|
|
✓ it can just define the message if given condition is false
|
|
✓ it can just define the code if given condition is false
|
|
✓ it can just define the message if given condition is 0
|
|
✓ it can just define the code if given condition is 0
|
|
|
|
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
|
|
✓ an exception is thrown if there are no expectations
|
|
✓ 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 less 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
|
|
✓ it works with traversables
|
|
|
|
PASS Tests\Features\Expect\toBe
|
|
✓ strict comparisons
|
|
✓ failures
|
|
✓ failures with custom message
|
|
✓ not failures
|
|
|
|
PASS Tests\Features\Expect\toBeAlpha
|
|
✓ pass
|
|
✓ failures
|
|
✓ failures with custom message
|
|
✓ not failures
|
|
|
|
PASS Tests\Features\Expect\toBeAlphaNumeric
|
|
✓ pass
|
|
✓ failures
|
|
✓ failures with custom message
|
|
✓ not failures
|
|
|
|
PASS Tests\Features\Expect\toBeArray
|
|
✓ pass
|
|
✓ failures
|
|
✓ failures with custom message
|
|
✓ not failures
|
|
|
|
PASS Tests\Features\Expect\toBeBetween
|
|
✓ passes with int
|
|
✓ passes with float
|
|
✓ passes with float and int
|
|
✓ passes with DateTime
|
|
✓ failure with int
|
|
✓ failure with float
|
|
✓ failure with float and int
|
|
✓ failure with DateTime
|
|
✓ 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\toBeCamelCase
|
|
✓ pass
|
|
✓ failures
|
|
✓ failures with custom message
|
|
✓ not failures
|
|
|
|
PASS Tests\Features\Expect\toBeDigits
|
|
✓ 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
|
|
✓ passes with strings
|
|
✓ failures
|
|
✓ failures with custom message
|
|
✓ not failures
|
|
|
|
PASS Tests\Features\Expect\toBeGreaterThanOrEqual
|
|
✓ passes
|
|
✓ passes with DateTime and DateTimeImmutable
|
|
✓ passes with strings
|
|
✓ 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\toBeIntBackedEnum
|
|
✓ enum is backed by int
|
|
✓ enum is not backed by int
|
|
|
|
PASS Tests\Features\Expect\toBeInvokable
|
|
✓ class is invokable
|
|
✓ opposite class is invokable
|
|
✓ class is invokable via a parent class
|
|
✓ class is invokable via a trait
|
|
✓ failure when the class is not invokable
|
|
✓ class is not invokable
|
|
|
|
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\toBeKebabCase
|
|
✓ pass
|
|
✓ failures
|
|
✓ failures with custom message
|
|
✓ not failures
|
|
|
|
PASS Tests\Features\Expect\toBeLessThan
|
|
✓ passes
|
|
✓ passes with DateTime and DateTimeImmutable
|
|
✓ passes with strings
|
|
✓ failures
|
|
✓ failures with custom message
|
|
✓ not failures
|
|
|
|
PASS Tests\Features\Expect\toBeLessThanOrEqual
|
|
✓ passes
|
|
✓ passes with DateTime and DateTimeImmutable
|
|
✓ passes with strings
|
|
✓ failures
|
|
✓ failures with custom message
|
|
✓ not failures
|
|
|
|
PASS Tests\Features\Expect\toBeList
|
|
✓ pass
|
|
✓ failures
|
|
✓ failures with custom message
|
|
✓ not failures
|
|
|
|
PASS Tests\Features\Expect\toBeLowercase
|
|
✓ pass
|
|
✓ 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\toBeSlug
|
|
✓ pass
|
|
✓ failures
|
|
✓ failures with custom message
|
|
✓ failures with default message
|
|
✓ not failures
|
|
|
|
PASS Tests\Features\Expect\toBeSnakeCase
|
|
✓ 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\toBeStringBackedEnum
|
|
✓ enum is backed by string
|
|
✓ enum is not backed by string
|
|
|
|
PASS Tests\Features\Expect\toBeStudlyCase
|
|
✓ 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\toBeUppercase
|
|
✓ pass
|
|
✓ failures
|
|
✓ failures with custom message
|
|
✓ not failures
|
|
|
|
PASS Tests\Features\Expect\toBeUrl
|
|
✓ pass
|
|
✓ failures
|
|
✓ failures with custom message
|
|
✓ failures with default message
|
|
✓ not failures
|
|
|
|
PASS Tests\Features\Expect\toBeUuid
|
|
✓ failures with wrong type
|
|
✓ pass
|
|
✓ failures
|
|
✓ failures with 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\toContainEqual
|
|
✓ passes arrays
|
|
✓ passes arrays with multiple 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\toHaveAttribute
|
|
✓ class has attribute
|
|
✓ opposite class has attribute
|
|
✓ class not has attribute
|
|
|
|
PASS Tests\Features\Expect\toHaveCamelCaseKeys
|
|
✓ pass
|
|
✓ failures
|
|
✓ failures with message
|
|
✓ not failures
|
|
|
|
PASS Tests\Features\Expect\toHaveConstructor
|
|
✓ class has constructor
|
|
✓ class has no constructor
|
|
|
|
PASS Tests\Features\Expect\toHaveCount
|
|
✓ pass
|
|
✓ failures with invalid type
|
|
✓ failures
|
|
✓ failures with message
|
|
✓ not failures
|
|
|
|
PASS Tests\Features\Expect\toHaveDestructor
|
|
✓ class has destructor
|
|
✓ class has no destructor
|
|
|
|
PASS Tests\Features\Expect\toHaveKebabCaseKeys
|
|
✓ 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\toHaveLineCountLessThan
|
|
✓ it passes
|
|
✓ it fails
|
|
|
|
PASS Tests\Features\Expect\toHaveMethod
|
|
✓ class has method
|
|
✓ opposite class has method
|
|
✓ class has method via a parent class
|
|
✓ class has method via a trait
|
|
✓ failure when the class has no method
|
|
✓ class has no method
|
|
|
|
PASS Tests\Features\Expect\toHaveMethods
|
|
✓ class has method
|
|
✓ opposite class has method
|
|
✓ class has method via a parent class
|
|
✓ class has method via a trait
|
|
✓ failure when the class has no method
|
|
✓ class has no method
|
|
|
|
PASS Tests\Features\Expect\toHaveMethodsDocumented
|
|
✓ it passes
|
|
✓ it fails 1
|
|
✓ it fails 2
|
|
|
|
PASS Tests\Features\Expect\toHavePrefix
|
|
✓ missing prefix
|
|
✓ has prefix
|
|
✓ opposite missing prefix
|
|
✓ opposite has prefix
|
|
|
|
PASS Tests\Features\Expect\toHavePrivateMethodsBesides
|
|
✓ pass
|
|
✓ failures
|
|
|
|
PASS Tests\Features\Expect\toHaveProperties
|
|
✓ pass
|
|
✓ failures
|
|
✓ failures with custom message
|
|
✓ not failures
|
|
|
|
PASS Tests\Features\Expect\toHavePropertiesDocumented
|
|
✓ it passes
|
|
✓ it fails 1
|
|
✓ it fails 2
|
|
|
|
PASS Tests\Features\Expect\toHaveProperty
|
|
✓ pass
|
|
✓ failures
|
|
✓ failures with message
|
|
✓ failures with message and Any matcher
|
|
✓ not failures
|
|
|
|
PASS Tests\Features\Expect\toHaveProtectedMethodsBesides
|
|
✓ pass
|
|
✓ failures
|
|
|
|
PASS Tests\Features\Expect\toHavePublicMethodsBesides
|
|
✓ pass
|
|
✓ failures
|
|
|
|
PASS Tests\Features\Expect\toHaveSameSize
|
|
✓ failures with wrong type
|
|
✓ pass
|
|
✓ failures
|
|
✓ failures with message
|
|
✓ not failures
|
|
|
|
PASS Tests\Features\Expect\toHaveSnakeCaseKeys
|
|
✓ pass
|
|
✓ failures
|
|
✓ failures with message
|
|
✓ not failures
|
|
|
|
PASS Tests\Features\Expect\toHaveStudlyCaseKeys
|
|
✓ pass
|
|
✓ failures
|
|
✓ failures with message
|
|
✓ 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 using pipes
|
|
✓ 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
|
|
✓ pass with toSnapshot
|
|
✓ failures
|
|
✓ failures with custom message
|
|
✓ not failures
|
|
✓ multiple snapshot expectations
|
|
✓ multiple snapshot expectations with datasets with (1)
|
|
✓ multiple snapshot expectations with datasets with ('foo')
|
|
✓ multiple snapshot expectations with datasets with ('bar')
|
|
✓ multiple snapshot expectations with datasets with ('baz')
|
|
✓ describable → multiple snapshot expectations with describe
|
|
✓ multiple snapshot expectations with repeat @ repetition 1 of 10
|
|
✓ multiple snapshot expectations with repeat @ repetition 2 of 10
|
|
✓ multiple snapshot expectations with repeat @ repetition 3 of 10
|
|
✓ multiple snapshot expectations with repeat @ repetition 4 of 10
|
|
✓ multiple snapshot expectations with repeat @ repetition 5 of 10
|
|
✓ multiple snapshot expectations with repeat @ repetition 6 of 10
|
|
✓ multiple snapshot expectations with repeat @ repetition 7 of 10
|
|
✓ multiple snapshot expectations with repeat @ repetition 8 of 10
|
|
✓ multiple snapshot expectations with repeat @ repetition 9 of 10
|
|
✓ multiple snapshot expectations with repeat @ repetition 10 of 10
|
|
|
|
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\toUseStrictEquality
|
|
✓ missing strict equality
|
|
✓ has strict equality
|
|
✓ opposite missing strict equality
|
|
✓ opposite has strict equality
|
|
|
|
PASS Tests\Features\Expect\toUseStrictTypes
|
|
✓ pass
|
|
✓ failures
|
|
|
|
PASS Tests\Features\Expect\toUseTrait
|
|
✓ pass
|
|
✓ failures
|
|
✓ not failures
|
|
|
|
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
|
|
|
|
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
|
|
|
|
PASS Tests\Features\Fixture
|
|
✓ it may return a file path
|
|
✓ it may throw an exception if the file does not exist
|
|
|
|
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 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 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\Issue
|
|
✓ it may be associated with an issue #1, #2
|
|
✓ nested → it may be associated with an issue #1, #4, #5, #6, #3
|
|
// an note between an the issue
|
|
|
|
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
|
|
|
|
PASS Tests\Features\Note
|
|
✓ it may have a static note
|
|
// This is before each static note
|
|
// This is a note
|
|
// This is before each runtime note
|
|
✓ it may have a runtime note
|
|
// This is before each static note
|
|
// This is before each runtime note
|
|
// This is a runtime note
|
|
✓ it may have static note and runtime note
|
|
// This is before each static note
|
|
// This is a static note
|
|
// This is before each runtime note
|
|
// This is a runtime note
|
|
✓ nested → it may have static note and runtime note
|
|
// This is before each static note
|
|
// This is describe static note
|
|
// This is before each describe static note
|
|
// This is a static note within describe
|
|
// This is before each runtime note
|
|
// This is before each describe runtime note
|
|
// This is a runtime note within describe
|
|
✓ nested → describe nested within describe → it may have a static note and runtime note
|
|
// This is before each static note
|
|
// This is describe static note
|
|
// This is before each describe static note
|
|
// This is a nested describe static note
|
|
// This is before each nested describe static note
|
|
// This is a static note within a nested describe
|
|
// This is before each runtime note
|
|
// This is before each describe runtime note
|
|
// This is before each nested describe runtime note
|
|
// This is a runtime note within a nested describe
|
|
✓ matching describe names → describe block → it may have a static note and runtime note
|
|
// This is before each static note
|
|
// This is before each matching describe static note
|
|
// This is a nested matching static note
|
|
// This is a static note within a matching describe
|
|
// This is before each runtime note
|
|
// This is before each matching describe runtime note
|
|
// This is before each matching describe runtime note
|
|
// This is a runtime note within a matching describe
|
|
✓ matching describe names → describe block → it may have a static note and runtime note, that are different than the matching describe block
|
|
// This is before each static note
|
|
// This is before each matching describe static note
|
|
// This is a nested matching static note, and should not contain the matching describe notes
|
|
// This is before each matching describe static note, and should not contain the matching describe notes
|
|
// This is a static note within a matching describe, and should not contain the matching describe notes
|
|
// This is before each runtime note
|
|
// This is before each matching describe runtime note
|
|
// This is before each matching describe runtime note, and should not contain the matching describe notes
|
|
// This is a runtime note within a matching describe, and should not contain the matching describe notes
|
|
✓ multiple notes
|
|
// This is before each static note
|
|
// This is before each runtime note
|
|
// This is a runtime note
|
|
// This is another runtime note
|
|
|
|
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\Pr
|
|
✓ it may be associated with an pr #1, #2
|
|
✓ nested → it may be associated with an pr #1, #4, #5, #6, #3
|
|
// an note between an the pr
|
|
|
|
PASS Tests\Features\References
|
|
✓ it can reference a specific class
|
|
✓ it can reference a specific class method
|
|
|
|
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
|
|
✓ multiple times with iterator @ repetition 1 of 2
|
|
✓ multiple times with iterator @ repetition 2 of 2
|
|
✓ multiple times with repeat iterator with single dataset ('a') @ repetition 1 of 2
|
|
✓ multiple times with repeat iterator with single dataset ('b') @ repetition 1 of 2
|
|
✓ multiple times with repeat iterator with single dataset ('c') @ repetition 1 of 2
|
|
✓ multiple times with repeat iterator with single dataset ('a') @ repetition 2 of 2
|
|
✓ multiple times with repeat iterator with single dataset ('b') @ repetition 2 of 2
|
|
✓ multiple times with repeat iterator with single dataset ('c') @ repetition 2 of 2
|
|
✓ multiple times with repeat iterator with multiple dataset ('a') / ('d') @ repetition 1 of 2
|
|
✓ multiple times with repeat iterator with multiple dataset ('a') / ('e') @ repetition 1 of 2
|
|
✓ multiple times with repeat iterator with multiple dataset ('a') / ('f') @ repetition 1 of 2
|
|
✓ multiple times with repeat iterator with multiple dataset ('b') / ('d') @ repetition 1 of 2
|
|
✓ multiple times with repeat iterator with multiple dataset ('b') / ('e') @ repetition 1 of 2
|
|
✓ multiple times with repeat iterator with multiple dataset ('b') / ('f') @ repetition 1 of 2
|
|
✓ multiple times with repeat iterator with multiple dataset ('c') / ('d') @ repetition 1 of 2
|
|
✓ multiple times with repeat iterator with multiple dataset ('c') / ('e') @ repetition 1 of 2
|
|
✓ multiple times with repeat iterator with multiple dataset ('c') / ('f') @ repetition 1 of 2
|
|
✓ multiple times with repeat iterator with multiple dataset ('a') / ('d') @ repetition 2 of 2
|
|
✓ multiple times with repeat iterator with multiple dataset ('a') / ('e') @ repetition 2 of 2
|
|
✓ multiple times with repeat iterator with multiple dataset ('a') / ('f') @ repetition 2 of 2
|
|
✓ multiple times with repeat iterator with multiple dataset ('b') / ('d') @ repetition 2 of 2
|
|
✓ multiple times with repeat iterator with multiple dataset ('b') / ('e') @ repetition 2 of 2
|
|
✓ multiple times with repeat iterator with multiple dataset ('b') / ('f') @ repetition 2 of 2
|
|
✓ multiple times with repeat iterator with multiple dataset ('c') / ('d') @ repetition 2 of 2
|
|
✓ multiple times with repeat iterator with multiple dataset ('c') / ('e') @ repetition 2 of 2
|
|
✓ multiple times with repeat iterator with multiple dataset ('c') / ('f') @ repetition 2 of 2
|
|
✓ describe blocks → multiple times @ repetition 1 of 3
|
|
✓ describe blocks → multiple times @ repetition 2 of 3
|
|
✓ describe blocks → multiple times @ repetition 3 of 3
|
|
✓ describe blocks → describe with repeat → test with no repeat should repeat the number of times specified in the parent describe block @ repetition 1 of 3
|
|
✓ describe blocks → describe with repeat → test with no repeat should repeat the number of times specified in the parent describe block @ repetition 2 of 3
|
|
✓ describe blocks → describe with repeat → test with no repeat should repeat the number of times specified in the parent describe block @ repetition 3 of 3
|
|
✓ describe blocks → describe with repeat → test with repeat should repeat the number of times specified in the test @ repetition 1 of 2
|
|
✓ describe blocks → describe with repeat → test with repeat should repeat the number of times specified in the test @ repetition 2 of 2
|
|
✓ describe blocks → describe with repeat → nested describe without repeat → test with no repeat should repeat the number of times specified in the parent's parent describe block @ repetition 1 of 3
|
|
✓ describe blocks → describe with repeat → nested describe without repeat → test with no repeat should repeat the number of times specified in the parent's parent describe block @ repetition 2 of 3
|
|
✓ describe blocks → describe with repeat → nested describe without repeat → test with no repeat should repeat the number of times specified in the parent's parent describe block @ repetition 3 of 3
|
|
✓ describe blocks → describe with repeat → nested describe without repeat → test with repeat should repeat the number of times specified in the test @ repetition 1 of 2
|
|
✓ describe blocks → describe with repeat → nested describe without repeat → test with repeat should repeat the number of times specified in the test @ repetition 2 of 2
|
|
✓ describe blocks → describe with repeat → nested describe with repeat → test with no repeat should repeat the number of times specified in the parent describe block @ repetition 1 of 2
|
|
✓ describe blocks → describe with repeat → nested describe with repeat → test with no repeat should repeat the number of times specified in the parent describe block @ repetition 2 of 2
|
|
✓ describe blocks → describe with repeat → nested describe with repeat → test with repeat should repeat the number of times specified in the test @ repetition 1 of 2
|
|
✓ describe blocks → describe with repeat → nested describe with repeat → test with repeat should repeat the number of times specified in the test @ repetition 2 of 2
|
|
✓ matching describe blocks → describe block → it should repeat the number of times specified in the parent describe block @ repetition 1 of 3
|
|
✓ matching describe blocks → describe block → it should repeat the number of times specified in the parent describe block @ repetition 2 of 3
|
|
✓ matching describe blocks → describe block → it should repeat the number of times specified in the parent describe block @ repetition 3 of 3
|
|
✓ matching describe blocks → describe block → should not repeat the number of times of the describe block with the same name
|
|
|
|
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
|
|
✓ it can see datasets defined in Pest.php file with ('A')
|
|
✓ it can see datasets defined in Pest.php file with ('B')
|
|
✓ Pest.php dataset is taken
|
|
|
|
PASS Tests\Features\See
|
|
✓ it can reference a specific class
|
|
✓ it can reference a specific class method
|
|
|
|
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
|
|
- skip on describe → skipped tests → nested inside skipped block → it should not execute
|
|
- skip on describe → skipped tests → it should not execute
|
|
✓ skip on describe → it should execute
|
|
- skip on beforeEach → skipped tests → nested inside skipped block → it should not execute
|
|
- skip on beforeEach → skipped tests → it should not execute
|
|
✓ skip on beforeEach → it should execute
|
|
- matching describe with skip → describe block → it should not execute
|
|
✓ matching describe with skip → describe block → it should execute a test in a describe block with the same name as a skipped describe block
|
|
✓ matching describe with skip → it should execute
|
|
- matching describe with skip on beforeEach → describe block → it should not execute
|
|
✓ matching describe with skip on beforeEach → describe block → it should execute a test in a describe block with the same name as a skipped describe block
|
|
✓ matching describe with skip on beforeEach → it should execute
|
|
✓ it does not skip after the describe block
|
|
- it can skip after the describe block
|
|
|
|
WARN Tests\Features\SkipOnPhp
|
|
✓ it can run on php version
|
|
✓ it can run on specific php version
|
|
- it can skip on php versions depending on constraint → This test is skipped on PHP [>=7.4.0].
|
|
|
|
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\Ticket
|
|
✓ it may be associated with an ticket #1, #2
|
|
✓ nested → it may be associated with an ticket #1, #4, #5, #6, #3
|
|
// an note between an the ticket
|
|
|
|
PASS Tests\Features\Todo - 29 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
|
|
↓ it may have an associated assignee [@nunomaduro]
|
|
↓ it may have an associated issue #1
|
|
↓ it may have an associated PR #1
|
|
↓ it may have an associated note
|
|
// a note
|
|
↓ todo on describe → todo block → nested inside todo block → it should not execute
|
|
↓ todo on describe → todo block → nested inside todo block → it should set the note
|
|
// hi
|
|
↓ todo on describe → todo block → describe with note → it should apply the note to a test without a todo
|
|
// describe note
|
|
↓ todo on describe → todo block → describe with note → it should apply the note to a test with a todo
|
|
// describe note
|
|
↓ todo on describe → todo block → describe with note → it should apply the note as well as the note from the test
|
|
// describe note
|
|
// test note
|
|
↓ todo on describe → todo block → describe with note → nested describe with note → it should apply all parent notes to a test without a todo
|
|
// describe note
|
|
// nested describe note
|
|
↓ todo on describe → todo block → describe with note → nested describe with note → it should apply all parent notes to a test with a todo
|
|
// describe note
|
|
// nested describe note
|
|
↓ todo on describe → todo block → describe with note → nested describe with note → it should apply all parent notes as well as the note from the test
|
|
// describe note
|
|
// nested describe note
|
|
// test note
|
|
↓ todo on describe → todo block → it should not execute
|
|
✓ todo on describe → it should execute
|
|
↓ todo on describe with matching name → describe block → it should not execute
|
|
✓ todo on describe with matching name → describe block → it should execute a test in a describe block with the same name as a todo describe block
|
|
✓ todo on describe with matching name → it should execute
|
|
↓ todo on test after describe block
|
|
↓ todo with note on test after describe block
|
|
// test note
|
|
↓ todo on beforeEach → todo block → nested inside todo block → it should not execute
|
|
↓ todo on beforeEach → todo block → describe with note → it should apply the note to a test without a todo
|
|
// describe note
|
|
↓ todo on beforeEach → todo block → describe with note → it should apply the note to a test with a todo
|
|
// describe note
|
|
↓ todo on beforeEach → todo block → describe with note → it should apply the note as well as the note from the test
|
|
// describe note
|
|
// test note
|
|
↓ todo on beforeEach → todo block → describe with note → nested describe with note → it should apply all parent notes to a test without a todo
|
|
// describe note
|
|
// nested describe note
|
|
↓ todo on beforeEach → todo block → describe with note → nested describe with note → it should apply all parent notes to a test with a todo
|
|
// describe note
|
|
// nested describe note
|
|
↓ todo on beforeEach → todo block → describe with note → nested describe with note → it should apply all parent notes as well as the note from the test
|
|
// describe note
|
|
// nested describe note
|
|
// test note
|
|
↓ todo on beforeEach → todo block → it should not execute
|
|
✓ todo on beforeEach → it should execute
|
|
↓ todo on test after describe block with beforeEach
|
|
↓ todo with note on test after describe block with beforeEach
|
|
// test note
|
|
|
|
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
|
|
|
|
PASS Tests\Features\Wip
|
|
✓ it may have an associated assignee [@nunomaduro]
|
|
✓ it may have an associated issue #1
|
|
✓ it may have an associated PR #1
|
|
✓ it may have an associated note
|
|
// a note
|
|
|
|
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\AfterEachTest
|
|
✓ nested → nested afterEach execution order
|
|
✓ global afterEach execution order
|
|
|
|
PASS Tests\Hooks\BeforeAllTest
|
|
✓ it gets called before all tests 1 @ repetition 1 of 2
|
|
✓ it gets called before all tests 1 @ repetition 2 of 2
|
|
✓ it gets called before all tests 2
|
|
|
|
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\ChildTest
|
|
✓ override method
|
|
|
|
PASS Tests\CustomTestCase\ExecutedTest
|
|
✓ that gets executed
|
|
|
|
PASS Tests\CustomTestCase\ParentTest
|
|
✓ override method
|
|
|
|
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\Coverage
|
|
✓ compute comparable coverage with (0, 0)
|
|
✓ compute comparable coverage with (0.5, 0.5)
|
|
✓ compute comparable coverage with (1.0, 1.0)
|
|
✓ compute comparable coverage with (32.51, 32.5)
|
|
✓ compute comparable coverage with (32.12312321312312, 32.1)
|
|
✓ compute comparable coverage with (32.53333333333333, 32.5)
|
|
✓ compute comparable coverage with (32.57777771232132, 32.5)
|
|
✓ compute comparable coverage with (100.0, 100.0)
|
|
|
|
PASS Tests\Plugins\Traits
|
|
✓ it allows global uses
|
|
✓ it allows multiple global uses registered in the same path
|
|
|
|
PASS Tests\Unit\Configuration\In
|
|
✓ it proxies to uses call
|
|
|
|
PASS Tests\Unit\Configuration\Theme
|
|
✓ it creates a printer instance
|
|
|
|
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
|
|
✓ it shows the correct description of datasets with html
|
|
|
|
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\Concerns\HandleArguments
|
|
✓ method hasArgument with ('--long-argument', true)
|
|
✓ method hasArgument with ('-a', true)
|
|
✓ method hasArgument with ('--with-equal-sign', true)
|
|
✓ method hasArgument with ('someValue', true)
|
|
✓ method hasArgument with ('--a', false)
|
|
✓ method hasArgument with ('--undefined-argument', false)
|
|
|
|
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\Preset
|
|
✓ preset invalid name
|
|
✓ preset → myFramework
|
|
|
|
PASS Tests\Unit\Support\Arr
|
|
✓ last → it should return false for an empty arary
|
|
✓ last → it should return the last element for an array with a single element
|
|
✓ last → it should return the last element for an array without changing the internal pointer
|
|
✓ last → it should return the last element for an associative array without changing the internal pointer
|
|
✓ last → it should return the last element for an mixed key array without changing the internal pointer
|
|
|
|
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 [pest()] function
|
|
|
|
PASS Tests\Unit\Support\HigherOrderMessage
|
|
✓ undefined method exceptions
|
|
|
|
PASS Tests\Unit\Support\Reflection
|
|
✓ it gets file name from closure
|
|
✓ it gets property values
|
|
✓ it gets properties from classes
|
|
✓ it gets methods from classes
|
|
|
|
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 does not allow static closures
|
|
✓ 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 ([''])
|
|
|
|
PASS Tests\Visual\Help
|
|
✓ visual snapshot of help command output
|
|
|
|
WARN Tests\Visual\JUnit
|
|
✓ junit output
|
|
- junit with parallel → Not working yet
|
|
|
|
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')
|
|
|
|
WARN Tests\Visual\Todo
|
|
- todos
|
|
- todos in parallel
|
|
- todo
|
|
- todo in parallel
|
|
|
|
WARN Tests\Visual\Version
|
|
- visual snapshot of help command output
|
|
|
|
PASS Testsexternal\Features\Expect\toMatchSnapshot
|
|
✓ pass with dataset with ('my-datas-set-value')
|
|
✓ within describe → pass with dataset with ('my-datas-set-value')
|
|
|
|
Tests: 2 deprecated, 4 warnings, 5 incomplete, 2 notices, 39 todos, 35 skipped, 1188 passed (2813 assertions) |