WordPress.org

Make WordPress Core

Changeset 697 in tests


Ignore:
Timestamp:
04/25/12 14:22:31 (2 years ago)
Author:
nacin
Message:

Test cases for set_custom_fields() in XML-RPC, via wp_editPost. see #WP20543.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • wp-testcase/test-xmlrpc-api/test_wp_editPost.php

    r684 r697  
    44 
    55    function test_invalid_username_password() { 
    6         $result = $this->myxmlrpcserver->wp_editPost( array( 1, 'username', 'password' ) ); 
     6        $result = $this->myxmlrpcserver->wp_editPost( array( 1, 'username', 'password', 0, array() ) ); 
    77        $this->assertInstanceOf( 'IXR_Error', $result ); 
    88        $this->assertEquals( 403, $result->code ); 
     
    139139    } 
    140140 
     141    function test_edit_custom_fields() { 
     142        $contributor_id = get_user_by( 'login', 'contributor' )->ID; 
     143        $post = array( 'post_title' => 'Post test', 'post_author' => $contributor_id ); 
     144        $post_id = wp_insert_post( $post ); 
     145        $mid_edit   = add_post_meta( $post_id, 'custom_field_key', '12345678' ); 
     146        $mid_delete = add_post_meta( $post_id, 'custom_field_to_delete', '12345678' ); 
     147 
     148        $new_title = 'Post test (updated)'; 
     149        $post2 = array( 
     150            'post_title' => $new_title, 
     151            'custom_fields' => 
     152                array( 
     153                    array( 'id' => $mid_delete ), 
     154                    array( 'id' => $mid_edit, 'key' => 'custom_field_key', 'value' => '87654321' ), 
     155                ) 
     156        ); 
     157 
     158        $result = $this->myxmlrpcserver->wp_editPost( array( 1, 'contributor', 'contributor', $post_id, $post2 ) ); 
     159        $this->assertNotInstanceOf( 'IXR_Error', $result ); 
     160        $this->assertTrue($result); 
     161 
     162        $out = wp_get_single_post( $post_id ); 
     163        $this->assertEquals( $new_title, $out->post_title ); 
     164 
     165        $edited_object = get_metadata_by_mid( 'post', $mid_edit ); 
     166        $this->assertEquals( '87654321', $edited_object->meta_value ); 
     167        $this->assertFalse( get_metadata_by_mid( 'post', $mid_delete ) ); 
     168    } 
     169 
    141170} 
Note: See TracChangeset for help on using the changeset viewer.