aboutsummaryrefslogtreecommitdiffstats
path: root/tests/unit
diff options
context:
space:
mode:
authorHarald Eilertsen <haraldei@anduin.net>2024-01-07 19:16:30 +0100
committerHarald Eilertsen <haraldei@anduin.net>2024-01-08 14:09:13 +0100
commit16cd8caef3336d88ebf6dc77e7281968a9380859 (patch)
treeaef2a3b380a6b41896f60e6ced916e048dcd6fec /tests/unit
parent43dabee53d36de6c8b3059d535acad5bcfe484aa (diff)
downloadvolse-hubzilla-16cd8caef3336d88ebf6dc77e7281968a9380859.tar.gz
volse-hubzilla-16cd8caef3336d88ebf6dc77e7281968a9380859.tar.bz2
volse-hubzilla-16cd8caef3336d88ebf6dc77e7281968a9380859.zip
tests: Add tests for check_account_email
Diffstat (limited to 'tests/unit')
-rw-r--r--tests/unit/includes/AccountTest.php22
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/unit/includes/AccountTest.php b/tests/unit/includes/AccountTest.php
index d123a0c70..af5bcd3c1 100644
--- a/tests/unit/includes/AccountTest.php
+++ b/tests/unit/includes/AccountTest.php
@@ -9,4 +9,26 @@ class AccountTest extends Zotlabs\Tests\Unit\UnitTestCase {
$this->assertNotFalse($account);
$this->assertEquals($this->fixtures['account'][0]['account_email'], $account['account_email']);
}
+
+ /**
+ * Test the `check_account_email` function.
+ *
+ * @dataProvider check_account_email_provider
+ */
+ public function test_check_account_email(string $email, array $expected) {
+ $this->assertEquals($expected, check_account_email($email));
+ }
+
+ function check_account_email_provider() : array {
+ return [
+ // Empty and valid emails return the same result
+ ['', ['error' => false, 'message' => '']],
+ ['newuser@example.com', ['error' => false, 'message' => '']],
+
+ // Check emails not valid for various readons
+ ['not_an_email', ['error' => true, 'message' => 'The provided email address is not valid']],
+ ['baduser@example.com', ['error' => true, 'message' => 'The provided email domain is not among those allowed on this site']],
+ ['hubzilla@example.com', ['error' => true, 'message' => 'The provided email address is already registered at this site']],
+ ];
+ }
}