If you use Codeception installed using composer, install this module with the following command:
composer require --dev codeception/module-asserts
Alternatively, you can enable Asserts
module in suite configuration file and run
codecept init upgrade4
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
$messageAsserts that an array does not have a specified key.
param int|string
$keyparam array|ArrayAccess
$arrayparam string
$messageAsserts that a class has a specified attribute.
param string
$attributeNameparam string
$classNameparam string
$messageAsserts that a class has a specified static attribute.
param string
$attributeNameparam string
$classNameparam string
$messageAsserts that a class does not have a specified attribute.
param string
$attributeNameparam string
$classNameparam string
$messageAsserts that a class does not have a specified static attribute.
param string
$attributeNameparam string
$classNameparam string
$messageAsserts that a haystack contains a needle.
param
$needleparam
$haystackparam string
$messageparam
$needleparam
$haystackparam string
$messageAsserts that a haystack contains only values of a given type.
param string
$typeparam
$haystackparam bool|null
$isNativeTypeparam string
$messageAsserts that a haystack contains only instances of a given class name.
param string
$classNameparam
$haystackparam string
$messageAsserts the number of elements of an array, Countable or Traversable.
param int
$expectedCountparam Countable|iterable
$haystackparam string
$messageAsserts that a directory does not exist.
param string
$directoryparam string
$messageAsserts that a directory exists.
param string
$directoryparam string
$messageAsserts that a directory exists and is not readable.
param string
$directoryparam string
$messageAsserts that a directory exists and is not writable.
param string
$directoryparam string
$messageAsserts that a directory exists and is readable.
param string
$directoryparam string
$messageAsserts that a directory exists and is writable.
param string
$directoryparam string
$messageAsserts that a string does not match a given regular expression.
param string
$patternparam string
$stringparam string
$messageAsserts that a variable is empty.
param
$actualparam string
$messageAsserts that two variables are equal.
param
$expectedparam
$actualparam string
$messageAsserts that two variables are equal (canonicalizing).
param
$expectedparam
$actualparam string
$messageAsserts that two variables are equal (ignoring case).
param
$expectedparam
$actualparam string
$messageAsserts that two variables are equal (with delta).
param
$expectedparam
$actualparam float
$deltaparam string
$messageAsserts that a condition is false.
param
$conditionparam string
$messageAsserts that a file does not exist.
param string
$filenameparam string
$messageAsserts that the contents of one file is equal to the contents of another file.
param string
$expectedparam string
$actualparam string
$messageAsserts that the contents of one file is equal to the contents of another file (canonicalizing).
param
$expectedparam
$actualparam string
$messageAsserts that the contents of one file is equal to the contents of another file (ignoring case).
param
$expectedparam
$actualparam string
$messageAsserts that a file exists.
param string
$filenameparam string
$messageAsserts that a file exists and is not readable.
param string
$fileparam string
$messageAsserts that a file exists and is not writable.
param string
$fileparam string
$messageAsserts that a file exists and is readable.
param string
$fileparam string
$messageAsserts that a file exists and is writable.
param string
$fileparam string
$messageAsserts that the contents of one file is not equal to the contents of another file.
param
$expectedparam
$actualparam string
$messageAsserts that the contents of one file is not equal to the contents of another file (canonicalizing).
param
$expectedparam
$actualparam string
$messageAsserts that the contents of one file is not equal to the contents of another file (ignoring case).
param
$expectedparam
$actualparam string
$messageAsserts that a file does not exist.
param string
$filenameparam string
$messageAsserts that a variable is finite.
param
$actualparam string
$messageAsserts that a value is greater than or equal to another value.
param
$expectedparam
$actualparam string
$messageAsserts that a value is greater than another value.
param
$expectedparam
$actualparam string
$messageAsserts that a value is greater than or equal to another value.
param
$expectedparam
$actualparam string
$messageAsserts that a variable is infinite.
param
$actualparam string
$messageAsserts that a variable is of a given type.
param
$expectedparam
$actualparam string
$messageAsserts that a variable is of type array.
param
$actualparam string
$messageAsserts that a variable is of type bool.
param
$actualparam string
$messageAsserts that a variable is of type callable.
param
$actualparam string
$messageAsserts that a variable is of type resource and is closed.
param
$actualparam string
$messageAsserts that a variable is empty.
param
$actualparam string
$messageAsserts that a variable is of type float.
param
$actualparam string
$messageAsserts that a variable is of type int.
param
$actualparam string
$messageAsserts that a variable is of type iterable.
param
$actualparam string
$messageAsserts that a variable is not of type array.
param
$actualparam string
$messageAsserts that a variable is not of type bool.
param
$actualparam string
$messageAsserts that a variable is not of type callable.
param
$actualparam string
$messageAsserts that a variable is not of type resource.
param
$actualparam string
$messageAsserts that a variable is not of type float.
param
$actualparam string
$messageAsserts that a variable is not of type int.
param
$actualparam string
$messageAsserts that a variable is not of type iterable.
param
$actualparam string
$messageAsserts that a variable is not of type numeric.
param
$actualparam string
$messageAsserts that a variable is not of type object.
param
$actualparam string
$messageAsserts that a file/dir exists and is not readable.
param string
$filenameparam string
$messageAsserts that a variable is not of type resource.
param
$actualparam string
$messageAsserts that a variable is not of type scalar.
param
$actualparam string
$messageAsserts that a variable is not of type string.
param
$actualparam string
$messageAsserts that a file/dir exists and is not writable.
param
$filenameparam string
$messageAsserts that a variable is of type numeric.
param
$actualparam string
$messageAsserts that a variable is of type object.
param
$actualparam string
$messageAsserts that a file/dir is readable.
param
$filenameparam string
$messageAsserts that a variable is of type resource.
param
$actualparam string
$messageAsserts that a variable is of type scalar.
param
$actualparam string
$messageAsserts that a variable is of type string.
param
$actualparam string
$messageAsserts that a file/dir exists and is writable.
param
$filenameparam string
$messageAsserts that a string is a valid JSON string.
param string
$actualJsonparam string
$messageAsserts that two JSON files are equal.
param string
$expectedFileparam string
$actualFileparam string
$messageAsserts that two JSON files are not equal.
param string
$expectedFileparam string
$actualFileparam string
$messageAsserts that the generated JSON encoded object and the content of the given file are equal.
param string
$expectedFileparam string
$actualJsonparam string
$messageAsserts that two given JSON encoded objects or arrays are equal.
param string
$expectedJsonparam string
$actualJsonparam string
$messageAsserts that the generated JSON encoded object and the content of the given file are not equal.
param string
$expectedFileparam string
$actualJsonparam string
$messageAsserts that two given JSON encoded objects or arrays are not equal.
param string
$expectedJsonparam string
$actualJsonparam string
$messageAsserts that a value is smaller than or equal to another value.
param
$expectedparam
$actualparam string
$messageAsserts that a value is smaller than another value.
param
$expectedparam
$actualparam string
$messageAsserts that a value is smaller than or equal to another value.
param
$expectedparam
$actualparam string
$messageAsserts that a string matches a given regular expression.
param string
$patternparam string
$stringparam string
$messageAsserts that a variable is nan.
param
$actualparam string
$messageAsserts that a haystack does not contain a needle.
param
$needleparam
$haystackparam string
$messagenot documented
Asserts that a haystack does not contain only values of a given type.
param string
$typeparam
$haystackparam bool|null
$isNativeTypeparam string
$messageAsserts the number of elements of an array, Countable or Traversable.
param int
$expectedCountparam Countable|iterable
$haystackparam string
$messageAsserts that a variable is not empty.
param
$actualparam string
$messageAsserts that two variables are not equal.
param
$expectedparam
$actualparam string
$messageAsserts that two variables are not equal (canonicalizing).
param
$expectedparam
$actualparam string
$messageAsserts that two variables are not equal (ignoring case).
param
$expectedparam
$actualparam string
$messageAsserts that two variables are not equal (with delta).
param
$expectedparam
$actualparam float
$deltaparam string
$messageAsserts that a condition is not false.
param
$conditionparam string
$messageAsserts that a variable is not of a given type.
param
$expectedparam
$actualparam string
$messageAsserts that a variable is not null.
param
$actualparam string
$messageAsserts that a string does not match a given regular expression.
param string
$patternparam string
$stringparam string
$messageAsserts that two variables do not have the same type and value.
param
$expectedparam
$actualparam string
$messageAssert that the size of two arrays (or Countable
or Traversable
objects) is not the same.
param Countable|iterable
$expectedparam Countable|iterable
$actualparam string
$messageAsserts that a condition is not true.
param
$conditionparam string
$messageAsserts that a variable is null.
param
$actualparam string
$messageAsserts that an object has a specified attribute.
param string
$attributeNameparam object
$objectparam string
$messageAsserts that an object does not have a specified attribute.
param string
$attributeNameparam object
$objectparam string
$messageAsserts that a string matches a given regular expression.
param string
$patternparam string
$stringparam string
$messageAsserts that two variables have the same type and value.
param
$expectedparam
$actualparam string
$messageAssert that the size of two arrays (or Countable
or Traversable
objects) is the same.
param Countable|iterable
$expectedparam Countable|iterable
$actualparam string
$messageparam string
$needleparam string
$haystackparam string
$messagenot documented
Asserts that a string ends not with a given suffix.
param string
$suffixparam string
$stringparam string
$messageAsserts that a string ends with a given suffix.
param string
$suffixparam string
$stringparam string
$messageAsserts that the contents of a string is equal to the contents of a file.
param string
$expectedFileparam string
$actualStringparam string
$messageAsserts that the contents of a string is equal to the contents of a file (canonicalizing).
param string
$expectedFileparam string
$actualStringparam string
$messageAsserts that the contents of a string is equal to the contents of a file (ignoring case).
param string
$expectedFileparam string
$actualStringparam string
$messageAsserts that a string matches a given format string.
param string
$formatparam string
$stringparam string
$messageAsserts that a string matches a given format file.
param string
$formatFileparam string
$stringparam string
$messageparam string
$needleparam string
$haystackparam string
$messageparam string
$needleparam string
$haystackparam string
$messageAsserts that the contents of a string is not equal to the contents of a file.
param string
$expectedFileparam string
$actualStringparam string
$messageAsserts that the contents of a string is not equal to the contents of a file (canonicalizing).
param string
$expectedFileparam string
$actualStringparam string
$messageAsserts that the contents of a string is not equal to the contents of a file (ignoring case).
param string
$expectedFileparam string
$actualStringparam string
$messageAsserts that a string does not match a given format string.
param string
$formatparam string
$stringparam string
$messageAsserts that a string does not match a given format string.
param string
$formatFileparam string
$stringparam string
$messageAsserts that a string starts not with a given prefix.
param string
$prefixparam string
$stringparam string
$messageAsserts that a string starts with a given prefix.
param string
$prefixparam string
$stringparam string
$messageEvaluates a PHPUnit\Framework\Constraint matcher object.
param
$valueparam Constraint
$constraintparam string
$messageEvaluates a PHPUnit\Framework\Constraint matcher object.
param
$valueparam Constraint
$constraintparam string
$messageAsserts that a condition is true.
param
$conditionparam string
$messageAsserts that two XML files are equal.
param string
$expectedFileparam string
$actualFileparam string
$messageAsserts that two XML files are not equal.
param string
$expectedFileparam string
$actualFileparam string
$messageAsserts that two XML documents are equal.
param string
$expectedFileparam DOMDocument|string
$actualXmlparam string
$messageAsserts that two XML documents are equal.
param DOMDocument|string
$expectedXmlparam DOMDocument|string
$actualXmlparam string
$messageAsserts that two XML documents are not equal.
param string
$expectedFileparam DOMDocument|string
$actualXmlparam string
$messageAsserts that two XML documents are not equal.
param DOMDocument|string
$expectedXmlparam DOMDocument|string
$actualXmlparam string
$messageHandles and checks exception called inside callback function. Either exception class name or exception instance should be provided.
<?php $I->expectException(MyException::class, function() { $this->doSomethingBad(); }); $I->expectException(new MyException(), function() { $this->doSomethingBad(); });
If you want to check message or exception code, you can pass them with exception instance:
<?php // will check that exception MyException is thrown with "Don't do bad things" message $I->expectException(new MyException("Don't do bad things"), function() { $this->doSomethingBad(); });
@deprecated Use expectThrowable() instead
param \Exception|string
$exceptionparam callable
$callbackHandles and checks throwables (Exceptions/Errors) called inside the callback function. Either throwable class name or throwable instance should be provided.
<?php $I->expectThrowable(MyThrowable::class, function() { $this->doSomethingBad(); }); $I->expectThrowable(new MyException(), function() { $this->doSomethingBad(); });
If you want to check message or throwable code, you can pass them with throwable instance:
<?php // will check that throwable MyError is thrown with "Don't do bad things" message $I->expectThrowable(new MyError("Don't do bad things"), function() { $this->doSomethingBad(); });
param \Throwable|string
$throwableparam callable
$callbackFails a test with the given message.
param string
$messageMark the test as incomplete.
param string
$messageMark the test as skipped.
param string
$message
© 2011 Michael Bodnarchuk and contributors
Licensed under the MIT License.
https://codeception.com/docs/modules/Asserts