mirror of
https://github.com/gosticks/wordpress-develop.git
synced 2025-10-16 12:05:38 +00:00
git-svn-id: https://develop.svn.wordpress.org/trunk@34601 602fd350-edb4-49c9-b593-d223f7449a82
65 lines
1.6 KiB
PHP
65 lines
1.6 KiB
PHP
<?php
|
|
|
|
/**
|
|
* @group xmlrpc
|
|
*/
|
|
class Tests_XMLRPC_wp_uploadFile extends WP_XMLRPC_UnitTestCase {
|
|
|
|
public function tearDown() {
|
|
$this->remove_added_uploads();
|
|
|
|
parent::tearDown();
|
|
}
|
|
|
|
function test_valid_attachment() {
|
|
$this->make_user_by_role( 'editor' );
|
|
|
|
// create attachment
|
|
$filename = ( DIR_TESTDATA . '/images/a2-small.jpg' );
|
|
$contents = file_get_contents( $filename );
|
|
$data = array(
|
|
'name' => 'a2-small.jpg',
|
|
'type' => 'image/jpeg',
|
|
'bits' => $contents
|
|
);
|
|
|
|
|
|
$result = $this->myxmlrpcserver->mw_newMediaObject( array( 0, 'editor', 'editor', $data ) );
|
|
$this->assertNotInstanceOf( 'IXR_Error', $result );
|
|
|
|
// check data types
|
|
$this->assertInternalType( 'string', $result['id'] );
|
|
$this->assertStringMatchesFormat( '%d', $result['id'] );
|
|
$this->assertInternalType( 'string', $result['file'] );
|
|
$this->assertInternalType( 'string', $result['url'] );
|
|
$this->assertInternalType( 'string', $result['type'] );
|
|
}
|
|
|
|
/**
|
|
* @ticket 21292
|
|
*/
|
|
function test_network_limit() {
|
|
$this->make_user_by_role( 'editor' );
|
|
|
|
update_option( 'blog_upload_space', 0.1 );
|
|
|
|
// create attachment
|
|
$filename = ( DIR_TESTDATA . '/images/canola.jpg' );
|
|
$contents = file_get_contents( $filename );
|
|
$data = array(
|
|
'name' => 'canola.jpg',
|
|
'type' => 'image/jpeg',
|
|
'bits' => $contents
|
|
);
|
|
|
|
$result = $this->myxmlrpcserver->mw_newMediaObject( array( 0, 'editor', 'editor', $data ) );
|
|
|
|
// Only multisite should have a limit
|
|
if ( is_multisite() ) {
|
|
$this->assertInstanceOf( 'IXR_Error', $result );
|
|
} else {
|
|
$this->assertNotInstanceOf( 'IXR_Error', $result );
|
|
}
|
|
}
|
|
}
|