WordPress.org

Make WordPress Core


Ignore:
Timestamp:
12/21/2016 05:07:05 AM (4 years ago)
Author:
pento
Message:

Tests: Restore the database connection earlier when switching test groups.

When plugins don't disable the backupGlobals PHPUnit option in their own tests, $wpdb is backed up and restored between classes of tests. The serialisation process used for this broke the database connection. This previously wasn't a problem, as it was reconnecting before each test.

[38398] introduced some changes that required the connection to be available in setUpBeforeClass(), earlier than in was previously reconnecting. This didn't cause warnings in Core, but it did cause warnings for plugins that don't disable the backupGlobals option.

The database connection now reconnects in setUpBeforeClass(). This change also fixes a few Core tests that weren't calling parent::setUpBeforeClass() or parent::tearDown() correctly.

Merges [39626] to the 4.7 branch.

Fixes #39327.

Location:
branches/4.7
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/4.7

  • branches/4.7/tests/phpunit/includes/utils.php

    r38832 r39627  
    390390        $this->field_types = $wpdb->field_types;
    391391        $this->charset = $wpdb->charset;
     392
     393        $this->dbuser = $wpdb->dbuser;
     394        $this->dbpassword = $wpdb->dbpassword;
     395        $this->dbname = $wpdb->dbname;
     396        $this->dbhost = $wpdb->dbhost;
    392397    }
    393398
Note: See TracChangeset for help on using the changeset viewer.