CakePHP
  • Documentation
    • Book
    • API
    • Videos
    • Logos & Trademarks
  • Business Solutions
  • Swag
  • Road Trip
  • Team
  • Community
    • Community
    • Team
    • Issues (Github)
    • YouTube Channel
    • Get Involved
    • Bakery
    • Featured Resources
    • Newsletter
    • Certification
    • My CakePHP
    • CakeFest
    • Facebook
    • Twitter
    • Help & Support
    • Forum
    • Stack Overflow
    • IRC
    • Slack
    • Paid Support
CakePHP

C CakePHP 3.8 Red Velvet API

  • Overview
  • Tree
  • Deprecated
  • Version:
    • 3.8
      • 3.8
      • 3.7
      • 3.6
      • 3.5
      • 3.4
      • 3.3
      • 3.2
      • 3.1
      • 3.0
      • 2.10
      • 2.9
      • 2.8
      • 2.7
      • 2.6
      • 2.5
      • 2.4
      • 2.3
      • 2.2
      • 2.1
      • 2.0
      • 1.3
      • 1.2

Namespaces

  • Cake
    • Auth
      • Storage
    • Cache
      • Engine
    • Collection
      • Iterator
    • Command
    • Console
      • Exception
    • Controller
      • Component
      • Exception
    • Core
      • Configure
        • Engine
      • Exception
      • Retry
    • Database
      • Driver
      • Exception
      • Expression
      • Schema
      • Statement
      • Type
    • Datasource
      • Exception
    • Error
      • Middleware
    • Event
      • Decorator
    • Filesystem
    • Form
    • Http
      • Client
        • Adapter
        • Auth
      • Cookie
      • Exception
      • Middleware
      • Session
    • I18n
      • Formatter
      • Middleware
      • Parser
    • Log
      • Engine
    • Mailer
      • Exception
      • Transport
    • Network
      • Exception
    • ORM
      • Association
      • Behavior
        • Translate
      • Exception
      • Locator
      • Rule
    • Routing
      • Exception
      • Filter
      • Middleware
      • Route
    • Shell
      • Helper
      • Task
    • TestSuite
      • Fixture
      • Stub
    • Utility
      • Exception
    • Validation
    • View
      • Exception
      • Form
      • Helper
      • Widget
  • None

Classes

  • ConsoleIntegrationTestCase
  • IntegrationTestCase
  • LegacyCommandRunner
  • LegacyShellDispatcher
  • TestCase
  • TestEmailTransport
  • TestSuite

Traits

  • ConsoleIntegrationTestTrait
  • EmailAssertTrait
  • EmailTrait
  • IntegrationTestTrait
  • StringCompareTrait

Class TestCase

Cake TestCase class

PHPUnit\Framework\TestCase
Extended by Cake\TestSuite\TestCase uses Cake\ORM\Locator\LocatorAwareTrait
Direct Subclasses
  • Cake\TestSuite\ConsoleIntegrationTestCase
  • Cake\TestSuite\IntegrationTestCase
Abstract
Namespace: Cake\TestSuite
Location: TestSuite/TestCase.php

Properties summary

  • $_configure protected
    array
    Configure values to restore at end of test.
  • $_pathRestore protected
    array
    Path settings to restore at the end of the test.
  • $autoFixtures public
    boolean

    By default, all fixtures attached to this class will be truncated and reloaded after each test. Set this to false to handle manually

  • $dropTables public
    boolean
    Control table create/drops on each test method.
  • $fixtureManager public
    Cake\TestSuite\Fixture\FixtureManager|null
    The class responsible for managing the creation, loading and removing of fixtures

Inherited Properties

  • _tableLocator

