Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
die_coolen_jungs
our_own_cloud_project
Commits
eb6a13c2
Commit
eb6a13c2
authored
Nov 11, 2015
by
Sergio Bertolin
Browse files
Added a test including all the fields of the share update and checking output
parent
7aeda7c9
Changes
2
Hide whitespace changes
Inline
Side-by-side
build/integration/features/bootstrap/FeatureContext.php
View file @
eb6a13c2
...
...
@@ -595,7 +595,12 @@ class FeatureContext implements Context, SnippetAcceptingContext {
public
function
checkPublicSharedFile
(
$filename
)
{
$client
=
new
Client
();
$options
=
[];
$url
=
$this
->
lastShareData
->
data
[
0
]
->
url
;
if
(
count
(
$this
->
lastShareData
->
data
->
element
)
>
0
){
$url
=
$this
->
lastShareData
->
data
[
0
]
->
url
;
}
else
{
$url
=
$this
->
lastShareData
->
data
->
url
;
}
$fullUrl
=
$url
.
"/download"
;
$options
[
'save_to'
]
=
"./
$filename
"
;
$this
->
response
=
$client
->
get
(
$fullUrl
,
$options
);
...
...
@@ -613,7 +618,13 @@ class FeatureContext implements Context, SnippetAcceptingContext {
public
function
checkPublicSharedFileWithPassword
(
$filename
,
$password
)
{
$client
=
new
Client
();
$options
=
[];
$token
=
$this
->
lastShareData
->
data
[
0
]
->
token
;
if
(
count
(
$this
->
lastShareData
->
data
->
element
)
>
0
){
$token
=
$this
->
lastShareData
->
data
[
0
]
->
token
;
}
else
{
$token
=
$this
->
lastShareData
->
data
->
token
;
}
$fullUrl
=
substr
(
$this
->
baseUrl
,
0
,
-
4
)
.
"public.php/webdav"
;
$options
[
'auth'
]
=
[
$token
,
$password
];
$options
[
'save_to'
]
=
"./
$filename
"
;
...
...
@@ -645,6 +656,40 @@ class FeatureContext implements Context, SnippetAcceptingContext {
PHPUnit_Framework_Assert
::
assertEquals
(
200
,
$this
->
response
->
getStatusCode
());
}
/**
* @When /^Updating last share with$/
* @param \Behat\Gherkin\Node\TableNode|null $formData
*/
public
function
updatingLastShare
(
$body
)
{
$share_id
=
$this
->
lastShareData
->
data
[
0
]
->
id
;
$fullUrl
=
$this
->
baseUrl
.
"v
{
$this
->
apiVersion
}
.php/apps/files_sharing/api/v
{
$this
->
sharingApiVersion
}
/shares/
$share_id
"
;
$client
=
new
Client
();
$options
=
[];
if
(
$this
->
currentUser
===
'admin'
)
{
$options
[
'auth'
]
=
$this
->
adminUser
;
}
else
{
$options
[
'auth'
]
=
[
$this
->
currentUser
,
$this
->
regularUser
];
}
if
(
$body
instanceof
\
Behat\Gherkin\Node\TableNode
)
{
$fd
=
$body
->
getRowsHash
();
if
(
array_key_exists
(
'expireDate'
,
$fd
)){
$dateModification
=
$fd
[
'expireDate'
];
$fd
[
'expireDate'
]
=
date
(
'Y-m-d'
,
strtotime
(
$dateModification
));
}
$options
[
'body'
]
=
$fd
;
}
try
{
$this
->
response
=
$client
->
send
(
$client
->
createRequest
(
"PUT"
,
$fullUrl
,
$options
));
}
catch
(
\
GuzzleHttp\Exception\ClientException
$ex
)
{
$this
->
response
=
$ex
->
getResponse
();
}
PHPUnit_Framework_Assert
::
assertEquals
(
200
,
$this
->
response
->
getStatusCode
());
}
public
function
createShare
(
$user
,
$path
=
null
,
$shareType
=
null
,
...
...
@@ -718,6 +763,7 @@ class FeatureContext implements Context, SnippetAcceptingContext {
return
True
;
}
}
return
False
;
}
else
{
if
(
$contentExpected
==
"A_TOKEN"
){
...
...
@@ -821,6 +867,7 @@ class FeatureContext implements Context, SnippetAcceptingContext {
public
function
checkShareFields
(
$body
){
if
(
$body
instanceof
\
Behat\Gherkin\Node\TableNode
)
{
$fd
=
$body
->
getRowsHash
();
foreach
(
$fd
as
$field
=>
$value
)
{
PHPUnit_Framework_Assert
::
assertEquals
(
True
,
$this
->
isFieldInResponse
(
$field
,
$value
));
}
...
...
build/integration/features/sharing-v1.feature
View file @
eb6a13c2
...
...
@@ -72,11 +72,47 @@ Feature: sharing
|
path
|
welcome.txt
|
|
shareType
|
3
|
|
password
|
publicpw
|
And
Adding expiration date to last share
#And Adding expiration date to last share
And
Updating last share with
|
expireDate
|
+3
days
|
Then
the
OCS
status
code
should
be
"100"
And
the HTTP status code should be
"200"
And
Public shared file
"welcome.txt"
with password
"publicpw"
can be downloaded
Scenario
:
Creating a new public share, updating it and getting it's info
Given
user
"user0"
exists
And
As an
"user0"
When
creating a public share with
|
path
|
FOLDER
|
|
shareType
|
3
|
And
Updating last share with
|
expireDate
|
+3
days
|
|
password
|
publicpw
|
|
publicUpload
|
true
|
|
permissions
|
7
|
And
Getting info of last share
Then
the OCS status code should be
"100"
And
the HTTP status code should be
"200"
And
Share fields of last share match with
|
id
|
A_NUMBER
|
|
item_type
|
folder
|
|
item_source
|
A_NUMBER
|
|
share_type
|
3
|
|
file_source
|
A_NUMBER
|
|
file_target
|
/FOLDER
|
|
permissions
|
7
|
|
stime
|
A_NUMBER
|
|
expiration
|
+3
days
|
|
token
|
A_TOKEN
|
|
storage
|
A_NUMBER
|
|
mail_send
|
0
|
|
uid_owner
|
user0
|
|
storage_id
|
home::user0
|
|
file_parent
|
A_NUMBER
|
|
displayname_owner
|
user0
|
|
url
|
AN_URL
|
Scenario
:
getting all shares of a user using that user
Given
user
"user0"
exists
And
user
"user1"
exists
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment