Beispiel #1
0
 /**
  * @group bulk_delete
  */
 public function test_buddydrive_bulk_delete_items()
 {
     // create the upload dir
     $upload_dir = buddydrive_get_upload_data();
     $expected_ids = array();
     $quota_left = 0;
     $u1 = $this->factory->user->create();
     $u2 = $this->factory->user->create();
     $items_users = array('screenshot-1.png' => $u1, 'screenshot-2.png' => $u1, 'screenshot-3.png' => $u2);
     $args = array('type' => buddydrive_get_file_post_type(), 'mime_type' => 'image/png');
     foreach ($items_users as $item => $user) {
         $f = trailingslashit(buddydrive()->plugin_dir) . $item;
         copy($f, trailingslashit($upload_dir['dir']) . $item);
         $fs = filesize($item);
         buddydrive_update_user_space($user, filesize($item));
         if ('screenshot-1.png' === $item) {
             $quota_left = $fs;
         }
         $args = array_merge($args, array('user_id' => $user, 'title' => $item, 'guid' => trailingslashit($upload_dir['url']) . $item));
         $expected_ids[$item] = buddydrive_save_item($args);
     }
     unset($expected_ids['screenshot-1.png']);
     $count = buddydrive_delete_item(array('ids' => $expected_ids));
     $this->assertTrue($count === count($expected_ids));
     $not_deleted = buddydrive_get_buddyfiles_by_ids($expected_ids);
     $this->assertTrue(empty($not_deleted));
     $this->assertEquals($quota_left, (int) get_user_meta($u1, '_buddydrive_total_space', true), 'u1 quota should be set');
     $this->assertEmpty((int) get_user_meta($u2, '_buddydrive_total_space', true), 'u2 quota should be 0');
 }
Beispiel #2
0
 /**
  * @group filters
  * @group upload
  */
 public function test_buddydrive_get_upload_data_change_dir()
 {
     $expected = $this->filter_upload_dir();
     add_filter('buddydrive_get_upload_data', array($this, 'filter_upload_dir'), 10, 1);
     $tested = buddydrive_get_upload_data();
     remove_filter('buddydrive_get_upload_data', array($this, 'filter_upload_dir'), 10, 1);
     $this->assertSame($expected, $tested);
 }
Beispiel #3
0
 /**
  * Creates the upload dir and htaccess file
  *
  * @uses buddydrive_get_upload_data() to get BuddyDrive upload datas
  * @uses wp_mkdir_p() to create the dir
  * @uses insert_with_markers() to create the htaccess file
  */
 public function activation_notice()
 {
     // we need to eventually create the upload dir and the .htaccess file
     $buddydrive_upload = buddydrive_get_upload_data();
     if (empty($buddydrive_upload['dir']) || !file_exists($buddydrive_upload['dir'])) {
         bp_core_add_admin_notice(__('The main BuddyDrive directory is missing', 'buddydrive'));
     }
 }
Beispiel #4
0
 /**
  * @group delete
  */
 public function test_buddydrive_delete_item_zero()
 {
     // create the upload dir
     $upload_dir = buddydrive_get_upload_data();
     $expected_id = buddydrive_save_item(array('type' => buddydrive_get_file_post_type(), 'user_id' => $this->user_id, 'title' => 'screenshot-1.png', 'content' => 'foo file', 'mime_type' => 'image/png', 'guid' => trailingslashit($upload_dir['url']) . 'screenshot-1.png'));
     $count = buddydrive_delete_item(array('ids' => 0, 'user_id' => false));
     $this->assertEmpty($count);
     $not_deleted = buddydrive_get_buddyfiles_by_ids($expected_id);
     $this->assertTrue(!empty($not_deleted));
 }
 /**
  * register the BuddyDrive upload data in instance
  *
  * @uses buddydrive_get_upload_data() to get the specific BuddyDrive upload datas
  */
 public function register_upload_dir()
 {
     $upload_data = buddydrive_get_upload_data();
     if (is_array($upload_data)) {
         buddydrive()->upload_dir = $upload_data['dir'];
         buddydrive()->upload_url = $upload_data['url'];
         buddydrive()->thumbdir = $upload_data['thumbdir'];
         buddydrive()->thumburl = $upload_data['thumburl'];
     }
 }