上传文件库| CI-PHPUnit的测试

时间:2018-06-07 05:11:00

标签: php codeigniter phpunit

在使用ci-phpunit-test运行测试时,$this->upload->do_upload('order_file')始终返回 false 。是因为它没有正确加载库吗?

这是我的控制者:

class Orders extends CI_Controller {
    public function __construct()
    {
        parent::__construct();
        $this->load->model('order_model');
    }

    # POST /orders/upload | accepts multi-part form encoded
    public function upload()
    {
        $config = array(
            'upload_path' => '../order_uploads/',
            'allowed_types' => 'jpg',
            'encrypt_name' => true
        );
        $this->load->library('upload', $config);

        # upload the file
        if ($this->upload->do_upload('order_file')) {
             // do something here
         }
}

和我的测试

<?php
class OrderControllerTest extends TestCase
{
   public function testupload() {
     $this->request('POST', 'orders/upload?order_file=some_file.jpg');
   }
}

1 个答案:

答案 0 :(得分:0)

这是因为do_upload期望$_FILES数组中的文件而不是其各自的超全局数组中的post或get var。

我认为你没有办法对这个功能进行编程单元测试。