feat: CTA dos cards e faixa de modalidades enviam ao WhatsApp com mensagem por pacote
Campo whatsapp_message editável por modalidade (Filament) com fallback para template padrão. Cards da home, faixa 'Conversar com a Amare' e CTA final da página de detalhe abrem o WhatsApp diretamente quando número configurado, mantendo briefing como fallback.
This commit is contained in:
@@ -216,6 +216,44 @@ class HomePageContentTest extends TestCase
|
||||
->assertDontSee(route('briefing', ['servico_interesse' => 'Grand Jour']), false);
|
||||
}
|
||||
|
||||
public function test_package_cta_uses_custom_whatsapp_message_when_provided(): void
|
||||
{
|
||||
SiteSetting::instance()->update(['whatsapp_number' => '+55 11 98888-7777']);
|
||||
|
||||
WeddingPackage::factory()->published()->create([
|
||||
'name' => 'Grand Jour',
|
||||
'cta_label' => 'Quero conhecer a Grand Jour',
|
||||
'whatsapp_message' => 'Olá, quero saber mais sobre a modalidade Grand Jour para o meu casamento em julho.',
|
||||
]);
|
||||
|
||||
$response = $this->get(route('home'));
|
||||
|
||||
$response
|
||||
->assertOk()
|
||||
->assertSee(
|
||||
'https://wa.me/5511988887777?text='.rawurlencode('Olá, quero saber mais sobre a modalidade Grand Jour para o meu casamento em julho.'),
|
||||
false,
|
||||
)
|
||||
->assertDontSee('gostaria de conversar sobre a modalidade Grand Jour para meu casamento', false);
|
||||
}
|
||||
|
||||
public function test_guidance_band_uses_whatsapp_when_a_number_is_configured(): void
|
||||
{
|
||||
SiteSetting::instance()->update(['whatsapp_number' => '+55 11 98888-7777']);
|
||||
|
||||
WeddingPackage::factory()->published()->create();
|
||||
|
||||
$response = $this->get(route('home'));
|
||||
|
||||
$response
|
||||
->assertOk()
|
||||
->assertSee(
|
||||
'https://wa.me/5511988887777?text='.rawurlencode('Olá, ainda estou decidindo a modalidade ideal para o meu casamento. Podemos conversar?'),
|
||||
false,
|
||||
)
|
||||
->assertSee('Conversar com a Amare');
|
||||
}
|
||||
|
||||
public function test_corporate_steps_and_placeholder_render_from_settings(): void
|
||||
{
|
||||
SiteSetting::instance()->update([
|
||||
|
||||
@@ -100,6 +100,26 @@ class PackageDetailTest extends TestCase
|
||||
->assertDontSee(route('briefing', ['servico_interesse' => 'Essenza']), false);
|
||||
}
|
||||
|
||||
public function test_package_final_cta_uses_custom_whatsapp_message_when_provided(): void
|
||||
{
|
||||
SiteSetting::instance()->update(['whatsapp_number' => '+55 11 98888-7777']);
|
||||
|
||||
$package = WeddingPackage::factory()->published()->create([
|
||||
'name' => 'Essenza',
|
||||
'whatsapp_message' => 'Olá, tenho interesse na assessoria Essenza. Podem me passar mais detalhes?',
|
||||
]);
|
||||
|
||||
$response = $this->get(route('packages.show', $package->slug));
|
||||
|
||||
$response
|
||||
->assertOk()
|
||||
->assertSee(
|
||||
'https://wa.me/5511988887777?text='.rawurlencode('Olá, tenho interesse na assessoria Essenza. Podem me passar mais detalhes?'),
|
||||
false,
|
||||
)
|
||||
->assertDontSee('gostaria de conversar sobre a modalidade Essenza para meu casamento', false);
|
||||
}
|
||||
|
||||
public function test_package_cta_falls_back_to_briefing_without_whatsapp_number(): void
|
||||
{
|
||||
SiteSetting::instance();
|
||||
|
||||
Reference in New Issue
Block a user