Method Summary

  • _assertAttributes() protected
    Check the attributes as part of an assertTags() check.
  • _getTableClassName() protected
    Gets the class name for the table.
  • _normalizePath() protected
    Normalize a path for comparison.
  • assertEventFired() public
    Asserts that a global event was fired. You must track events in your event manager for this assertion to work
  • assertEventFiredWith() public
    Asserts an event was fired with data
  • assertHtml() public
    Asserts HTML tags.
  • assertNotWithinRange() protected static
    Compatibility function to test if a value is not between an acceptable range.
  • assertPathEquals() protected static
    Compatibility function to test paths.
  • assertTags() public deprecated
    Asserts HTML tags.
  • assertTextContains() public

    Assert that a string contains another string, ignoring differences in newlines. Helpful for doing cross platform tests of blocks of text.

  • assertTextEndsNotWith() public

    Asserts that a string ends not with a given prefix, ignoring differences in newlines. Helpful for doing cross platform tests of blocks of text.

  • assertTextEndsWith() public

    Asserts that a string ends with a given prefix, ignoring differences in newlines. Helpful for doing cross platform tests of blocks of text.

  • assertTextEquals() public

    Assert text equality, ignoring differences in newlines. Helpful for doing cross platform tests of blocks of text.

  • assertTextNotContains() public

    Assert that a text doesn't contain another text, ignoring differences in newlines. Helpful for doing cross platform tests of blocks of text.

  • assertTextNotEquals() public

    Assert text equality, ignoring differences in newlines. Helpful for doing cross platform tests of blocks of text.

  • assertTextStartsNotWith() public

    Asserts that a string starts not with a given prefix, ignoring differences in newlines. Helpful for doing cross platform tests of blocks of text.

  • assertTextStartsWith() public

    Asserts that a string starts with a given prefix, ignoring differences in newlines. Helpful for doing cross platform tests of blocks of text.

  • assertWithinRange() protected static
    Compatibility function to test if a value is between an acceptable range.
  • clearPlugins() public
    Clear all plugins from the global plugin collection.
  • deprecated() public
    Helper method for check deprecation methods
  • getMockForModel() public
    Mock a model, maintain fixtures and table association
  • loadFixtures() public
    Chooses which fixtures to load for a given test
  • loadPlugins() public
    Load plugins into a simulated application.
  • removePlugins() public
    Remove plugins from the global plugin collection.
  • setAppNamespace() public static
    Set the app namespace
  • setUp() public

    Setup the test case, backup the static object values so they can be restored. Specifically backs up the contents of Configure and paths in App if they have not already been backed up.

  • skipIf() public
    Overrides SimpleTestCase::skipIf to provide a boolean return value
  • skipUnless() protected
    Compatibility function for skipping.
  • tearDown() public
    teardown any static object changes and restore them.
  • withErrorReporting() public
    Helper method for tests that needs to use error_reporting()

Method Detail

_assertAttributes() protected ¶

_assertAttributes( array $assertions , string $string , boolean $fullDebug = false , array|string $regex = '' )

Check the attributes as part of an assertTags() check.

Parameters
array $assertions
Assertions to run.
string $string
The HTML string to check.
boolean $fullDebug optional false
Whether or not more verbose output should be used.
array|string $regex optional ''
Full regexp from assertHtml
Returns
string|boolean

_getTableClassName() protected ¶

_getTableClassName( string $alias , array $options )

Gets the class name for the table.

Parameters
string $alias
The model to get a mock for.
array $options
The config data for the mock's constructor.
Returns
string
Throws
Cake\ORM\Exception\MissingTableClassException

_normalizePath() protected ¶

_normalizePath( string $path )

Normalize a path for comparison.

Parameters
string $path
Path separated by "/" slash.
Returns
string
Normalized path separated by DIRECTORY_SEPARATOR.

assertEventFired() public ¶

assertEventFired( string $name , Cake\Event\EventManager|null $eventManager = null , string $message = '' )

Asserts that a global event was fired. You must track events in your event manager for this assertion to work

Parameters
string $name
Event name
Cake\Event\EventManager|null $eventManager optional null
Event manager to check, defaults to global event manager
string $message optional ''
Assertion failure message

assertEventFiredWith() public ¶

assertEventFiredWith( string $name , string $dataKey , string $dataValue , Cake\Event\EventManager|null $eventManager = null , string $message = '' )

Asserts an event was fired with data

If a third argument is passed, that value is used to compare with the value in $dataKey

Parameters
string $name
Event name
string $dataKey
Data key
string $dataValue
Data value
Cake\Event\EventManager|null $eventManager optional null
Event manager to check, defaults to global event manager
string $message optional ''
Assertion failure message

assertHtml() public ¶

assertHtml( array $expected , string $string , boolean $fullDebug = false )

Asserts HTML tags.

Takes an array $expected and generates a regex from it to match the provided $string. Samples for $expected:

Checks for an input tag with a name attribute (contains any non-empty value) and an id attribute that contains 'my-input':

['input' => ['name', 'id' => 'my-input']]

Checks for two p elements with some text in them:

[
  ['p' => true],
  'textA',
  '/p',
  ['p' => true],
  'textB',
  '/p'
]

You can also specify a pattern expression as part of the attribute values, or the tag being defined, if you prepend the value with preg: and enclose it with slashes, like so:

[
  ['input' => ['name', 'id' => 'preg:/FieldName\d+/']],
  'preg:/My\s+field/'
]

Important: This function is very forgiving about whitespace and also accepts any permutation of attribute order. It will also allow whitespace between specified tags.

