| layout | doc |
|---|---|
| title | Asserts - Codeception - Documentation |
If you use Codeception installed using composer, install this module with the following command:
{% highlight yaml %} composer require --dev codeception/module-asserts
{% endhighlight %}
Alternatively, you can enable Asserts module in suite configuration file and run
{% highlight yaml %} codecept init upgrade4
{% endhighlight %}
This module was bundled with Codeception 2 and 3, but since version 4 it is necessary to install it separately.
Some modules are bundled with PHAR files.
Warning. Using PHAR file and composer in the same project can cause unexpected errors.
Special module for using asserts in your tests.
Asserts that an array has a specified key.
param int|string$keyparam array|ArrayAccess$arrayparam string$message
Asserts that an array does not have a specified key.
param int|string$keyparam array|ArrayAccess$arrayparam string$message
Asserts that a class has a specified attribute.
param string$attributeNameparam string$classNameparam string$message
Asserts that a class has a specified static attribute.
param string$attributeNameparam string$classNameparam string$message
Asserts that a class does not have a specified attribute.
param string$attributeNameparam string$classNameparam string$message
Asserts that a class does not have a specified static attribute.
param string$attributeNameparam string$classNameparam string$message
Asserts that a haystack contains a needle.
param$needleparam$haystackparam string$message
param$needleparam$haystackparam string$message
Asserts that a haystack contains only values of a given type.
param string$typeparam$haystackparam bool|null$isNativeTypeparam string$message
Asserts that a haystack contains only instances of a given class name.
param string$classNameparam$haystackparam string$message
Asserts the number of elements of an array, Countable or Traversable.
param int$expectedCountparam Countable|iterable$haystackparam string$message
Asserts that a directory does not exist.
param string$directoryparam string$message
Asserts that a directory exists.
param string$directoryparam string$message
Asserts that a directory exists and is not readable.
param string$directoryparam string$message
Asserts that a directory exists and is not writable.
param string$directoryparam string$message
Asserts that a directory exists and is readable.
param string$directoryparam string$message
Asserts that a directory exists and is writable.
param string$directoryparam string$message
Asserts that a string does not match a given regular expression.
param string$patternparam string$stringparam string$message
Asserts that a variable is empty.
param$actualparam string$message
Asserts that two variables are equal.
param$expectedparam$actualparam string$message
Asserts that two variables are equal (canonicalizing).
param$expectedparam$actualparam string$message
Asserts that two variables are equal (ignoring case).
param$expectedparam$actualparam string$message
Asserts that two variables are equal (with delta).
param$expectedparam$actualparam float$deltaparam string$message
Asserts that a condition is false.
param$conditionparam string$message
Asserts that a file does not exist.
param string$filenameparam string$message
Asserts that the contents of one file is equal to the contents of another file.
param string$expectedparam string$actualparam string$message
Asserts that the contents of one file is equal to the contents of another file (canonicalizing).
param$expectedparam$actualparam string$message
Asserts that the contents of one file is equal to the contents of another file (ignoring case).
param$expectedparam$actualparam string$message
Asserts that a file exists.
param string$filenameparam string$message
Asserts that a file exists and is not readable.
param string$fileparam string$message
Asserts that a file exists and is not writable.
param string$fileparam string$message
Asserts that a file exists and is readable.
param string$fileparam string$message
Asserts that a file exists and is writable.
param string$fileparam string$message
Asserts that the contents of one file is not equal to the contents of another file.
param$expectedparam$actualparam string$message
Asserts that the contents of one file is not equal to the contents of another file (canonicalizing).
param$expectedparam$actualparam string$message
Asserts that the contents of one file is not equal to the contents of another file (ignoring case).
param$expectedparam$actualparam string$message
Asserts that a file does not exist.
param string$filenameparam string$message
Asserts that a variable is finite.
param$actualparam string$message
Asserts that a value is greater than or equal to another value.
param$expectedparam$actualparam string$message
Asserts that a value is greater than another value.
param$expectedparam$actualparam string$message
Asserts that a value is greater than or equal to another value.
param$expectedparam$actualparam string$message
Asserts that a variable is infinite.
param$actualparam string$message
Asserts that a variable is of a given type.
param$expectedparam$actualparam string$message
Asserts that a variable is of type array.
param$actualparam string$message
Asserts that a variable is of type bool.
param$actualparam string$message
Asserts that a variable is of type callable.
param$actualparam string$message
Asserts that a variable is of type resource and is closed.
param$actualparam string$message
Asserts that a variable is empty.
param$actualparam string$message
Asserts that a variable is of type float.
param$actualparam string$message
Asserts that a variable is of type int.
param$actualparam string$message
Asserts that a variable is of type iterable.
param$actualparam string$message
Asserts that a variable is not of type array.
param$actualparam string$message
Asserts that a variable is not of type bool.
param$actualparam string$message
Asserts that a variable is not of type callable.
param$actualparam string$message
Asserts that a variable is not of type resource.
param$actualparam string$message
Asserts that a variable is not of type float.
param$actualparam string$message
Asserts that a variable is not of type int.
param$actualparam string$message
Asserts that a variable is not of type iterable.
param$actualparam string$message
Asserts that a variable is not of type numeric.
param$actualparam string$message
Asserts that a variable is not of type object.
param$actualparam string$message
Asserts that a file/dir exists and is not readable.
param string$filenameparam string$message
Asserts that a variable is not of type resource.
param$actualparam string$message
Asserts that a variable is not of type scalar.
param$actualparam string$message
Asserts that a variable is not of type string.
param$actualparam string$message
Asserts that a file/dir exists and is not writable.
param$filenameparam string$message
Asserts that a variable is of type numeric.
param$actualparam string$message
Asserts that a variable is of type object.
param$actualparam string$message
Asserts that a file/dir is readable.
param$filenameparam string$message
Asserts that a variable is of type resource.
param$actualparam string$message
Asserts that a variable is of type scalar.
param$actualparam string$message
Asserts that a variable is of type string.
param$actualparam string$message
Asserts that a file/dir exists and is writable.
param$filenameparam string$message
Asserts that a string is a valid JSON string.
param string$actualJsonparam string$message
Asserts that two JSON files are equal.
param string$expectedFileparam string$actualFileparam string$message
Asserts that two JSON files are not equal.
param string$expectedFileparam string$actualFileparam string$message
Asserts that the generated JSON encoded object and the content of the given file are equal.
param string$expectedFileparam string$actualJsonparam string$message
Asserts that two given JSON encoded objects or arrays are equal.
param string$expectedJsonparam string$actualJsonparam string$message
Asserts that the generated JSON encoded object and the content of the given file are not equal.
param string$expectedFileparam string$actualJsonparam string$message
Asserts that two given JSON encoded objects or arrays are not equal.
param string$expectedJsonparam string$actualJsonparam string$message
Asserts that a value is smaller than or equal to another value.
param$expectedparam$actualparam string$message
Asserts that a value is smaller than another value.
param$expectedparam$actualparam string$message
Asserts that a value is smaller than or equal to another value.
param$expectedparam$actualparam string$message
Asserts that a string matches a given regular expression.
param string$patternparam string$stringparam string$message
Asserts that a variable is nan.
param$actualparam string$message
Asserts that a haystack does not contain a needle.
param$needleparam$haystackparam string$message
not documented
Asserts that a haystack does not contain only values of a given type.
param string$typeparam$haystackparam bool|null$isNativeTypeparam string$message
Asserts the number of elements of an array, Countable or Traversable.
param int$expectedCountparam Countable|iterable$haystackparam string$message
Asserts that a variable is not empty.
param$actualparam string$message
Asserts that two variables are not equal.
param$expectedparam$actualparam string$message
Asserts that two variables are not equal (canonicalizing).
param$expectedparam$actualparam string$message
Asserts that two variables are not equal (ignoring case).
param$expectedparam$actualparam string$message
Asserts that two variables are not equal (with delta).
param$expectedparam$actualparam float$deltaparam string$message
Asserts that a condition is not false.
param$conditionparam string$message
Asserts that a variable is not of a given type.
param$expectedparam$actualparam string$message
Asserts that a variable is not null.
param$actualparam string$message
Asserts that a string does not match a given regular expression.
param string$patternparam string$stringparam string$message
Asserts that two variables do not have the same type and value.
param$expectedparam$actualparam string$message
Assert that the size of two arrays (or Countable or Traversable objects) is not the same.
param Countable|iterable$expectedparam Countable|iterable$actualparam string$message
Asserts that a condition is not true.
param$conditionparam string$message
Asserts that a variable is null.
param$actualparam string$message
Asserts that an object has a specified attribute.
param string$attributeNameparam object$objectparam string$message
Asserts that an object does not have a specified attribute.
param string$attributeNameparam object$objectparam string$message
Asserts that a string matches a given regular expression.
param string$patternparam string$stringparam string$message
Asserts that two variables have the same type and value.
param$expectedparam$actualparam string$message
Assert that the size of two arrays (or Countable or Traversable objects) is the same.
param Countable|iterable$expectedparam Countable|iterable$actualparam string$message
param string$needleparam string$haystackparam string$message
not documented
Asserts that a string ends not with a given suffix.
param string$suffixparam string$stringparam string$message
Asserts that a string ends with a given suffix.
param string$suffixparam string$stringparam string$message
Asserts that the contents of a string is equal to the contents of a file.
param string$expectedFileparam string$actualStringparam string$message
Asserts that the contents of a string is equal to the contents of a file (canonicalizing).
param string$expectedFileparam string$actualStringparam string$message
Asserts that the contents of a string is equal to the contents of a file (ignoring case).
param string$expectedFileparam string$actualStringparam string$message
Asserts that a string matches a given format string.
param string$formatparam string$stringparam string$message
Asserts that a string matches a given format file.
param string$formatFileparam string$stringparam string$message
param string$needleparam string$haystackparam string$message
param string$needleparam string$haystackparam string$message
Asserts that the contents of a string is not equal to the contents of a file.
param string$expectedFileparam string$actualStringparam string$message
Asserts that the contents of a string is not equal to the contents of a file (canonicalizing).
param string$expectedFileparam string$actualStringparam string$message
Asserts that the contents of a string is not equal to the contents of a file (ignoring case).
param string$expectedFileparam string$actualStringparam string$message
Asserts that a string does not match a given format string.
param string$formatparam string$stringparam string$message
Asserts that a string does not match a given format string.
param string$formatFileparam string$stringparam string$message
Asserts that a string starts not with a given prefix.
param string$prefixparam string$stringparam string$message
Asserts that a string starts with a given prefix.
param string$prefixparam string$stringparam string$message
Evaluates a PHPUnit\Framework\Constraint matcher object.
param$valueparam Constraint$constraintparam string$message
Evaluates a PHPUnit\Framework\Constraint matcher object.
param$valueparam Constraint$constraintparam string$message
Asserts that a condition is true.
param$conditionparam string$message
Asserts that two XML files are equal.
param string$expectedFileparam string$actualFileparam string$message
Asserts that two XML files are not equal.
param string$expectedFileparam string$actualFileparam string$message
Asserts that two XML documents are equal.
param string$expectedFileparam DOMDocument|string$actualXmlparam string$message
Asserts that two XML documents are equal.
param DOMDocument|string$expectedXmlparam DOMDocument|string$actualXmlparam string$message
Asserts that two XML documents are not equal.
param string$expectedFileparam DOMDocument|string$actualXmlparam string$message
Asserts that two XML documents are not equal.
param DOMDocument|string$expectedXmlparam DOMDocument|string$actualXmlparam string$message
Handles and checks exception called inside callback function. Either exception class name or exception instance should be provided.
{% highlight php %}
expectException(MyException::class, function() { $this->doSomethingBad(); }); $I->expectException(new MyException(), function() { $this->doSomethingBad(); }); {% endhighlight %} If you want to check message or exception code, you can pass them with exception instance: {% highlight php %} expectException(new MyException("Don't do bad things"), function() { $this->doSomethingBad(); }); {% endhighlight %} @deprecated Use expectThrowable() instead * `param \Exception|string` $exception * `param callable` $callback #### expectThrowable Handles and checks throwables (Exceptions/Errors) called inside the callback function. Either throwable class name or throwable instance should be provided. {% highlight php %} expectThrowable(MyThrowable::class, function() { $this->doSomethingBad(); }); $I->expectThrowable(new MyException(), function() { $this->doSomethingBad(); }); {% endhighlight %} If you want to check message or throwable code, you can pass them with throwable instance: {% highlight php %} expectThrowable(new MyError("Don't do bad things"), function() { $this->doSomethingBad(); }); {% endhighlight %} * `param \Throwable|string` $throwable * `param callable` $callback #### fail Fails a test with the given message. * `param string` $message #### markTestIncomplete Mark the test as incomplete. * `param string` $message #### markTestSkipped Mark the test as skipped. * `param string` $message