function it_should_connect_oauth_account_with_given_user( $userManager, $oauthRepository, UserInterface $user, UserResponseInterface $response, ResourceOwnerInterface $resourceOwner, UserOAuthInterface $oauth ) { $resourceOwner->getName()->willReturn('google'); $response->getEmail()->willReturn(null); $response->getUsername()->willReturn('username'); $response->getResourceOwner()->willReturn($resourceOwner); $response->getAccessToken()->willReturn('access_token'); $oauthRepository->createNew()->willReturn($oauth); $oauth->setIdentifier('username'); $oauth->setProvider('google'); $oauth->setAccessToken('access_token'); $user->addOAuthAccount($oauth)->shouldBeCalled(); $userManager->persist($user)->shouldBeCalled(); $userManager->flush()->shouldBeCalled(); $this->connect($user, $response); }