aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Zotlabs/Entity/Registration.php9
-rw-r--r--tests/unit/Entity/RegistrationTest.php12
2 files changed, 21 insertions, 0 deletions
diff --git a/Zotlabs/Entity/Registration.php b/Zotlabs/Entity/Registration.php
index 8f3c87350..e79d0ab5f 100644
--- a/Zotlabs/Entity/Registration.php
+++ b/Zotlabs/Entity/Registration.php
@@ -119,6 +119,15 @@ class Registration
return null;
}
+ public static function get(int $id): ?self
+ {
+ return static::by_query([
+ 'where' => [
+ 'reg_id' => $id,
+ ]
+ ]);
+ }
+
/**
* Find a registration by it's hash.
*
diff --git a/tests/unit/Entity/RegistrationTest.php b/tests/unit/Entity/RegistrationTest.php
index 31e421914..3e4412545 100644
--- a/tests/unit/Entity/RegistrationTest.php
+++ b/tests/unit/Entity/RegistrationTest.php
@@ -39,6 +39,18 @@ class RegistrationTest extends UnitTestCase {
$this->assertEquals($target['reg_lang'], $reg->lang);
}
+ public function test_get_registration_by_id(): void {
+ $target = $this->fixtures['register'][0];
+
+ $reg = Registration::get(intval($target['reg_id']));
+
+ $this->assertInstanceOf(Registration::class, $reg);
+
+ $this->assertEquals($target['reg_uid'], $reg->uid);
+ $this->assertEquals($target['reg_hash'], $reg->hash);
+ $this->assertEquals($target['reg_lang'], $reg->lang);
+ }
+
#[DataProvider('findByHashProvider')]
public function test_find_by_hash(string $hash, bool $expect_success): void {
$reg = Registration::find_by_hash($hash);