Merge pull request #4271 from nextcloud/also-send-the-new-data-with-the-event

Also send the new account data with the event
This commit is contained in:
Joas Schilling 2017-04-10 11:14:39 +02:00 committed by GitHub
commit 87bca38413
2 changed files with 9 additions and 6 deletions

View File

@ -94,7 +94,7 @@ class AccountManager {
if ($updated) {
$this->eventDispatcher->dispatch(
'OC\AccountManager::userUpdated',
new GenericEvent($user)
new GenericEvent($user, $data)
);
}
}

View File

@ -27,6 +27,7 @@ use OC\Accounts\AccountManager;
use OC\Mail\Mailer;
use OCP\IUser;
use Symfony\Component\EventDispatcher\EventDispatcherInterface;
use Symfony\Component\EventDispatcher\GenericEvent;
use Test\TestCase;
/**
@ -75,12 +76,11 @@ class AccountsManagerTest extends TestCase {
/**
* @dataProvider dataTrueFalse
*
* @param bool $userAlreadyExists
*/
public function testUpdateUser($newData, $oldData, $insertNew, $updateExisitng) {
$accountManager = $this->getInstance(['getUser', 'insertNewUser', 'updateExistingUser']);
$user = $this->getMockBuilder('OCP\IUser')->getMock();
/** @var IUser $user */
$user = $this->createMock(IUser::class);
$accountManager->expects($this->once())->method('getUser')->with($user)->willReturn($oldData);
@ -102,9 +102,12 @@ class AccountsManagerTest extends TestCase {
} else {
$this->eventDispatcher->expects($this->once())->method('dispatch')
->willReturnCallback(
function ($eventName, $event) use ($user) {
function ($eventName, $event) use ($user, $newData) {
$this->assertSame('OC\AccountManager::userUpdated', $eventName);
$this->assertInstanceOf('Symfony\Component\EventDispatcher\GenericEvent', $event);
$this->assertInstanceOf(GenericEvent::class, $event);
/** @var GenericEvent $event */
$this->assertSame($user, $event->getSubject());
$this->assertSame($newData, $event->getArguments());
}
);
}