Parameters
array $expected
An array, see above
string $string
An HTML/XHTML/XML string
boolean $fullDebug optional false
Whether or not more verbose output should be used.
Returns
boolean

assertNotWithinRange() protected static ¶

assertNotWithinRange( float $expected , float $result , float $margin , string $message = '' )

Compatibility function to test if a value is not between an acceptable range.

Parameters
float $expected
float $result
float $margin
the rage of acceptation
string $message optional ''
the text to display if the assertion is not correct

assertPathEquals() protected static ¶

assertPathEquals( string $expected , string $result , string $message = '' )

Compatibility function to test paths.

Parameters
string $expected
string $result
string $message optional ''
the text to display if the assertion is not correct

assertTags() public deprecated ¶

assertTags( string $string , array $expected , boolean $fullDebug = false )

Asserts HTML tags.

Deprecated
3.0. Use assertHtml() instead.
Parameters
string $string
An HTML/XHTML/XML string
array $expected
An array, see above
boolean $fullDebug optional false
Whether or not more verbose output should be used.

assertTextContains() public ¶

assertTextContains( string $needle , string $haystack , string $message = '' , boolean $ignoreCase = false )

Assert that a string contains another string, ignoring differences in newlines. Helpful for doing cross platform tests of blocks of text.

Parameters
string $needle
The string to search for.
string $haystack
The string to search through.
string $message optional ''
The message to display on failure.
boolean $ignoreCase optional false
Whether or not the search should be case-sensitive.

assertTextEndsNotWith() public ¶

assertTextEndsNotWith( string $suffix , string $string , string $message = '' )

Asserts that a string ends not with a given prefix, ignoring differences in newlines. Helpful for doing cross platform tests of blocks of text.

Parameters
string $suffix
The suffix to not find.
string $string
The string to search.
string $message optional ''
The message to use for failure.

assertTextEndsWith() public ¶

assertTextEndsWith( string $suffix , string $string , string $message = '' )

Asserts that a string ends with a given prefix, ignoring differences in newlines. Helpful for doing cross platform tests of blocks of text.

Parameters
string $suffix
The suffix to find.
string $string
The string to search.
string $message optional ''
The message to use for failure.

assertTextEquals() public ¶

assertTextEquals( string $expected , string $result , string $message = '' )

Assert text equality, ignoring differences in newlines. Helpful for doing cross platform tests of blocks of text.

Parameters
string $expected
The expected value.
string $result
The actual value.
string $message optional ''
The message to use for failure.

assertTextNotContains() public ¶

assertTextNotContains( string $needle , string $haystack , string $message = '' , boolean $ignoreCase = false )

Assert that a text doesn't contain another text, ignoring differences in newlines. Helpful for doing cross platform tests of blocks of text.

Parameters
string $needle
The string to search for.
string $haystack
The string to search through.
string $message optional ''
The message to display on failure.
boolean $ignoreCase optional false
Whether or not the search should be case-sensitive.

assertTextNotEquals() public ¶

assertTextNotEquals( string $expected , string $result , string $message = '' )

Assert text equality, ignoring differences in newlines. Helpful for doing cross platform tests of blocks of text.

Parameters
string $expected
The expected value.
string $result
The actual value.
string $message optional ''
The message to use for failure.

assertTextStartsNotWith() public ¶

assertTextStartsNotWith( string $prefix , string $string , string $message = '' )

Asserts that a string starts not with a given prefix, ignoring differences in newlines. Helpful for doing cross platform tests of blocks of text.

Parameters
string $prefix
The prefix to not find.
string $string
The string to search.
string $message optional ''
The message to use for failure.

assertTextStartsWith() public ¶

assertTextStartsWith( string $prefix , string $string , string $message = '' )

Asserts that a string starts with a given prefix, ignoring differences in newlines. Helpful for doing cross platform tests of blocks of text.

Parameters
string $prefix
The prefix to check for.
string $string
The string to search in.
string $message optional ''
The message to use for failure.

assertWithinRange() protected static ¶

assertWithinRange( float $expected , float $result , float $margin , string $message = '' )

Compatibility function to test if a value is between an acceptable range.

Parameters
float $expected
float $result
float $margin
the rage of acceptation
string $message optional ''
the text to display if the assertion is not correct

clearPlugins() public ¶

clearPlugins( )

Clear all plugins from the global plugin collection.

Useful in test case teardown methods.

deprecated() public ¶

deprecated( callable $callable )

Helper method for check deprecation methods

Parameters
callable $callable
callable function that will receive asserts

getMockForModel() public ¶

