mailService = $this->createMock(MailService::class); $this->l10n = $this->createMock(IL10N::class); $this->urlGenerator = $this->createMock(IURLGenerator::class); #$this->userManager = $this->createMock(IUserManager::class); $this->userManager = \OC::$server->getUserManager(); $this->config = $this->createMock(IConfig::class); $this->groupManager = \OC::$server->getGroupManager(); $this->random = \OC::$server->getSecureRandom(); $this->usersession = $this->createMock(IUserSession::class); $this->request = $this->createMock(IRequest::class); $this->logger = $this->createMock(ILogger::class); $this->session = $this->createMock(ISession::class); $this->tokenProvider = $this->createMock(IProvider::class); $this->crypto = $this->createMock(ICrypto::class); $this->registrationMapper = new RegistrationMapper( \OC::$server->getDatabaseConnection(), $this->random ); $this->registrationService = new RegistrationService( 'registration', $this->mailService, $this->l10n, $this->urlGenerator, $this->registrationMapper, $this->userManager, $this->config, $this->groupManager, $this->random, $this->usersession, $this->request, $this->logger, $this->session, $this->tokenProvider, $this->crypto ); $this->controller = new RegisterController( 'registration', $this->request, $this->l10n, $this->urlGenerator, $this->registrationService, $this->mailService ); } public function testValidateEmailNormal() { $email = 'aaaa@example.com'; $this->config->expects($this->atLeastOnce()) ->method('getAppValue') ->with("registration", 'allowed_domains', '') ->willReturn(''); $this->mailService->expects($this->once()) ->method('sendTokenByMail') ->willReturn(true); $this->assertEquals($this->registrationService->validateEmail($email), true); $ret = $this->controller->validateEmail($email); $expected = new TemplateResponse('registration', 'message', ['msg' => $this->l10n->t('Verification email successfully sent.') ], 'guest'); $this->assertEquals($expected, $ret, print_r($ret, true)); } }