WordPress.org

Make WordPress Core

Changeset 618 in tests


Ignore:
Timestamp:
04/06/12 18:49:54 (2 years ago)
Author:
kurtpayne
Message:

Unit test for core trac 20043 - WP_User->unset

File:
1 edited

Legend:

Unmodified
Added
Removed
  • wp-testcase/test_user.php

    r557 r618  
    66 
    77    var $user_ids = array(); 
     8    protected $_deprecated_errors = array(); 
    89 
    910    function setUp() { 
     
    1112        // keep track of users we create 
    1213        $this->user_ids = array(); 
     14        $this->_deprecated_errors = array(); 
    1315    } 
    1416 
     
    1820        foreach ( $this->user_ids as $id ) 
    1921            wp_delete_user( $id ); 
     22    } 
     23     
     24    public function deprecated_handler( $function, $message, $version ) { 
     25        $this->_deprecated_errors[] = array( 
     26            'function' => $function, 
     27            'message'  => $message, 
     28            'version'  => $version 
     29        ); 
    2030    } 
    2131 
     
    157167            $this->assertEquals( $value, $user->$key ); 
    158168        } 
     169    } 
     170     
     171    /** 
     172     * Test the magic __unset method 
     173     * @return void 
     174     */ 
     175    public function test_user_unset() { 
     176        $this->knownWPBug( 20043 ); 
     177         
     178        // New user 
     179        $user_id = $this->_make_user('author'); 
     180        $user = new WP_User( $user_id ); 
     181 
     182        // Test custom fields 
     183        $user->customField = 123; 
     184        $this->assertEquals( $user->customField, 123 ); 
     185        unset( $user->customField ); 
     186        $this->assertFalse( isset( $user->customField ) ); 
     187 
     188        // Test 'id' (lowercase) 
     189        add_action( 'deprecated_argument_run', array( $this, 'deprecated_handler' ), 10, 3 ); 
     190        unset( $user->id ); 
     191        $this->assertCount( 1, $this->_deprecated_errors ); 
     192        $this->assertEquals( 'WP_User->id', $this->_deprecated_errors[0]['function'] ); 
     193        $this->assertEquals( '2.1', $this->_deprecated_errors[0]['version'] ); 
     194        remove_action( 'deprecated_argument_run', array( $this, 'deprecated_handler' ), 10, 3); 
     195 
     196        // Test 'ID' 
     197        $this->assertNotEmpty( $user->ID ); 
     198        unset( $user->ID ); 
     199        $this->assertEmpty( $user->ID );         
    159200    } 
    160201 
Note: See TracChangeset for help on using the changeset viewer.