All notable changes after version 1.6.16 to this project will be documented in this file. This project adheres to Semantic Versioning.
unreleased Unreleased
4.3.7 2024-11-08;
- In
WPDb
module look up theWPFilesystem
module with and without leading slash.
4.3.6 2024-11-02;
- Fallback for missing
$_composer_autoload_path
file. (thanks @andronocean)
4.3.5 2024-10-16;
- Improve
LoadSandbox
error and messaging (used by theWPLoader
module whenloadOnly: true
) around Codeception early exits. (thanks @andronocean)
4.3.4 2024-09-13;
- Set proper
WPTetCase::factory()
return type, so IDE autocompletion works (thanks @defunctl).
4.3.3 2024-09-11;
- Ensure the
WPLoader
module will set the db constants when inloadOnly: true
mode. - The
WPLoader
module will now set theWPBROWSER_LOAD_ONLY
environment variable to1
when inloadOnly: true
and to0
when inloadOnly: false
mode. - Updated documentation for the
WPLoader
module to explicitly state that theconfigFlile
parameter will be used both when inloadOnly: true
andloadOnly: false
modes.
4.3.2 2024-09-10;
- Doc-block namespace in the
WPRestApiTestCase
class, thanks @TimothyBJacobs.
4.3.1 2024-09-07;
mysql
command output in theMysqlServerController
information output.
4.3.0 2024-09-01;
- Support for PHPUnit 10 and 11.
- The
MysqlServerController
extension.
- Ensure the
WPLoader
module will initialize correctly when used inloadOnly
mode not using theEventDispatcherBridge
extension. (thanks @lxbdr) - Support loading the
wpdb
class from either theclass-wpdb.php
file or thewp-db.php
one, supporting older versions of WordPress (thanks @BrianHenryIE) - Read content, plugins and mu-plugins directories paths from the
WPLoader
configuration parameters correctly. - In the
WPTestCase
class, remove attachments created during tests between tests.
4.2.5 2024-06-26;
- Updated documentation entry in EndToEnd suite bootstrap file.
4.2.4 2024-06-06;
- Re-added the
Symlinker
extension to allow for the symlinking of plugins and themes in place during tests. - Update setup to use the
Symlinker
extension.
4.2.3 2024-06-03;
- Disable strict connection ID check for SQLite databases to avoid errors in tests.
- Better messaging when throwing due to disconnected database.
- Add the
WPLoader::beStrictAboutWpdbConnectionId
configuration parameter, defaults totrue
, to throw if db connection changes during setup before class.
4.2.1 2024-05-24;
- Throw on disconnected db in
WPTestCase::setUpBeforeClass
, iterates over the fix for #720.
4.2.0 2024-05-24;
- Allow plugins to be loaded from arbitrary absolute or relative paths in the
WPLoader
module. - Allow themes to be loaded from arbitrary absolute or relative paths in the
WPLoader
module. - Support an array argument for the
theme
configuration parameter in theWPLoader
module to define[parent-theme, child-theme]
pairs.
4.1.9 2024-05-18;
- Avoid calling
wpdb::db_connect()
twice duringWPLoader
bootstrap. (thanks @calvinalkan)
4.1.8 2024-05-13;
- Updated
sqlite-integration-plugin
and Core PHPUnit suite files.
4.1.7 2024-04-12;
- Fix non standard installation handling, hello Bedrock! (#716)
4.1.6 2024-04-07;
- Load WordPress at
SUITE_BEFORE
in theWPLoader
module, I had previously changed this toSUITE_INIT
but that was causing issues. - Update Core PHPUnit tests
- Update SQLite plugin.
4.1.5 2024-03-28;
- Update init template to scaffold dump file path and example tests correctly (thanks @tarecord).
4.1.4 2024-03-19;
- The
AirplaneMode
module, based on thenorcross/airplane-mode
plugin, to put the website under test in "airplane mode", preventing it from making any network requests during tests.
4.1.3 2024-03-13;
lucatume\WPBrowser\Traits\UopzFunctions
trait to provide a set of functions to work with theuopz
extension; see the documentation for more details.
4.1.2 2024-03-07;
- Disable MU update routine in CLI router to speed up test execution.
- Replace
ifsnop/mysqldump-php
withdruidfi/mysqldump-php
for better performance (thanks @staabm).
4.1.0 2024-02-20;
- The
WPTestCase
class will not backup globals and static attributes by default. Version3
of wp-browser did not backup globals and static attributes by default, this change in version4
is aligned with that behaviour to ease migration from version3
to version4
.
- Restored support for the
@runInSeparateProcess
annotation for test methods. Along with it, improved support for the@dataProvider
annotation for test methods used in conjunction with the@runInSeparateProcess
annotation to run data provider methods at most once. - Implemented support for the
runTestsInSeparateProcesses
annotation for test classes; supporting the@dataProvider
annotation ro run data provider methods at most once. - Added support for the
#[RunInSeparateProcess]
attribute for test methods and the#[RunTestsInSeparateProcesses]
attribute for test classes. - Migration guide from version 3 to version 3.5 or 4
4.0.21 2024-02-12;
- Search more paths for Chrome binaries on linux (#694, thanks to @iateadonut)
- List paths searched for Chrome on current platform in debug output
4.0.20 2024-02-12;
- Print file and line of failure during setup of plugin project, (#694, thanks to @iateadonut)
4.0.19 2024-02-09;
- PHPUnit version 10+ warnings (#692)
- Updated Core PHPUnit test code from
wordpress/wordpress-develop
. - Update SQLite plugin from
sqlite-database-integration
plugin.
4.0.18 2024-01-23;
- Improve messaging and documentation around initialization and setup.
4.0.17 2023-12-14;
- Improve router script to speed up localhost server.
4.0.16 2023-12-07;
- Update the Core PHPUnit test suite to the latest version.
4.0.15 2023-12-06;
- The
WPLoader::silentlyActivatePlugins
configuration parameter to activate plugins without firing theactivated_plugin
action.
4.0.14 2023-12-06;
- The
WPLoader::skipInstall
configuration parameter to skip the WordPress installation when already installed.
4.0.13 2023-11-28;
- Updated Core PHPUnit test suite
- Updated SQLite plugin from version 2.1.1 to 2.1.2
4.0.12 2023-11-25;
- Added the
backupGlobals
,backupGlobalsExcludeList
,backupStaticAttributes
,backupStaticAttributesExcludeList
to theWPLoader
module configuration file to provide a sweeping control over the state snapshot of test cases extending theWPTestCase
class. Test cases overriding those properties explicitly will have their values respected.
4.0.11 2023-11-24;
- Correctly activate themes during bootstrap.
- Remove brittle database name validation, fix #667 and #671.
- Lay the groundwork for version 3.5 automated building.
4.0.10 2023-10-14;
- Methods to set, delete, check and assert on the value of site and normal transients to the
WPDb
class.
- Allow hyphens in database names in the
MySqlDatabase
class. (thanks @BrianHenryIE)
4.0.9 2023-10-09;
- Support database names up to 64 chars in the
Database\MysqlDatabase
class. (thanks @BrianHenryIE)
4.0.8 2023-10-08;
- Better exception message in the
WordPress\WPConfigFile
class when the processing fails. (thanks @BrianHenryIE) - Deal with fixable code style fixes automatically. (thanks @BrianHenryIE)
- Composer autoload file path location in the
Process\Protocol\Control
that would cause tests to not run correctly outside of terminal. (thanks @BrianHenryIE)
4.0.7 2023-10-08;
- Rework the Core PHPUnit test case handling to correctly fire the test case set up and tear down methods.
4.0.6 2023-10-05;
- Added back the
amEditingUserWithId
methood to theWPBrowser
andWPWebDriver
modules. (thanks @johnbillion for the original 3.1.7 contribution)
4.0.5 2023-10-04;
- Set
path
correctly inWPWebDriver
module setup - Set dump file paths correctly on Windows machines
- Use correct Chrome and Chromedriver binary paths on Windows machines
- Work around command line length limit on Windows machines to ensure process-based operaitons work correctly
4.0.4 2023-09-29;
- Use Symphony Process component in loop code to solve Windows issues.
4.0.3 2023-09-19;
- Allow changing path in the WPCLI module using the
changeWpcliPath
method.
4.0.2 2023-09-18;
- Exclude some WooCommerce global values and static attributes from backup to avoid fatals.
4.0.1 2023-09-15;
- Theme-related methods to the
WPBrowser
module. - Theme-related methods to the
WPWebDriver
module.
4.0.0 2023-09-11;
- Update code to be compatible with Codeception v5, PHP 8.0+ and Composer API 2.2+.
- Added support for the
WPLoader.stylesheet
configuration parameter to allow specifying a distincttemplate
andstylesheet
. - Changed name of the
WPLoader.theme
toWPLoader.template
. - Added the following configuration keys to the
WPLoader
module:dump
- allows specifying one or more dump files to be loaded after the installation and before the first test runs.dbUrl
- allows providing the db name, user, password and host using a single URL, e.g.mysql://user:password@host:port/db_name
.AUTH_KEY
-SECURE_AUTH_KEY
-LOGGED_IN_KEY
-NONCE_KEY
-AUTH_SALT
-SECURE_AUTH_SALT
-LOGGED_IN_SALT
-NONCE_SALT
- allows specifying the WordPress salts.- Support configuring the module using the WordPress constant name directly according to the following map (keys are aliased):
ABSPATH
orwpRootFolder
DB_NAME
ordbName
DB_USER
ordbUser
DB_HOST
ordbHost
DB_PASSWORD
ordbPassword
DB_CHARSET
ordbCharset
DB_COLLATE
ordbCollate
WP_TESTS_MULTISITE
ormultisite
WP_DEFAULT_THEME
ortheme
WP_TESTS_DOMAIN
ordomain
WP_TESTS_EMAIL
oradminEmail
WP_TESTS_TITLE
ortitle
- Added support for the
dbUrl
configuration parameter to theWPDb
module; it allows providing the database username, password and DSN with a single URL; e.g.mysql://user:password@host:port/db_name
. - Added the
WPCLI::dontSeeShellOutputMatches
method
- Move classes in the
tad\WPBrowser
namespace to thelucatume\WPBrowser
one. - Move classes in the
Codeception
namespace to thelucatume\WPBrowser
one. - Moved functions from the
lucatume\WPBrowser
namespace to dedicated classes in thelucatume\WPBrowser\Utils
namespace. - Removed support for Handlebars-like syntax from the
WPDb
module scaffolding functions. - Removed the
Dotenv/Dotenv
polyfill class. - Remove unused
tad\WPBrowser
functions related to Patchwork and PHPUnit. - Removed the
lucatume\WPBrowser
Composer-related functions. - Removed the
tad\WPBrowser\pregErrorMessage
function. - Removed support for the
WPLoader.isolatedInstall
configuration parameter; installation always happens in isolation. - Deprecated the
WPLoaer.activatePlugins
parameter: theWPLoader.plugins
parameter should be used instead. - Removed the
tad\WPBrowser\processStatus
,tad\WPBrowser\processReadPipe
,tad\WPBrowser\process
andtad\WPBrowser\buildCommandLine
functions. - Removed the
isolatedInstall
parameter from theWPLoader
configuration: installation will always happen in isolation. - Removed the
mikey179/vfsStream
development dependency. - Removed the
vria/nodiacritic
dependency. - Removed the
wp-cli/wp-cli
dependency. - Removed the
antecedent/patchwork
dependency. - Removed the
dg/mysql-dump
dependency. - Removed the
mikehaertl/php-shellcommand
dependency. - Removed the
bordoni/phpass
dependency, internalized theHautelook\Phpass
portable password hashing library. - Removed the
mikemclin/laravel-wp-password
dependency. - Removed the
WordPress
module and related support classes. - Removed the
StubProphecy
andFunctionProphecy
classes. - Removed the
WPHealthcheck
class in favor of reports provided by theWordPress\Installation
class. - Removed the
tad\WPBrowser\Utils\Map
class - Deprecated the following
WPLoader
module configuration keys:installationTableHandling
- no more required.skipPluggables
- no more required.wpDebug
- theWP_DEBUG
constant is always set totrue
during tests.activatePlugins
- plugins specified in theplugins
configuration key will be always activated.
- Removed support for PHPUnit's
@runInSeparateProcess
annotation. - Removed the
Copier
andSymlinker
extensions. - Removed the
WithWordPressFilters
trait - Removed the
generate:wpajax
command and related support classes. - Removed the
generate:wpcanonical
command and related support classes. - Removed the
generate:wprest
command and related support classes. - Removed the
generate:wprestcontroller
command and related support classes. - Removed the
generate:wprestposttypecontroller
command and related support classes. - Removed the
generate:wpxmlrpc
command and related support classes. - Rewrite the
WPCLI
module to use theSymfony\Component\Process\Process
class under the hood. - Temporarily remove the
preserveGlobalState
test method support to reimplement support later. - Update the
WPCLI
module to use supported configuration parameters as strict arguments by default
- Ensure
_before
and_after
methods are called correctly byWPTestCase
.
3.2.0 2023-09-15;
- Drop support for Codeception version 2 and 3; starting from this version, the
v3
version of the project will only support Codeception version 4.
- Theme-related methods to the
WPBrowser
module. - Theme-related methods to the
WPWebDriver
module.
- Removed the
lucatume\WPBrowser\Traits\WithForks
trait.
- Correctly invoke the
after_switch_theme
action in theWPLoader
module.
3.1.9 2023-04-11;
- If possible, load the
wpdb
class from thewp-includes/class-wpdb.php
file on newer versions of WordPress.
3.1.8 2023-02-24;
- Clean up and update the build and stack.
- Update
.gitattributes
to remove more files. - Updated sponsors.
3.1.7 2023-02-14;
- Inheritance of current env if the
env
key is set in the configuration of theWPCLI
module (thanks @calvinalkan). - Other environment inheritance and manipulation issues (thanks @calvinalkan).
- Indirect modification notice in the
WPLoader::_switchTheme
method.
- Control global and per-process environment variables in the
WPCLI::cli()
method. (thanks @calvinalkan). - Add the
haveInShellEnvironment
anddontInheritShellEnvironment
methods to theWPCLI
module. (thanks @calvinalkan). amEditingUserWithId
method to theWPBrowser
andWPWebDriver
modules. (thanks @johnbillion).
3.1.6 2022-04-28;
- Add the
WPCLI::grabLastShellOutput
method (thanks @calvinalkan).
3.1.5 2022-03-16;
- Fixed query to
DROP
tables generated by theWPLoader
module when settinginstallationTableHandling
todrop
.
3.1.4 2022-03-02;
- Refactor support for
@runInSeparateProcess
annotation inWPTestCase
to avoid issues with static analysis.
3.1.3 2022-02-01;
- improve
psalm
, and other static analysis tools compatibility, in theWPLoader
module (thanks @calvinalkan).
3.1.2 2022-01-28;
- handle empty numeric values correctly int he
WPCLI
module, fixes #528.
3.1.1 2022-01-28;
- in the context of the
WPLoader
module, construct thePHPMailer
instance to throw exceptions. - remove left-over
@since TBD
tags from doc-blocks.
3.1.0 2022-01-28;
- correctly escape the database name in the
WPDb::createDatabasesIfNotExist
method. - first round of PHP 8.1 compatibility updates.
- rework the build and test flow to leverage
make
.
3.0.22 2022-01-14;
- Require file defining functions before calling
tests_add_filter
function inincludes/bootstrap.php
.
3.0.21 2022-01-11;
- Correctly load SQL from a file in the
WPDb::importSqlDumpFile
(thanks @andergmartins).
3.0.20 2022-01-11;
- Pass the configured table prefix to the user capability builder in the
WPDb
module (thanks @johnbillion). - Trigger an error when plugins in
activePlugins
cannot be included or activated in theWPLoader
module (thanks @johnbillion).
3.0.19 2022-01-06;
- Avoid core installer failures due to mysqli report defaults on PHP 8.1 (thanks @johnbillion).
3.0.18 2022-01-05;
- Introduce the
skipPluggables
configuration parameter in theWPLoader
module to avoid the override of pluggable functions (thanks @johnbillion).
- Exit non 0 value on wp db connection error during bootstrap.
3.0.17 2021-12-15;
- Update
composer.json
to specify the package conflicts with version2.0
of Codeception modules (thanks @simonhammes).
3.0.16 2021-12-15;
- Nothing, this version was lost in the aether of my release tool and I have to live with it. You will be missed, version
3.0.16
.
3.0.15 2021-12-10;
- Update Codeception module suggestions to stick with version
^1.0
and PHP 5.6 compatibility.
3.0.14 2021-11-26;
- Normalize env file parsing to support LF line separators on Windows (thanks @kagg-design).
3.0.13 2021-11-08;
Do not require iconv
extension when, and use the intl
one if available, when building slugs (thanks @roborourke).
3.0.12 2021-10-30;
- do not redefine wp-config constants when using the
WPLoaded
module inloadOnly: true
mode (thanks @LucasDemea)
3.0.11 2021-09-20;
- correct escaping of the PHP binary in the
WithWpCli
trait (thanks @joppuyo)
3.0.10 2021-09-13;
- update
phpass
dependency to usestable
mirror (thanks @Luc45 and @bordoni)
3.0.9 2021-09-10;
- add mirror for the
phpass
dependency, thanks @bordoni, fixes #523
3.0.8 2021-07-05;
- pass the provided parameters to the actions fired in the replacement
wp_set_auth_cookie
function, fixes #509
3.0.7 2021-06-02;
WPDb::getOriginalUrlFromSqlString
regex to parse original site URL from dump file (thanks @stracker-phil)- update
WPDb
module documentation to improve clarity aboutpopulate
andcleanup
configuration parameters (thanks @calvinalkan)
3.0.6 2021-03-29;
- destination file detection in Symlinker extension (thanks @ryanshoover)
3.0.5.1 2021-01-13;
- Correctly update the code per #482
3.0.5 2021-01-08;
- Update the
WPFilesystem::havePlugin
andWPFilesystem::haveMuPlugin
methods to take a plugin path without requiring the.php
extension (thanks @Luc45).
3.0.4 2021-01-04;
- Smaller text fix in Healthcheck component.
- Add more tests to cover URL replacement in
WPDb
module.
3.0.3 2021-01-04;
- Parameter format of the
WPDb
moduleseeOptionInDatabase
,dontSeeOptionInDatabase
,seeSiteOptionInDatabase
,dontSeeSiteOptionInDatabase
methods to support both name and value or array criteria.
- The
WPDb::dontSeeSiteOptionInDatabase
method.
3.0.2 2020-12-08;
- Yaml format issue in scaffoled configuration files, thanks @dale42
3.0.1 2020-12-07;
- Compatibility with PHPUnit version 9.5, thanks @Luc45
3.0.0 2020-12-01;
This version is the first to target Composer version 2
compatibility, while keeping back-compatibility with Composer version 1
.
The version is marked as breaking, and as such as a Major release, as existing setups that rely on some packages previously bundled
with wp-browser might break.
I've changed the removed wp-cli/wp-cli-bundle
(full wp-cli packages) dependency in favor of the wp-cli/wp-cli
one and I've removed the symfony/filesystem
dependency in favour of other internal solutions.
Read the migration guide here.
- Removed the
WithWpCli::executeBackgroundWpCliCommand
method, and, as a consequence, theWPCLI::executeBackgroundWpCliCommand
method. - Removed the
symfony/process
dependency and replaced it with themikehaertl/php-shellcommand
one; refactor methods that use and accept shell commands. - Refactor the
WPCLI
module to build and escape string command lines differently. - Removed the
wp-cli/wp-cli-bundle
dependency and replaced it with thewp-cli/wp-cli
one.
2.6.17 2020-11-17;
- URL replacement issue in
DbDump
class
2.6.16 2020-10-26;
- handle more Cookie types in
WPBrowser::grabCookiesWithPattern
method to avoid errors.
- change DotEnv suggestion to
vlucas/phpdotenv:^4.0
to avoid env vars loading issues.
2.6.15 2020-10-21;
- avoid deleting the whole plugins folder when
havePlugin
is used to create single file plugins (thanks @Luc45)
2.6.14 2020-10-20;
- the
logOut(string|bool $redirectTo)
method to theWPBrowser
andWPWebDriver
modules (thanks @gabe-connolly)
2.6.13 2020-09-22;
- restore full phpstan lvl 8 coverage
2.6.12 2020-09-17;
- rename the
rmkdir
function tomkdirp
for clarity and resemblance with the WordPress one.
2.6.11 2020-09-15;
- an issue where the
recurseRemoveDir
function would leave empty directories behind, fixes #447
- the
mkdirp
function to scaffold nested directory structures and files
2.6.10 2020-08-25;
- remove version block on
symfony/filesystem
dependency, fixes #440
2.6.9 2020-08-19;
- the
WPDb::importSql
method to allow importing custom SQL strings in the database during tests
2.6.8 2020-08-19;
- avoid deprecation notices when loading
MockPHPMailer
, fixes #436
2.6.7 2020-08-14;
- the
WPDb::havePostThumbnailInDatabase
andWPDb::dontHavePostThumbnailInDatabase
methods, fixes #434
2.6.6 2020-08-04;
- URL replacement function in
WPDb
module that would incorrectly handling the replacement oflocalhost:port
URLs, fixes #430
2.6.5 2020-07-16;
- return type of
WPLoader::factory
method to ensure IDE type-hinting will work correctly (thanks @Luc45)
2.6.4 2020-07-07;
- typos and spacing in documentation (thanks @cliffordp)
- environment file parsing for empty values, fixes #427
2.6.3 2020-06-30;
- An issue where additional required plugins would not be correctly parsed during the
init wpbrowser
command, fixes #424
2.6.2 2020-06-19;
- An issue where users created during tests would not be have the correct editing and layout meta set, fixes #422, thanks @ryanshoover
2.6.1 2020-06-11;
- ensure
$_SERVER['REQUEST_TIME']
and$_SERVER['REQUEST_TIME_FLOAT']
are correctly set when running tests based on theCodeception\Test\WPTestCase
class, fixes #417
2.6.0 2020-06-08;
- support, in
WPTestCase
, for the@runInSeparateProcess
annotation to run test methods in separate PHP processes; fixes #410
2.5.7 2020-06-02;
- Codeception required version erroneously set in prev version of
composer.json
file
2.5.6 2020-06-02;
- check in the
codecept init wpbrowser
command to check and report missing Codeception 4.0 to the user during initialization, fixes #412
2.5.5 2020-05-25;
- refactoring to pass
phpstan
level1
and2
checks.
2.5.4 2020-05-22;
- an issue with .env files handling that, when the
vlucas/phpdotenv
package is not required, would incorrectly set up the test environment.
- some refactoring to pass
phpstan
level0
checks.
2.5.3 2020-05-15;
- the
WPDb.letCron
configuration parameter to control whetherwp-cron
processes should be allowed to spawn during tests or not (new default).
- the
WPDb
module will set up the database to preventwp-cron
requests from being spawned during tests, fixes #363. - env file parsing issues reported, fixes #398.
- following changes to how the
WPDb
module sets up the database at the start of tests (and between tests),wp-cron
process will not be spawned during tests unless theWPDb.letCron
configuration parameter is set totrue
.
2.5.2 2020-05-13;
- added
Dotenv\Dotenv
polyfill class to avoid back-compatibility issues w/ projects not requiringvlucas/phpdotenv
explicitly and using env files for tests configuration.
2.5.1 2020-05-13;
- add
function_exists
check to avoid redefinition issues when wp-browser is used in two related packages (thanks @cliffordp)
2.5.0 2020-05-11;
README.md
file updates (thanks @szepeviktor)src/tad/scripts
fixes and refactorings (thanks @szepeviktor)- cron and admin AJAX query vars handling (thanks @Luc45)
gumlet/php-image-resize
package requirement; runtime image modification in theWPDb::haveAttachmentInDatabase
method will require it at runtime.vlucas/phpdotenv
package requirement;wp-browser
will not use it internally, but Codeception will keep requiring it for dynamic parameter configuration.
2.4.8 2020-05-01;
- initialization environment vars in the
Wpbrowser
template providing functions for thecodecept init wpbrowser
command
2.4.7 2020-04-23;
- support for Unix sockets in
WPDB
andWPLoader
modules
- the
codecept init wpbrowser
will now scaffold the suites to support both classic MySQL hosts like1.2.3.4:3306
, container-type hosts likedb
and Unix socket hosts likelocalhost:/var/mysql.sock
2.4.6 2020-04-20;
- PHP 5.6 incompatibility issues introduced in version
2.4.0
, fixes #372
2.4.5 2020-04-15;
- set the
admin_email_lifespan
option value to prevent showing the administration email verification in theWPDb
module, after the database is imported; fixes #358 WPDb::EVENT_AFTER_DB_PREPARE
action after an imported datababse is prepared by applying quality-of-testing-life "patches" to the database
2.4.4 2020-04-14;
- clearer messaging for missing Codeception 4.0 modules in wp-browser modules requiring it, fixes #365 and #360
2.4.3 2020-04-13;
- suites configuration parameter handling in the
lucatume\WPBrowser\Extension\Events
extension.
2.4.2 2020-04-11;
- support for the
contentFolder
parameter in theWPLoader
configuration. This is the equivalent of setting theWP_CONTENT_DIR
constant in a custom configuration file, fixed #342
- internal
tad\WPBrowser\Filesystem\Utils
class in favour offilesystem
functions
2.4.1 2020-04-10;
- an issue where tables created by plugins during the WordPress installation managed by the
WPLoader
module would be dropped; default behaviour changed to emptying the tables, fixes #356
2.4.0 2020-04-10;
- compatibility with Codeception 4.0
- the
lucatume\WPBrowser\Extension\Events
extension to enable subscribing to Codeception 4.0 events
- the event listener and dispatcher system to work consistently across Codeception versions
- issue where
WPDb::haveUserInDatabase
method would not create all the user meta #359
2.3.4 2020-04-03;
- add deprecated functions handling for functions moved in version
2.3
- mark
rrmdir
function as deprecated
2.3.3 2020-04-01;
tad\WPBrowser\vendorDir
issue that would cause the function to return wrong value
2.3.2 2020-03-29;
- absolute paths handling in the
configFile
parameter ofWPLoader
configuration
2.3.1 2020-03-29;
- absolute paths handling in the
pluginsFolder
parameter ofWPLoader
configuration
2.3.0 2020-03-29;
- the
originalUrl
to theWPDb
module configuration; this can help in some instances whereurlReplacement
is active but is not working correctly. - the
lucatume\WPBrowser\Traits\WithWordPressFilters
trait to provide methods, for test cases, to debug WordPress actions and filter initial and final values. - use the
lucatume\WPBrowser\Traits\WithWordPressFilters
trait in theWPLoader
module to debug WordPress actions and filter initial and final values.
- an issue that would prevent the site URL from being correctly replaced during
WPDb
module dump imports - sanity checks on the
Copier
extension
- refactoring of utility functions
- the build system from Travis CI to GitHub Actions, based on Docker
2.2.37 2020-02-21;
- issue in the
WithEvents
trait that would cause issues in theconsole
command
2.2.36 2020-02-19;
- issue with
WPDb
andWPLoader
module inloadOnly
mode that would cause WPLoader to load WordPress before the correct database setup
2.2.35 2020-02-13;
- issue with setup default values where the default environment file name would be empty or the file would be missing
2.2.34 2020-01-29;
- cache flushing issue in
WPTestCase
(thanks @mitogh)
2.2.33 2019-12-18;
WPDb::haveUserCapabilitiesInDatabase
to make sure entries are not duplicated when called on same user [#335]
WPDb::haveUserInDatabase
andWPDb::haveUserCapabilitiesInDatabase
methods to support more complex user role assignment [#336]
2.2.32 2019-11-26;
WPRestControllerTestCase
issue (thanks @TimothyBJacobs)- wrong theme detection in healthcheck [#328]
WPDb::haveUserInDatabase
issue where the sanitization would be stricter than the WordPress one on user login [#332]
2.2.31 2019-10-22;
- documentation generation issue [#323]
- missing
WPWebDriver
configuration and example configuration sections setUp
,tearDown
andsetUpBeforeClass
issues with test cases [#325]
2.2.30 2019-10-14;
dontSeeInShellOutput
,seeInShellOutput
,seeResultCodeIs
,seeResultCodeIsNot
andseeShellOutputMatches
methods toWPCLI
module (thanks @TimothyBJacobs)b
2.2.29 2019-09-24;
wpbrowser
template class to make sure the environment file name is respected when set to different values- some
wpbrowser
template text - output of
WPCLI
module when exit code is0
and there are bothstdout
andstderr
outputs, fixes #316
2.2.28 2019-09-19;
WPCLI
module: do not mark command as failed, thus do not throw, if exit code is0
, fixes #312
2.2.27 2019-09-17;
- command line parsing issue in the
WPCLI
module, fixes #310
2.2.26 2019-09-17;
- double class definition issues dealing with Codeception and PHPUnit versions
2.2.25 2019-09-13;
- smaller refactoring to avoid introducing
STATIC_ANALYSIS
environment var in code (thanks @szepeviktor)
- restore Codeception
2.5
and3.0
support incomposer.json
file erroneously removed in2.2.24
2.2.24 2019-09-06;
- a number of refactorings and fixings following addition of
phpstan
, fixes #291 (thanks @szepeviktor)
2.2.23 2019-09-06;
- smaller adjustment to
slug
function and number handling
2.2.22 2019-09-05;
- support for environment variables to the
WPCLI
module, fixes #299 (thanks @TimothyBJacobs)
2.2.21 2019-09-04;
- the
tad\WPBrowser\slug
function to create the slug version of a string - the
tad\WPBrowser\buildCommandLine
function to generate a Symfony Process compatible command line (array format) from a string one - the
tad\WPBrowser\renderString
function to render a string in the Handlebars format from data - the
WPCLI::cliToString
method to get a wp-cli command output as string, fixes #297 (thanks @TimothyBJacobs)
- removed the
bacon/bacon-string-utils
dependency - added support for custom extra arguments to the
WPCLI
module, see documentation, fixes #295 (thanks @TimothyBJacobs) - replaced the
xamin/handlebars.php
dependency with thezordius/lightncandy
one
- lazy evaluation of the WordPress path in
WPCLI
module, fixes #294 (thanks @TimothyBJacobs) - correct evaluation of command exit status in
WPCLI
module, fixes #296 (thanks @TimothyBJacobs)
2.2.20 2019-08-26;
- ignore foreign key checks when dropping tables in isolated install (thanks @TimothyBJacobs)
2.2.19 2019-08-16;
- enhancements to the build scripts (thanks @karser)
- avoid redefining constants during
WPLoader
module bootstrap
2.2.18 2019-08-02;
WPLoader
module: load WordPress onSUITE_INIT
when only loading (#283)
2.2.17 2019-07-31;
- eager instantiation of WordPress factories causing warnings (#281)
2.2.16 2019-07-23;
- expose a
lucatume\WPBrowser\Module\WPLoader\FactoryStore
instance on the$tester
property when loading theWPLoader
module withloadOnly: false
.
- add explicit override of the
$tester
property when scaffolding theWPTestCase
class (thanks @Luc45)
2.2.15 2019-06-28;
- call
Codeception\Test\Unit
setup methods inWPTestCase
to provide Codeception Unit testing facilities in "WordPress unit" test cases
2.2.14 2019-06-14;
- remove left-over
%WP_URL%
from generated configuration files when runningcodecept init wpbrowser
and replace it with%TEST_SITE_WP_URL%
(thanks @HendrikRoehm)
2.2.13 2019-06-13;
- when the
WPLoader
module is set toloadOnly
mode and used in conjunction with a*Db
module delay its load after all other modules ran their_beforeSuite
action; this tackles an issue only partially resolved in2.2.8
(thanks @Luc45)
2.2.12 2019-06-10;
- make sure Cron is disabled while
WPLoader
module is installing WordPress in isolation (default mode)
2.2.11 2019-06-06;
- support for
timeout
parameter in WPCLI module configuration
2.2.10 2019-06-03;
- when in debug mode the
WPLoader
module will now display a report about the bootstrapped WordPress installation
- restored the
Codeception\Test\Unit
class as parent of the\lucatume\WPBrowser\TestCase\WPTestCase
; it was erroneously removed from the inheritance tree in 2.2.7
2.2.9 2019-05-24;
- catch unlink errors in the
Symlinker
extension (thanks @halmos) - fix
WPTestCase
template generation to scaffold PHPUnit8.0+
compatible code (thanks @halmos)
- updated the documentation to cover some more frequent questions and issues about WPDb
2.2.8 2019-05-20;
- updated requirement of
codeception/codeception
to include version3.0
- updated
WPTestCase
to handle PHPUnit version8.0+
compatibility - internalized the classes and functions provided by the
lucatume/wp-browser-commons
package
- initialize the WPLoader module after all other modules initialized when
loadOnly
istrue
to avoid WordPress exiting due to a non-initialized database fixture
2.2.7 2019-05-08;
- replaced
wp-cli/wp-cli:1.1.*
dependency with thewp-cli/wp-cli-bundle:^2.0
one
2.2.6 2019-05-07;
- informative debug to try and provide guidance and information when the
WPLoader
andWPDb
modules are used together and WordPress dies suddenly. - the
WPDb::dontSeePostWithTermInDatabase
method (#230, thanks @jcabot)
- the
WPDb::seePostWithTermInDatabase
method logic (#230, thanks @jcabot)
2.2.5 2019-04-22;
- allow opening PHP tags in the code arguments of the
WPFilesystem::havePlugin
,WPFilesystem::haveMuPlugin
andWPFilesystem::haveTheme
methods.
2.2.4 2019-04-19;
- a mu-plugins path issue in the
WPFilesystem
module.
2.2.3 2019-04-19;
- first version of the documentation
- fixed an issue where the initialization template would not correctly set the placeholder names (thanks @Luc45)
- methods
getQueries
andcountQueries
to theWPQueries
module
2.2.2 2019-04-14;
- an issue in
src/includes/utils.php
(thanks @lots0logs) - an issue with
WPDb
URL replacement functionality that would prevent it from working with the dump format of some applications
2.2.1 2019-02-11;
- updated
vlucas/phpdotenv
library dependency to^3.0
(thanks @Naktibalda)
2.2.0 2018-11-29;
- the
haveOrUpdateInDatabase
method fromWPDb
module - the
ExtendedDb
class - the requirement of the
lucatume/wp-snaphot-assertions
package - the
\tad\WPBrowser\Snapshot\WPHtmlOutputDriver
class - the
wpcept
binaries lucatume/wp-snapshot-assertions
dependencytad\WPBrowser\Snapshot\WPHtmlOutputDriver
proxy class and thelucatume/wp-snapshot-assertions
dependencywpcept
andwpcept.bat
deprecated binariesCodeception\Command\DbSnapshot
commandtad\Codeception\Command\SearchReplace
command from the templatelucatume/codeception-setup-local
dependency- the
WPBootstrapper
module - the
WPSugarMethods
trait
- compatibility with Codeception
2.5.0
updating theWPDb
class - added a clear disclaimer about db wiping in the
init wpbrowser
command - an issue where the WpWebDriver module would not login correctly #121
- code style compatibility with PSR-2 standard
- an issue in the
tad\WPBrowser\Tests\Support\importDump
function that would prevent the function from working if the database host specified a port - an issue with end-of-line chars in tests on Windows #191 - thanks @Luc45
- lowered the PHP required version from 7.0 to 5.6
- PHP requirement lowered to PHP 5.6
- removed the limit to Codeception version
- Travis tests run now on a Docker stack
- add a
.gitattributes
file to stop littering people's vendor library (sorry, my bad) - support for relative paths in the
wpRootFolder
parameter - the
WPCLI
andWordPress
modules will now set theWPBROWSER_HOST_REQUEST=1
environment variable; this can be used to discern requests coming not only from wp-cli, using theWP_CLI
constant, but from a wp-cli instance used and managed by theWPCLI
module.
2.1.6 2018-09-25;
- set an upper version bound for Codeception of
2.4.5
to avoid incompatibility issues betweenWPDb
andDb
modules
2.1.5 2018-08-01;
- add the
waitlock
parameter to theWPDb
template configuration - make sure the
waitlock
parameter is set inWPDb
module configuration
2.1.4 2018-05-08;
- the
comment_count
of posts to which comments were added usingWPDb::haveCommentInDatabase
(thanks @ptrkcsk)
- the
WPDb::countRowsInDatabase
method
2.1.3 2018-05-07;
- check for an existing
.env
file when initializing and ask for the.env
file name in the init command
2.1.2 2018-04-26;
- the
WPDb::grabUsersTableName
method to theWPdb
module - the
WPDb::dontHaveUserInDatabaseWithEmail
method to theWPDb
module
2.1.1 2018-04-25;
- make the
codecept init wpbrowser
command scaffold thecodeception.dist.yml
file
2.1 2018-04-17;
.env
file based variable setup in thecodecept init wpbrowser
command
2.0.5.2 2018-04-05;
- typos in the readme (thanks @mboldt)
- restore the inclusion of some
WPLoader
required files in thesrc/includes/bootstrap.php
file; those were erroneously removed in2.0
(thanks @rahularyan)
- the
wpbrowser_includes_dir
function to provide a way to get the path to thesrc/includes
folder or files in it
2.0.5.1 2018-03-20;
- missing use of the installation filters when using
WPLoader
isolated install
2.0.5 2018-03-20;
- support for installation filters, via the
$wp_tests_options['installation_filters']
global, in theWPLoader
module
2.0.4 2018-03-16;
- restore the loading of utility files in
WPLoader
module bootstrap file
2.0.3 2018-03-14;
- reference to the
WPHtmlOutputDriver
class from thewp-snapshot-assertions
package
2.0.2 2018-03-10;
- moved the snapshot assertions related code from this package to the
lucatume/wp-snapshot-assertions
one - the
tad\WPBrowser\Snapshot\WPHtmlOutputDriver
is now just an extension of thetad\WP\Snapshots\WPHtmlOutputDriver
class from thelucatume/wp-snapshot-assertions
package.
2.0.1 2018-03-06;
- restore loading of the utils file in the WPLoader module, was erroneously removed in v2.0
2.0 2018-03-03;
- support for PHP 5.6 to be handled in branch
php-56-compat
- require PHP 7.0
1.22.8 2018-02-28;
- an issue with Windows directory separators in the
Wpbrowser
template (thanks @zdenekca)
1.22.7.1 2018-02-28;
- PHPUnit version to use <7 for incompatibility issues
1.22.7 2018-02-27;
- more PHPUnit 6+ aliases in the shims file to allow for use of older tests with newer PHPUnit versions not providing
PHPUnit_Framework_
classes
1.22.6.1 2018-02-14;
- remove unused
check
method fromWPHtmlOutputDriver
class
1.22.6 2018-02-14;
- support for "tolerable differences" in the
WPHtmlOutputDriver
class
1.22.5 2018-02-12;
- fix pre-4.7 testcase incompatibility in
WPTestCase
class (thanks @zlinke77)
1.22.4 2018-02-09;
- PHP 7.2 tests (thanks @tangrufus)
- replaced call to deprecated
each
in file (thanks @tangrufus)
1.22.3 2018-01-30;
- removed the faulty
output
parameter from theWPCLI::cli
method - fixed issues with
WPCLI
module arguments escaping
1.22.2 2018-01-27;
- updated the
WPHtmlOutputDriver
class to support the optionalsnapshotUrl
argument to focus the URL replacement
1.22.1 2018-01-26;
- add the
electrolinux/phpquery
dependency as non dev one
1.22.0 2018-01-26;
- added wait operation to
WPBrowserMethods
to try and tackle the missing login form issue () - replace
eventviva/php-image-resize
dependency withgumlet/php-image-resize
- added the
WPHtmlOutputDriver
class to allow comparison of WordPress specific HTML output using thespatie/phpunit-snapshot-assertions
library
1.21.26 2018-01-15;
- a variable reference issue in the
WPDb
module (thanks @jcabot)
1.21.25 2018-01-11;
- an issue that was preventing
WPDb::haveAttachmentInDatabase
method from working correctly
1.21.24 2018-01-11;
- broader version constraints for
symfony/process
package - move the
eventviva/php-image-resize
dependency torequire
in place ofrequire-dev
1.21.23 2017-12-13;
- fixed an
ExtendedDbDriver
signature issue (thanks @kouratoras) - better handling of user input and error in
wpbrowser
template - fixed an issue where files with
declare
type instructions would trigger fatal errors when usingWPLoader
module inmultisite
mode (thanks @jbrinley)
1.21.22 2017-11-27;
- serialization issue in WP-Loader module (thanks @johnnyhuy)
1.21.21 2017-11-24;
- user defined suite names are now respected during
init wpbrowser
based scaffolding process
1.21.20 2017-10-10;
- a WordPress 4.6 related issue with hook saving (issue #108)
1.21.19 2017-10-09;
- Travis CI tests
- restored the creation of blog tables when using
WPDb::haveBlogInDatabase
orWPDb::haveManyBlogsInDatabase
methods
1.21.18 2017-09-26
WPDb
: a more efficient regex to parse the dump (thanks @slaFFik)WPDb
: avoid running the dump through URL replacement functions ifurlReplacement
has been deactivated in config (thanks @slaFFik)WPDb
: avoid running the dump through white space removal, thus loading it in memory, ifpopulator
is being used (thanks @slaFFik)
1.21.17 2017-08-21
- an issue where some checks could be made by the
WPTestCase
class on non-existing folders
1.21.16 2017-08-12
- an issue in the
WPFilesystem
module that would not allow scaffolding mu-plugins
1.21.15 2017-08-09
- moved the
rrmdir
function to wp-browserfunctions.php
file and removed it from thetests/_support/functions.php
file
1.21.14 2017-08-02
- an issue with symbolic linking of the root dir
1.21.13 2017-07-28
- more sane support for
--quiet
and--no-interaction
options inWPBrowser
template (issue #95 cont.)
1.21.12 2017-07-26
- support for
--quiet
and--no-interaction
options inWPBrowser
template (issue #95)
1.21.11 2017-07-19
- an issue preventing writes in the
WPFilesystem::writeToUploadedFile
method
attachment
post type methods to theWPDb
module
1.21.10 2017-07-14
- support for environments in the
rootFolder
parameter of the Symlinker extension
1.21.9 2017-07-14
- issue where users table would be set to
wp_users
inWPDb::grabUserIdFromDatabase()
method (thanks @gundamew)
1.21.8 2017-07-12
- first version of the
WPFilesystem
module
1.21.7 2017-07-07
- removed excessive bracket in
WPBrowser
template
1.21.6 2017-07-06
- switch to
.env
based configuration for tests - fix an issue where in some cases (e.g. CLI)
WPLoader
module set toloadOnly: true
would generate errors
1.21.5 2017-06-30
- issue with
WPDb::haveOrUpdateInDatabase
method
1.21.4 2017-06-21
WPDb
module sql dump file handling issue (#81)WordPress
module issue related to IP spoofing
1.21.3 2017-06-07
- load file required by
attachment
factory before accessing it (WPLoader
module inloadOnly
configuration) - domain replacement in SQL dump file in
WPDb
module
1.21.2 2017-06-06
- added missing vars to bootstrap template
1.21.1 2017-06-05
- PHP7 syntax issue
1.21.0 2017-06-05
- support for Codeception
2.3
- experimental support for PHPUnit
6.0
- support for user-land SQL dump file import in
WPDb
module (thanks @sc0ttkclark)
- the
wpcept
command is now deprecated in favour of a template based solution
- the
generate:phpunitbootstrap
command
1.20.1 2017-05-23
- locked
codeception/codeception
version at~2.2.0
while support for version2.3
is developed - moved the
codeception/codeception
requirement to therequire
section - updated the code of
dontHaveInDatabase
type methods ofWPDb
to remove meta of handled objects by default
1.20.0 2017-05-15
- added support for "just loading WordPress" to the WPLoader module using the
loadOnly
parameter
1.19.15 2017-05-01
- added Y offset to the plugin activation functions to avoid overlap with the admin bar
1.19.14 2017-04-28
- wording and example about
window_size
parameter ofWPWebDriver
module in the README (thanks @petemolinero) - wording of the
WordPress
module description (thanks @azavisha) - issue where plugin would not be activated when alpha positioned at the bottom of a long list (issue #64)
- allow the
activatePlugin
anddeactivatePlugin
ofWPBrowser
andWPWebDriver
modules to accept an array of plugin slugs to activate
1.19.13 2017-03-25
- updated
wp-cli
version requirement to1.1
(thanks @TangRufus)
1.19.12 2017-03-10
- wait for login form elements in
loginAs
andloginAsAdmin
`WpWebDriver' methods (thanks @TangRufus)
1.19.11 2017-02-20
- missing
$_SERVER['SERVER_NAME']
var in theWordPress
connector that would trigger notices from WordPressgeneral-template.php
file
- cleaned the
WordPress
module from duplicated methods and added missind documentation blocks
1.19.10 2017-02-14
- if the
pluginsFolder
parameter of theWPLoader
module is defined use it to set theWP_PLUGIN_DIR
constant
1.19.9 2017-02-14
- missing support for custom plugin and content paths in
WPLoader
isolated install (thanks @borkweb)
1.19.8 2017-01-25
- output return in
WPCLI
module: will now return the line if the command output is just one line
1.19.7 2017-01-25
- fixed an issue where command line options where ignored during non-interactive
bootstrap
andbootstrap:pyramid
commands
1.19.6 2017-01-25
- new REST API controller and post type controller test cases
- commands to REST API controller and post type controller test cases
- issue when using
isolatedInstall: false
that would generate an error onadd_filter
- removed deprecated blog insertion instruction from same scope installation script that would cause db error output
- cookie generation issues in the
WordPress
module
- refreshed factories, testcases and code from Core suite
1.19.5 2016-12-07
WPLoader
module WordPress 4.7 compatibility issues, #60
1.19.4 2016-11-30
WPCLI
module exception on non string output, #59
1.19.3 2016-11-24
WordPress
module serialization issue
1.19.2 2016-11-16
- autoload file issue
1.19.1 2016-11-15
- support for
tax_input
in place ofterms
inWPDb
module to stick withwp_insert_post
function convention - support for
meta_input
in place ofmeta
inWPDb
module to stick withwp_insert_post
function convention
1.19.0 2016-11-13
- network activation of plugins in multisite
WPLoader
tests
- more verbose output for
WPLoader
isolated installation process
1.18.0 2016-11-02
- support for
--type
option inwpcept bootstrap
interactive mode - theme activation during
WPLoader
module activation - the Copier extension
1.17.0 2016-10-25
- first version of interactive mode to the
bootstrap
command - first version of interactive mode to the
bootstrap:pyramid
command - support for the
theme
configuration parameter in theWPLoader
module configuration
- plugin activation/deactivation in
WPBrowser
module, thanks Ippey
1.16.0 2016-09-05
- WPCLI module to use and access wp-cli functionalities from within tests
- Travis configuration file
.travis.yml
to use external Apache setuup script
1.15.3 2016-08-19
- Travis CI integration
- a smaller issue with tests for the
WPBootstrapper
module andDbSnapshot
command
1.15.2 2016-08-10
WordPress
module not dumping page source on failure (thanks @kbmt)
- better uri parsing in
WordPres
module (thanks @kbmt)
1.15.1 2016-07-22
- missing back-compatibility configuration call in
WPBrowser
andWPWebDriver
modules
1.15.0 2016-07-19
- the
bootstrapActions
parameter of theWPLoader
module will now accept static method signatures - the
WordPress
module to be used for real functional tests - support for the
rootFolder
parameter in theSymlinker
extension
- the parameter to specify the path to the admin area in the
WPBrowser
andWPWebDriver
modules has been renamed toadminPath
, was previouslyadminUrl
- default modules configurations to reflect new module usage
- the
WPRequests
module to use theWordPress
functional module in its place
1.14.3 2016-06-10
- the
WPLoader
module will now run the installation process in a separate process by default (thanks @jbrinley)
- issue with multisite database dumps and domain replacement (thanks @LeRondPoint)
1.14.2 2016-06-10
- support for the
urlReplacement
configuration parameter inWPDb
module to prevent attempts at hard-coded URL replacement in dump file
1.14.1 2016-06-09
- the
WPDb
module will try to replace the existing dump file hard-coded url with the one specified in the configuration during initialization
1.14.0 2016-06-09
- renamed the
wpunit
suite tointegration
to stick with proper TDD terms (thanks @davert) - updated
wpcept
bootstrap
andbootstrap:pyramid
commands to scaffold suites closer in modules to TDD practices WPBrowser
andWPWebDriver
loginAs
andloginAsAdmin
methods will now return an array of access credentials and cookies to be used in requests
1.13.3 2016-06-07
WPTestCase
now extendsCodeception\Test\Unit
class
1.13.2 2016-06-06
- Symlinker extension event hooking
1.13.1 2016-06-06
- issue with Symlinker unlinking operation
1.13.0 2016-06-03
- updated code to follow
codeception/codeception
2.2 update
1.12.0 2016-06-01
- the
WPQueries
module
1.11.0 2016-05-24
lucatume/codeception-setup-local
package requirementwpcept setup
command shimming (fromlucatume/codeception-setup-local
package)wpcept setup:scaffold
command shimming (fromlucatume/codeception-setup-local
package)wpcept search-replace
command shimming (fromlucatume/codeception-setup-local
package)wpdcept db:snapshot
commandlucatume/wp-browser-commons
package requirement
- moved common code to
lucatume/wp-browser-commons
package
1.10.12 2016-05-09
wpdb
reconnection procedure in WPBootstrapper module
1.10.11 2016-05-05
- environments based support in
lucatume\WPBrowser\Extension\Symlinker
extension
1.10.10 2016-05-04
- the
lucatume\WPBrowser\Extension\Symlinker
extension
- update check deactivation when bootstrapping WordPress using the
WPBootstrapper
module - updated core suite PHPUnit test files to latest version
1.10.9 2016-05-03
- wrongly merged code from development version (thanks @crebacz for the prompt message!)
- warnings in
WPDb
module due to hasty use of array manipulation function
- unreliable support for multisite scaffolding from WPDb module
1.10.8 2016-05-02
- missing
blogs
table initialization on multisite installation tests withWPLoader
module
1.10.7 2016-03-30
- faulty active plugin option setting
1.10.6 2016-03-30
- fixed db driver initialization in
WPDb::_cleanup
method
1.10.5 2016-03-20
- plugin activation and deactivation related methods for WPBrowser and WPWebDriver modules (thanks @dimitrismitsis)
1.10.4 2016-02-23
WPBootstrapper
modulewpdb
connection and re-connection process
1.10.3 2016-02-22
WPBrowserMethods::amOnAdminPage
method, applies to WPWebDriver and WPBrowser modulesWPBootstrapper::setPermalinkStructureAndFlush
methodWPBootstrapper::loadWpComponent
method
1.10.0 2016-02-18
- the
WPBrowser
andWpWebDriver
activatePlugin
to use DOM in place of strings (l10n friendly) - the
WPBrowser
andWpWebDriver
deactivatePlugin
to use DOM in place of strings (l10n friendly)
- the WPBootstrapper module
1.9.5 2016-02-15
- wrong scaffolding structure when using the
wpcept bootstrap:pyramid command
###Added
- the
wpunit
test suite to the ones scaffolded by default when using thebootstrap:pyramid
command
1.9.4 2016-01-20
- proper name of
WPAjaxTestCase
class
1.9.3 2016-01-20
wpunit
suite generation when using thewpcept:bootstrap
command
- provisional redirect status
301
to302
in temporary.htaccess
file used byWPDb::haveMultisisiteInDatabase
method
update
andcheckExistence
deprecated parameters from WPDb module
1.9.2 2016-01-09
- the
$sleep
parameter to theWPDb::haveMultisiteInDatabase
method - missing
WPDb::$blogId
reset in cleanup method - the
WPDb::useTheme
method - the
WPDb::haveMenuInDatabase
method - the
WPDb::haveMenuItemInDatabase
method - the
WPDb::seeTermRelationshipInDat
method
1.9.1 2016-01-07
- wrong table prefix in
WPDb::grabPrefixedTableNameFor
method for main blog when switching back to main blog.
- the
WPDb::hitSite
method as not used anymore in code base.
1.9.0 2015-12-23
- the
WPDb::haveMultisiteInDatabase
method will now scaffold browser accessible multisite installations starting from a single site one - WPDb module will drop tables created during multisite scaffolding
$autoload
parameter toWPDb::haveOptionInDatabase
methodwpRootFolder
optional config parameter to theWPDb
module
1.8.11 2015-12-17
- added a check in embedded
bootstrap.php
file of WPLoader module for defined multisite vars
1.8.10 2015-12-11
WPTestCase
class now set the$backupGlobals
tofalse
by default- removed default
$backupGlobals
value setting from test template
1.8.9 2015-12-10
- memory limit constants (
WP_MEMORY_LIMIT
andWP_MAX_MEMORY_LIMIT
) will now check for pre-existing definitions in WPLoader module bootstrap
1.8.8 2015-12-08
- blogs related methods to the WPDb module
haveMany
methods in WPDb module will now parse and compile Handlebars PHP templates
- renamed
haveMultisite
method tohaveMultisiteInDatabase
in WPDb module
haveLinkWithTermInDatabase
method from WPDb module
1.8.7 2015-12-07
- the
seeTableInDatabase
method to WPDb module - the
haveMultisiteInDatabase
method to WPDb module - multisite table
grabXTAbleName
methods to WPDb module
havePostmetaInDatabase
method name tohavePostMetaInDatabase
in WPDb module
1.8.6 2015-12-04
- issue with password validation in WPDb module
1.8.5 2015-12-03
haveManyTermsInDatabase
method to WPDb moduleseeTermTaxonomyInDatabase
method to WPDb moduledontSeeTermTaxonomyInDatabase
method to WPDb modulehaveTermMetaInDatabase
method to WPDb modulegrabTermMetaTableName
method to WPDb moduleseeTermMetaInDatabase
method to WPDb moduledontHaveTermMetaInDatabase
method to WPDb moduledontSeeTermMetaInDatabase
method to WPDb module- the possibility to have user meta in the database while inserting the user using
haveUserInDatabase
WPDb module method
- WPDb
havePostMetaInDatabase
will not add a row for each element in an array meta value but serialize it
1.8.4 2015-12-03
haveManyUsersInDatabase
method to WPDb module
- links related methods in WPDb module
1.8.3 2015-12-02
- comments related methods in WPDb module
1.8.2 2015-11-30
- terms related methods to WPDb module
- terms insertion capability to the
havePostInDatabase
andhaveManyPostsInDatabase
WPDb methods
1.8.1a 2015-11-27
- fixed redundant logic in
WPDb::seeTermInDatabase
andWPDb::dontSeeTermInDatabase
methods
1.8.1 2015-11-27
- reworked term related methods in WPDb module
1.8.0 2015-11-26
- user and user meta related methods to the WPDb module
- options related methods to the WPDb module
- post and post meta related methods to the WPDb module
- duplicate call to globals definition in
install.php
file - renamed file creating issues on with case sensitive systems (thanks @barryhuges)
- some
seeInDatabase
method syntax
1.7.16a 2015-11-18
- the
_delete_all_posts
function in the automated tests bootstrap file now runs without any filters/actions hooked
1.7.15 2015-11-17
- namespace of the
WPRestApiTestCase
class - multiple loading of factory and Trac ticket classes in
WPTestCase
andWP_UnitTestCase
classes - windows and PHP 5.4 compatibility problems (thanks @zdenekca)
- tested and modified WPDb user related methods
dontHaveOptionInDatabase
method from theWPDb
module class
- user and user meta related methods to the
WPDb
module - options and transients related methods to the
WPDb
module
1.7.14 2015-11-10
- call to deprecated
delete
driver method inExtendedDb
module
- the
\lucatume\WPBrowser\TestCase\WPTestCase
, an extension of the base Codeception test case and a copy of the coreWP_UnitTestCase
class - the
\lucatume\WPBrowser\TestCase\WPCanonicalTestCase
, an extension of the base Codeception test case and a copy of the coreWP_Canonical_UnitTestCase
class - the
\lucatume\WPBrowser\TestCase\WPAjaxTestCase
, an extension of the base Codeception test case and a copy of the coreWP_Ajax_UnitTestCase
class - the
\lucatume\WPBrowser\TestCase\WPRestApiTestCase
, an extension of the base Codeception test case and a copy of the coreWP_Test_REST_TestCase
class - the
\lucatume\WPBrowser\TestCase\WPXMLRPCTestCase
, an extension of the base Codeception test case and a copy of the coreWP_XMLRPC_UnitTestCase
class - the
wpcept generate:wpcanonical
command to generate test cases extending the\lucatume\WPBrowser\TestCase\WPCanonicalTestCase
class - the
wpcept generate:wpajax
command to generate test cases extending the\lucatume\WPBrowser\TestCase\WPAjaxTestCase
class - the
wpcept generate:wprest
command to generate test cases extending the\lucatume\WPBrowser\TestCase\WPRestApiTestCase
class - the
wpcept generate:wpxmlrpc
command to generate test cases extending the\lucatume\WPBrowser\TestCase\WPXMLRPCTestCase
class
- updated core unit tests suite code latest version
- bundled test case classes names will now point to the vanilla WP test cases
- the
wpcept generate:wpunit
command will now generate test cases extending the\lucatume\WPBrowser\TestCase\WPTestCase
class
- namespaced test class generation for
generate:wp*
commands will now properly generate the namespace string
1.7.12 2015-11-6
- code format
1.7.11 2015-11-6
- updated the test case class to latest from Core tests (thanks @zbtirell)
- the
waitForJQueryAjax
andgrabFullUrl
methods to the WPWebDriver module
1.7.10 2015-11-5
- modified WPLoader module compatibility check to allow for *Db modules
populate
setting
1.7.9 2015-10-29
- config file search path in the WP Loader module
1.7.8 2015-10-29
- the
config_file
WP Loader module setting toconfigFile
1.7.7 2015-10-22
- the
WP_UnitTestCase
class bundled to extendCodeception\Testcase\Test
class (thanks @borkweb)
1.7.6 2015-10-21
- call to deprecated
set_current_user
function replaced with call towp_set_current_user
1.7.5 2015-10-21
- missing
codecept_relative_path
function inautoload.php
file (thanks @dbisso)
1.7.4 2015-10-19
- plugin activation now happens with the current user set to the Administrator
- modified the file structure
- the plugin activation hook of the WP Loader module to
wp_install
(thanks @barryhuges)
1.7.3 2015-10-14
- the
pluginsFolder
setting to the WP Loader module
- issue with exception generation exception in WP Loader; did happen if a plugin was not found
- some
WPLoader
methods visibility to allow for extension - conditionally write lines to .gitignore to avoid duplicate entries(thanks @borkweb)
1.7.2 2015-10-06
- an exception when a plugin file part of WPLoader
plugins
setting is not found - the
activatePlugins
setting in WPLoader configuration
1.7.1 2015-10-05
- modifications/removals made to the
phpunit
element defined in thephpunit.xml
file will be preserved across regenerations when usingwpcept generate:phpunitBootstrap
command.
1.7.0 2015-10-05
- the possibility to use the
~
symbol in WP Loader configuration - the possibility to specify config file names and have WP Loader search in any parent folder in place of just WP root and above
- the
wpcept generate:phpunitBootstrap
command to allow for the generation of a PHPUnit configuration and bootstrap file to run functional tests
- Codeception dependency to "~2.0"
- administrator username and password default values for easier search and replacing operation
- files and classes organization to reflect namespacing
badcow\lorem-ipsum
dependency
1.6.19 - 2015-10-02
- added the
changelog.txt
file, thanks @olivierlacan for the http://keepachangelog.com/ site and the information. - check and exception for WPLoader
wpRootFolder
parameter - check and exception for conflicting WPDb, Db and WP Loader settings to avoid database handling issues
- it's now possible to pass an array of paths to external config files as
config_file
WP Loader parameter
- WPLoader will look for the config file defined in the
config_file
parameter in WP root folder and the one above before throwing an module configuration exception. - Markdown formatting issues in the README file
- WPDb module has been removed from default modules in the
functional
andacceptance
suites bootstrapped using thewpcept bootstrap
command - WPDb module has been removed from default modules in the
service
andui
suites bootstrapped using thewpcept bootstrap:pyramid
command
1.6.18 - 2015-10-01
config_file
WPLoader parameter
1.6.17 - 2015-09-30
plugins
WPLoader parameterbootstrapActions
WPLoader parameter
1.6.16 - 2015-09-30
- Reference to ModuleConfigException class in WPLoader class.