trypost/tests/Unit/Enums/PersonaTest.php
Paulo Castellano ea2d3d86c8 feat(onboarding): add Marketer and Online store personas
Completes the persona grid to a 3x3 with two high-value segments:
Marketer (in-house marketing / social media, a scheduling tool's core user)
and Online store (e-commerce). Labels in all three locales, with
IconSpeakerphone and IconShoppingBag glyphs. Other stays last.
2026-06-24 09:31:33 -03:00

18 lines
624 B
PHP

<?php
declare(strict_types=1);
use App\Enums\User\Persona;
test('persona values are stable', function () {
expect(array_map(fn (Persona $persona): string => $persona->value, Persona::cases()))
->toBe(['creator', 'freelancer', 'developer', 'startup', 'agency', 'small_business', 'marketer', 'online_store', 'other']);
});
test('every persona has an onboarding label in every locale', function (string $locale) {
foreach (Persona::cases() as $persona) {
$key = "onboarding.personas.{$persona->value}";
expect(__($key, [], $locale))->not->toBe($key);
}
})->with(['en', 'es', 'pt-BR']);