*/ private array $macros = []; public function __construct(Environment $env) { parent::__construct($env); $this->source = $this->getSourceContext(); $this->parent = false; $this->blocks = [ ]; } protected function doDisplay(array $context, array $blocks = []): iterable { $macros = $this->macros; $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"]; $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "@Maker/registration/Test.WithVerify.tpl.php")); $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"]; $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "@Maker/registration/Test.WithVerify.tpl.php")); // line 1 yield " namespace App\\Tests; class RegistrationControllerTest extends WebTestCase { private KernelBrowser \$client; private \$userRepository; protected function setUp(): void { \$this->client = static::createClient(); // Ensure we have a clean database \$container = static::getContainer(); /** @var EntityManager \$em */ \$em = \$container->get('doctrine')->getManager(); \$this->userRepository = \$container->get(::class); foreach (\$this->userRepository->findAll() as \$user) { \$em->remove(\$user); } \$em->flush(); } public function testRegister(): void { // Register a new user \$this->client->request('GET', '/register'); self::assertResponseIsSuccessful(); self::assertPageTitleContains('Register'); \$this->client->submitForm('Register', [ 'registration_form[email]' => 'me@example.com', 'registration_form[plainPassword]' => 'password', 'registration_form[agreeTerms]' => true, ]); // Ensure the response redirects after submitting the form, the user exists, and is not verified // self::assertResponseRedirects('/'); @TODO: set the appropriate path that the user is redirected to. self::assertCount(1, \$this->userRepository->findAll()); self::assertFalse((\$user = \$this->userRepository->findAll()[0])->isVerified()); // Ensure the verification email was sent // Use either assertQueuedEmailCount() || assertEmailCount() depending on your mailer setup // self::assertQueuedEmailCount(1); self::assertEmailCount(1); self::assertCount(1, \$messages = \$this->getMailerMessages()); self::assertEmailAddressContains(\$messages[0], 'from', ''); self::assertEmailAddressContains(\$messages[0], 'to', 'me@example.com'); self::assertEmailTextBodyContains(\$messages[0], 'This link will expire in 1 hour.'); // Login the new user \$this->client->followRedirect(); \$this->client->loginUser(\$user); // Get the verification link from the email /** @var TemplatedEmail \$templatedEmail */ \$templatedEmail = \$messages[0]; \$messageBody = \$templatedEmail->getHtmlBody(); self::assertIsString(\$messageBody); preg_match('#(http://localhost/verify/email.+)\">#', \$messageBody, \$resetLink); // \"Click\" the link and see if the user is verified \$this->client->request('GET', \$resetLink[1]); \$this->client->followRedirect(); self::assertTrue(static::getContainer()->get(::class)->findAll()[0]->isVerified()); } } "; $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof); $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof); yield from []; } /** * @codeCoverageIgnore */ public function getTemplateName(): string { return "@Maker/registration/Test.WithVerify.tpl.php"; } /** * @codeCoverageIgnore */ public function getDebugInfo(): array { return array ( 48 => 1,); } public function getSourceContext(): Source { return new Source(" namespace App\\Tests; class RegistrationControllerTest extends WebTestCase { private KernelBrowser \$client; private \$userRepository; protected function setUp(): void { \$this->client = static::createClient(); // Ensure we have a clean database \$container = static::getContainer(); /** @var EntityManager \$em */ \$em = \$container->get('doctrine')->getManager(); \$this->userRepository = \$container->get(::class); foreach (\$this->userRepository->findAll() as \$user) { \$em->remove(\$user); } \$em->flush(); } public function testRegister(): void { // Register a new user \$this->client->request('GET', '/register'); self::assertResponseIsSuccessful(); self::assertPageTitleContains('Register'); \$this->client->submitForm('Register', [ 'registration_form[email]' => 'me@example.com', 'registration_form[plainPassword]' => 'password', 'registration_form[agreeTerms]' => true, ]); // Ensure the response redirects after submitting the form, the user exists, and is not verified // self::assertResponseRedirects('/'); @TODO: set the appropriate path that the user is redirected to. self::assertCount(1, \$this->userRepository->findAll()); self::assertFalse((\$user = \$this->userRepository->findAll()[0])->isVerified()); // Ensure the verification email was sent // Use either assertQueuedEmailCount() || assertEmailCount() depending on your mailer setup // self::assertQueuedEmailCount(1); self::assertEmailCount(1); self::assertCount(1, \$messages = \$this->getMailerMessages()); self::assertEmailAddressContains(\$messages[0], 'from', ''); self::assertEmailAddressContains(\$messages[0], 'to', 'me@example.com'); self::assertEmailTextBodyContains(\$messages[0], 'This link will expire in 1 hour.'); // Login the new user \$this->client->followRedirect(); \$this->client->loginUser(\$user); // Get the verification link from the email /** @var TemplatedEmail \$templatedEmail */ \$templatedEmail = \$messages[0]; \$messageBody = \$templatedEmail->getHtmlBody(); self::assertIsString(\$messageBody); preg_match('#(http://localhost/verify/email.+)\">#', \$messageBody, \$resetLink); // \"Click\" the link and see if the user is verified \$this->client->request('GET', \$resetLink[1]); \$this->client->followRedirect(); self::assertTrue(static::getContainer()->get(::class)->findAll()[0]->isVerified()); } } ", "@Maker/registration/Test.WithVerify.tpl.php", "/var/www/cds/app/vendor/symfony/maker-bundle/templates/registration/Test.WithVerify.tpl.php"); } }