getMockForModel( string $alias , string[]|null $methods = [] , array $options = [] )

Mock a model, maintain fixtures and table association

Parameters
string $alias
The model to get a mock for.
string[]|null $methods optional []
The list of methods to mock
array $options optional []
The config data for the mock's constructor.
Returns
Cake\ORM\Table|PHPUnit_Framework_MockObject_MockObject
Throws
Cake\ORM\Exception\MissingTableClassException

loadFixtures() public ¶

loadFixtures( )

Chooses which fixtures to load for a given test

Each parameter is a model name that corresponds to a fixture, i.e. 'Posts', 'Authors', etc. Passing no parameters will cause all fixtures on the test case to load.

Throws
Exception
when no fixture manager is available.
See
\Cake\TestSuite\TestCase::$autoFixtures

loadPlugins() public ¶

loadPlugins( array $plugins = [] )

Load plugins into a simulated application.

Useful to test how plugins being loaded/not loaded interact with other elements in CakePHP or applications.

Parameters
array $plugins optional []
List of Plugins to load.
Returns
Cake\Http\BaseApplication

removePlugins() public ¶

removePlugins( array $names = [] )

Remove plugins from the global plugin collection.

Useful in test case teardown methods.

Parameters
array $names optional []
A list of plugins you want to remove.

setAppNamespace() public static ¶

setAppNamespace( string $appNamespace = 'TestApp' )

Set the app namespace

Parameters
string $appNamespace optional 'TestApp'
The app namespace, defaults to "TestApp".

setUp() public ¶

setUp( )

Setup the test case, backup the static object values so they can be restored. Specifically backs up the contents of Configure and paths in App if they have not already been backed up.

skipIf() public ¶

skipIf( boolean $shouldSkip , string $message = '' )

Overrides SimpleTestCase::skipIf to provide a boolean return value

Parameters
boolean $shouldSkip
Whether or not the test should be skipped.
string $message optional ''
The message to display.
Returns
boolean

skipUnless() protected ¶

skipUnless( boolean $condition , string $message = '' )

Compatibility function for skipping.

Parameters
boolean $condition
Condition to trigger skipping
string $message optional ''
Message for skip
Returns
boolean

tearDown() public ¶

tearDown( )

teardown any static object changes and restore them.

withErrorReporting() public ¶

withErrorReporting( integer $errorLevel , callable $callable )

Helper method for tests that needs to use error_reporting()

Parameters
integer $errorLevel
value of error_reporting() that needs to use
callable $callable
callable function that will receive asserts

Methods used from Cake\ORM\Locator\LocatorAwareTrait

getTableLocator() public ¶

getTableLocator( )

Gets the table locator.

Returns
Cake\ORM\Locator\LocatorInterface

setTableLocator() public ¶

setTableLocator( Cake\ORM\Locator\LocatorInterface $tableLocator )

Sets the table locator.

Parameters
Cake\ORM\Locator\LocatorInterface $tableLocator
LocatorInterface instance.
Returns

$this

tableLocator() public deprecated ¶

tableLocator( Cake\ORM\Locator\LocatorInterface $tableLocator = null )

Sets the table locator. If no parameters are passed, it will return the currently used locator.

Deprecated
3.5.0 Use getTableLocator()/setTableLocator() instead.
Parameters
Cake\ORM\Locator\LocatorInterface $tableLocator optional null
LocatorInterface instance.
Returns
Cake\ORM\Locator\LocatorInterface

Properties detail

$_configure ¶

protected array

Configure values to restore at end of test.

[]

$_pathRestore ¶

protected array

Path settings to restore at the end of the test.

[]

$autoFixtures ¶

public boolean

By default, all fixtures attached to this class will be truncated and reloaded after each test. Set this to false to handle manually

true

$dropTables ¶

public boolean

Control table create/drops on each test method.

If true, tables will still be dropped at the end of each test runner execution.

false

$fixtureManager ¶

public Cake\TestSuite\Fixture\FixtureManager|null

The class responsible for managing the creation, loading and removing of fixtures

Follow @CakePHP
#IRC
OpenHub
Rackspace
  • Business Solutions
  • Showcase
  • Documentation
  • Book
  • API
  • Videos
  • Logos & Trademarks
  • Community
  • Team
  • Issues (Github)
  • YouTube Channel
  • Get Involved
  • Bakery
  • Featured Resources
  • Newsletter
  • Certification
  • My CakePHP
  • CakeFest
  • Facebook
  • Twitter
  • Help & Support
  • Forum
  • Stack Overflow
  • IRC
  • Slack
  • Paid Support

Generated using CakePHP API Docs