Skip to content
GitLab
Projects
Groups
Snippets
/
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
3ed6ed3c
Commit
3ed6ed3c
authored
Mar 24, 2015
by
Robin Appelman
Browse files
Force test cases using background commands to handle setting up the filesystem
parent
7ec8f12a
Changes
3
Hide whitespace changes
Inline
Side-by-side
lib/private/command/fileaccess.php
View file @
3ed6ed3c
...
...
@@ -11,8 +11,12 @@ namespace OC\Command;
use
OCP\IUser
;
trait
FileAccess
{
protected
function
getUserFolder
(
IUser
$user
)
{
protected
function
setupFS
(
IUser
$user
){
\
OC_Util
::
setupFS
(
$user
->
getUID
());
}
protected
function
getUserFolder
(
IUser
$user
)
{
$this
->
setupFS
(
$user
);
return
\
OC
::
$server
->
getUserFolder
(
$user
->
getUID
());
}
}
lib/private/command/queuebus.php
View file @
3ed6ed3c
...
...
@@ -15,7 +15,7 @@ class QueueBus implements IBus {
/**
* @var (ICommand|callable)[]
*/
private
$queue
;
private
$queue
=
[]
;
/**
* Schedule a command to be fired
...
...
tests/lib/testcase.php
View file @
3ed6ed3c
...
...
@@ -23,6 +23,7 @@
namespace
Test
;
use
OC\Command\QueueBus
;
use
OC\Files\Filesystem
;
use
OCP\Security\ISecureRandom
;
abstract
class
TestCase
extends
\
PHPUnit_Framework_TestCase
{
...
...
@@ -34,7 +35,7 @@ abstract class TestCase extends \PHPUnit_Framework_TestCase {
protected
function
setUp
()
{
// overwrite the command bus with one we can run ourselves
$this
->
commandBus
=
new
QueueBus
();
\
OC
::
$server
->
registerService
(
'AsyncCommandBus'
,
function
(){
\
OC
::
$server
->
registerService
(
'AsyncCommandBus'
,
function
()
{
return
$this
->
commandBus
;
});
}
...
...
@@ -190,6 +191,20 @@ abstract class TestCase extends \PHPUnit_Framework_TestCase {
* Run all commands pushed to the bus
*/
protected
function
runCommands
()
{
// get the user for which the fs is setup
$view
=
Filesystem
::
getView
();
if
(
$view
)
{
list
(,
$user
)
=
explode
(
'/'
,
$view
->
getRoot
());
}
else
{
$user
=
null
;
}
\
OC_Util
::
tearDownFS
();
// command cant reply on the fs being setup
$this
->
commandBus
->
run
();
\
OC_Util
::
tearDownFS
();
if
(
$user
)
{
\
OC_Util
::
setupFS
(
$user
);
}
}
}
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new 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