diff --git a/src/app/Observers/SignupCodeObserver.php b/src/app/Observers/SignupCodeObserver.php index 55126db1..7222059b 100644 --- a/src/app/Observers/SignupCodeObserver.php +++ b/src/app/Observers/SignupCodeObserver.php @@ -1,38 +1,38 @@ code)) { $code->short_code = SignupCode::generateShortCode(); // FIXME: Replace this with something race-condition free while (true) { $code->code = str_random($code_length); if (!SignupCode::find($code->code)) { break; } } } $code->expires_at = Carbon::now()->addHours($exp_hours); } } diff --git a/src/tests/Feature/SignupCodeTest.php b/src/tests/Feature/SignupCodeTest.php index 25af7323..86efdac2 100644 --- a/src/tests/Feature/SignupCodeTest.php +++ b/src/tests/Feature/SignupCodeTest.php @@ -1,43 +1,43 @@ [ 'email' => 'User@email.org', 'name' => 'User Name', ] ]; $now = new \DateTime('now'); $code = SignupCode::create($data); $this->assertFalse($code->isExpired()); $this->assertTrue(strlen($code->code) === SignupCode::CODE_LENGTH); - $this->assertTrue(strlen($code->short_code) === SignupCode::SHORTCODE_LENGTH); + $this->assertTrue(strlen($code->short_code) === env('SIGNUP_CODE_LENGTH', SignupCode::SHORTCODE_LENGTH)); $this->assertSame($data['data'], $code->data); $this->assertInstanceOf(\DateTime::class, $code->expires_at); - $this->assertSame(SignupCode::CODE_EXP_HOURS, $code->expires_at->diff($now)->h + 1); + $this->assertSame(env('SIGNUP_CODE_EXPIRY', SignupCode::CODE_EXP_HOURS), $code->expires_at->diff($now)->h + 1); $inst = SignupCode::find($code->code); $this->assertInstanceOf(SignupCode::class, $inst); $this->assertSame($inst->code, $code->code); } } diff --git a/src/tests/Unit/SignupCodeTest.php b/src/tests/Unit/SignupCodeTest.php index d12c0cd5..b326a813 100644 --- a/src/tests/Unit/SignupCodeTest.php +++ b/src/tests/Unit/SignupCodeTest.php @@ -1,24 +1,24 @@ assertTrue(is_string($code)); - $this->assertTrue(strlen($code) === SignupCode::SHORTCODE_LENGTH); - $this->assertTrue(strspn($code, SignupCode::SHORTCODE_CHARS) === strlen($code)); + $this->assertTrue(strlen($code) === env('SIGNUP_CODE_LENGTH', SignupCode::SHORTCODE_LENGTH)); + $this->assertTrue(strspn($code, env('SIGNUP_CODE_CHARS', SignupCode::SHORTCODE_CHARS)) === strlen($code)); } }