mirror of
https://github.com/pestphp/pest.git
synced 2026-03-06 07:47:22 +01:00
1482 lines
56 KiB
Plaintext
1482 lines
56 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
|
||
|
||
PASS Tests\Features\Coverage
|
||
✓ it has plugin
|
||
✓ it adds coverage if --coverage exist
|
||
✓ 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 guesses if the given argument is a class or function
|
||
✓ it uses the correct PHPUnit attribute for trait
|
||
✓ it uses the correct PHPUnit attribute for covers nothing
|
||
✓ it throws exception if no class nor method has been found
|
||
|
||
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
|
||
✓ 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"
|
||
|
||
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
|
||
|
||
FAIL Tests\Features\Deprecated
|
||
! deprecated → str_contains(): Passing null to parameter #1 ($haystack) of type string is deprecated // tests/Features/Deprecated.php:6
|
||
⨯ user deprecated
|
||
|
||
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)
|
||
|
||
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
|
||
✓ 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\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\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\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
|
||
✓ 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\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\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
|
||
|
||
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
|
||
✓ 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
|
||
|
||
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
|
||
|
||
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
|
||
|
||
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\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\AfterEachTest
|
||
✓ global afterEach execution order
|
||
|
||
PASS Tests\Hooks\BeforeEachTest
|
||
✓ global beforeEach execution order
|
||
|
||
PASS Tests\Overrides\VersionsTest
|
||
✓ versions with dataset "Runner/Filter/NameFilterIterator.php"
|
||
✓ versions with dataset "Runner/ResultCache/DefaultResultCache.php"
|
||
✓ versions with dataset "Runner/TestSuiteLoader.php"
|
||
✓ versions with dataset "TextUI/Command/Commands/WarmCodeCoverageCacheCommand.php"
|
||
✓ versions with dataset "TextUI/Output/Default/ProgressPrinter/Subscriber/TestSkippedSubscriber.php"
|
||
✓ versions with dataset "TextUI/TestSuiteFilterProcessor.php"
|
||
✓ versions with dataset "Event/Value/ThrowableBuilder.php"
|
||
✓ versions with dataset "Logging/JUnit/JunitXmlLogger.php"
|
||
|
||
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\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
|
||
✓ 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\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 ([''])
|
||
|
||
PASS Tests\Visual\Help
|
||
✓ visual snapshot of help command output
|
||
|
||
WARN Tests\Visual\JUnit
|
||
✓ junit output
|
||
- junit with parallel → Not working yet
|
||
|
||
FAIL 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
|
||
✓ todos
|
||
✓ todos in parallel
|
||
✓ todo
|
||
✓ todo in parallel
|
||
|
||
WARN Tests\Visual\Version
|
||
- visual snapshot of help command output
|
||
────────────────────────────────────────────────────────────────────────────
|
||
FAILED Tests\Features\Deprecated > user deprecated Error
|
||
Call to undefined function trigger_deprecation()
|
||
|
||
at tests/Features/Deprecated.php:12
|
||
8▕ expect(true)->toBeTrue();
|
||
9▕ });
|
||
10▕
|
||
11▕ test('user deprecated', function () {
|
||
➜ 12▕ trigger_deprecation('foo', '1.0', 'This is a deprecation description');
|
||
13▕
|
||
14▕ expect(true)->toBeTrue();
|
||
15▕ });
|
||
16▕
|
||
|
||
1 tests/Features/Deprecated.php:12
|
||
|
||
────────────────────────────────────────────────────────────────────────────
|
||
FAILED Tests\Visual\Parallel > parallel
|
||
Expected: \n
|
||
...............sssssss......................................................\n
|
||
...............................................................s....!⨯......\n
|
||
... (36 more lines)
|
||
|
||
To contain: Tests: 1 deprecated, 4 warnings, 5 incomplete, 2 notices, 13 todos, 16 skipped, 1017 passed (2483 assertions)
|
||
|
||
at tests/Visual/Parallel.php:19
|
||
15▕ };
|
||
16▕
|
||
17▕ test('parallel', function () use ($run) {
|
||
18▕ expect($run('--exclude-group=integration'))
|
||
➜ 19▕ ->toContain('Tests: 1 deprecated, 4 warnings, 5 incomplete, 2 notices, 13 todos, 16 skipped, 1017 passed (2483 assertions)')
|
||
20▕ ->toContain('Parallel: 3 processes');
|
||
21▕ })->skipOnWindows();
|
||
22▕
|
||
23▕ test('a parallel test can extend another test with same name', function () use ($run) {
|
||
|
||
1 tests/Visual/Parallel.php:19
|
||
|
||
|
||
Tests: 1 deprecated, 2 failed, 4 warnings, 5 incomplete, 2 notices, 13 todos, 20 skipped, 1030 passed (2518 assertions) |