|
|
|
@ -805,7 +805,7 @@ class ShareesTest extends TestCase { |
|
|
|
|
true, |
|
|
|
|
[], |
|
|
|
|
[ |
|
|
|
|
['label' => 'User @ Localhost', 'value' => ['shareType' => Share::SHARE_TYPE_REMOTE, 'shareWith' => 'username@localhost']], |
|
|
|
|
['label' => 'User @ Localhost', 'value' => ['shareType' => Share::SHARE_TYPE_REMOTE, 'shareWith' => 'username@localhost', 'server' => 'localhost']], |
|
|
|
|
], |
|
|
|
|
true, |
|
|
|
|
], |
|
|
|
@ -855,7 +855,7 @@ class ShareesTest extends TestCase { |
|
|
|
|
['label' => 'test@remote', 'value' => ['shareType' => Share::SHARE_TYPE_REMOTE, 'shareWith' => 'test@remote']], |
|
|
|
|
], |
|
|
|
|
[ |
|
|
|
|
['label' => 'User @ Localhost', 'value' => ['shareType' => Share::SHARE_TYPE_REMOTE, 'shareWith' => 'username@localhost']], |
|
|
|
|
['label' => 'User @ Localhost', 'value' => ['shareType' => Share::SHARE_TYPE_REMOTE, 'shareWith' => 'username@localhost', 'server' => 'localhost']], |
|
|
|
|
], |
|
|
|
|
true, |
|
|
|
|
], |
|
|
|
@ -904,7 +904,7 @@ class ShareesTest extends TestCase { |
|
|
|
|
], |
|
|
|
|
true, |
|
|
|
|
[ |
|
|
|
|
['label' => 'User @ Localhost', 'value' => ['shareType' => Share::SHARE_TYPE_REMOTE, 'shareWith' => 'username@localhost']], |
|
|
|
|
['label' => 'User @ Localhost', 'value' => ['shareType' => Share::SHARE_TYPE_REMOTE, 'shareWith' => 'username@localhost', 'server' => 'localhost']], |
|
|
|
|
], |
|
|
|
|
[], |
|
|
|
|
true, |
|
|
|
@ -929,7 +929,7 @@ class ShareesTest extends TestCase { |
|
|
|
|
], |
|
|
|
|
false, |
|
|
|
|
[ |
|
|
|
|
['label' => 'User @ Localhost', 'value' => ['shareType' => Share::SHARE_TYPE_REMOTE, 'shareWith' => 'username@localhost']], |
|
|
|
|
['label' => 'User @ Localhost', 'value' => ['shareType' => Share::SHARE_TYPE_REMOTE, 'shareWith' => 'username@localhost', 'server' => 'localhost']], |
|
|
|
|
], |
|
|
|
|
[], |
|
|
|
|
true, |
|
|
|
@ -1435,4 +1435,97 @@ class ShareesTest extends TestCase { |
|
|
|
|
$this->assertArrayHasKey('message', $meta); |
|
|
|
|
$this->assertSame($message, $meta['message']); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* @dataProvider dataTestSplitUserRemote |
|
|
|
|
* |
|
|
|
|
* @param string $remote |
|
|
|
|
* @param string $expectedUser |
|
|
|
|
* @param string $expectedUrl |
|
|
|
|
*/ |
|
|
|
|
public function testSplitUserRemote($remote, $expectedUser, $expectedUrl) { |
|
|
|
|
list($remoteUser, $remoteUrl) = $this->sharees->splitUserRemote($remote); |
|
|
|
|
$this->assertSame($expectedUser, $remoteUser); |
|
|
|
|
$this->assertSame($expectedUrl, $remoteUrl); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public function dataTestSplitUserRemote() { |
|
|
|
|
$userPrefix = ['user@name', 'username']; |
|
|
|
|
$protocols = ['', 'http://', 'https://']; |
|
|
|
|
$remotes = [ |
|
|
|
|
'localhost', |
|
|
|
|
'local.host', |
|
|
|
|
'dev.local.host', |
|
|
|
|
'dev.local.host/path', |
|
|
|
|
'dev.local.host/at@inpath', |
|
|
|
|
'127.0.0.1', |
|
|
|
|
'::1', |
|
|
|
|
'::192.0.2.128', |
|
|
|
|
'::192.0.2.128/at@inpath', |
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
$testCases = []; |
|
|
|
|
foreach ($userPrefix as $user) { |
|
|
|
|
foreach ($remotes as $remote) { |
|
|
|
|
foreach ($protocols as $protocol) { |
|
|
|
|
$baseUrl = $user . '@' . $protocol . $remote; |
|
|
|
|
|
|
|
|
|
$testCases[] = [$baseUrl, $user, $protocol . $remote]; |
|
|
|
|
$testCases[] = [$baseUrl . '/', $user, $protocol . $remote]; |
|
|
|
|
$testCases[] = [$baseUrl . '/index.php', $user, $protocol . $remote]; |
|
|
|
|
$testCases[] = [$baseUrl . '/index.php/s/token', $user, $protocol . $remote]; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
return $testCases; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public function dataTestSplitUserRemoteError() { |
|
|
|
|
return array( |
|
|
|
|
// Invalid path |
|
|
|
|
array('user@'), |
|
|
|
|
|
|
|
|
|
// Invalid user |
|
|
|
|
array('@server'), |
|
|
|
|
array('us/er@server'), |
|
|
|
|
array('us:er@server'), |
|
|
|
|
|
|
|
|
|
// Invalid splitting |
|
|
|
|
array('user'), |
|
|
|
|
array(''), |
|
|
|
|
array('us/erserver'), |
|
|
|
|
array('us:erserver'), |
|
|
|
|
); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* @dataProvider dataTestSplitUserRemoteError |
|
|
|
|
* |
|
|
|
|
* @param string $id |
|
|
|
|
* @expectedException \Exception |
|
|
|
|
*/ |
|
|
|
|
public function testSplitUserRemoteError($id) { |
|
|
|
|
$this->sharees->splitUserRemote($id); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* @dataProvider dataTestFixRemoteUrl |
|
|
|
|
* |
|
|
|
|
* @param string $url |
|
|
|
|
* @param string $expected |
|
|
|
|
*/ |
|
|
|
|
public function testFixRemoteUrl($url, $expected) { |
|
|
|
|
$this->assertSame($expected, |
|
|
|
|
$this->invokePrivate($this->sharees, 'fixRemoteURL', [$url]) |
|
|
|
|
); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public function dataTestFixRemoteUrl() { |
|
|
|
|
return [ |
|
|
|
|
['http://localhost', 'http://localhost'], |
|
|
|
|
['http://localhost/', 'http://localhost'], |
|
|
|
|
['http://localhost/index.php', 'http://localhost'], |
|
|
|
|
['http://localhost/index.php/s/AShareToken', 'http://localhost'], |
|
|
|
|
]; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|