Blame view

sources/apps/files_external/tests/ftp.php 2.17 KB
03e52840d   Kload   Init
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
  <?php
  /**
   * Copyright (c) 2012 Robin Appelman <icewind@owncloud.com>
   * This file is licensed under the Affero General Public License version 3 or
   * later.
   * See the COPYING-README file.
   */
  
  namespace Test\Files\Storage;
  
  class FTP extends Storage {
  	private $config;
  
  	public function setUp() {
  		$id = uniqid();
  		$this->config = include('files_external/tests/config.php');
  		if ( ! is_array($this->config) or ! isset($this->config['ftp']) or ! $this->config['ftp']['run']) {
  			$this->markTestSkipped('FTP backend not configured');
  		}
  		$this->config['ftp']['root'] .= '/' . $id; //make sure we have an new empty folder to work in
  		$this->instance = new \OC\Files\Storage\FTP($this->config['ftp']);
  		$this->instance->mkdir('/');
  	}
  
  	public function tearDown() {
  		if ($this->instance) {
  			\OCP\Files::rmdirr($this->instance->constructUrl(''));
  		}
  	}
  
  	public function testConstructUrl(){
  		$config = array ( 'host' => 'localhost',
  						  'user' => 'ftp',
  						  'password' => 'ftp',
  						  'root' => '/',
  						  'secure' => false );
31b7f2792   Kload   Upgrade to ownclo...
37
  		$instance = new \OC\Files\Storage\FTP($config);
03e52840d   Kload   Init
38
39
40
  		$this->assertEquals('ftp://ftp:ftp@localhost/', $instance->constructUrl(''));
  
  		$config['secure'] = true;
31b7f2792   Kload   Upgrade to ownclo...
41
  		$instance = new \OC\Files\Storage\FTP($config);
03e52840d   Kload   Init
42
43
44
  		$this->assertEquals('ftps://ftp:ftp@localhost/', $instance->constructUrl(''));
  
  		$config['secure'] = 'false';
31b7f2792   Kload   Upgrade to ownclo...
45
  		$instance = new \OC\Files\Storage\FTP($config);
03e52840d   Kload   Init
46
47
48
  		$this->assertEquals('ftp://ftp:ftp@localhost/', $instance->constructUrl(''));
  
  		$config['secure'] = 'true';
31b7f2792   Kload   Upgrade to ownclo...
49
  		$instance = new \OC\Files\Storage\FTP($config);
03e52840d   Kload   Init
50
  		$this->assertEquals('ftps://ftp:ftp@localhost/', $instance->constructUrl(''));
31b7f2792   Kload   Upgrade to ownclo...
51
52
53
54
55
56
57
58
59
60
61
62
  
  		$config['root'] = '';
  		$instance = new \OC\Files\Storage\FTP($config);
  		$this->assertEquals('ftps://ftp:ftp@localhost/somefile.txt', $instance->constructUrl('somefile.txt'));
  
  		$config['root'] = '/abc';
  		$instance = new \OC\Files\Storage\FTP($config);
  		$this->assertEquals('ftps://ftp:ftp@localhost/abc/somefile.txt', $instance->constructUrl('somefile.txt'));
  
  		$config['root'] = '/abc/';
  		$instance = new \OC\Files\Storage\FTP($config);
  		$this->assertEquals('ftps://ftp:ftp@localhost/abc/somefile.txt', $instance->constructUrl('somefile.txt'));
03e52840d   Kload   Init
63
64
  	}
  }