Add dbDelta insert test

Test to make sure that dbDelta properly inserts a value into the DB.

Props tryon, jtsternberg, ebinnion, JPry, avnarun, kevkoeh, salcode.
Fixes #29020.



git-svn-id: https://develop.svn.wordpress.org/trunk@33175 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Aaron Jorbin 2015-07-12 17:28:15 +00:00
parent 9824007fc3
commit c6e3b84c48

View File

@ -230,10 +230,49 @@ class Tests_dbDelta extends WP_UnitTestCase {
$this->assertTableHasNotColumn( 'extra_col', $wpdb->prefix . 'dbdelta_test' ); $this->assertTableHasNotColumn( 'extra_col', $wpdb->prefix . 'dbdelta_test' );
} }
/**
* Test inserting into the database
*/
public function test_insert_into_table(){
global $wpdb;
$insert = dbDelta(
"INSERT INTO {$wpdb->prefix}dbdelta_test (column_1) VALUES ('wcphilly2015')"
);
$this->assertEquals(
array( )
, $insert
);
$this->assertTableRowHasValue( 'column_1', 'wcphilly2015', $wpdb->prefix . 'dbdelta_test' );
}
// //
// Assertions. // Assertions.
// //
/**
* Assert that a table has a row with a value in a field.
*
* @param string $column The field name.
* @param string $value The field value.
* @param string $table The database table name.
*/
protected function assertTableRowHasValue( $column, $value, $table ) {
global $wpdb;
$table_row = $wpdb->get_row( "select $column from {$table} where $column = '$value'" );
$expected = (object) array(
$column => $value
);
$this->assertEquals( $expected, $table_row );
}
/** /**
* Assert that a table has a column. * Assert that a table has a column.
* *