Page MenuHomePhorge

SupportTest.php
No OneTemporary

Authored By
Unknown
Size
2 KB
Referenced Files
None
Subscribers
None

SupportTest.php

<?php
namespace Tests\Browser;
use Tests\Browser;
use Tests\Browser\Components\Dialog;
use Tests\Browser\Components\Menu;
use Tests\Browser\Components\Toast;
use Tests\TestCaseDusk;
class SupportTest extends TestCaseDusk
{
/**
* Test support contact form
*/
public function testSupportForm(): void
{
$this->browse(function (Browser $browser) {
$browser->visit('/')
->within(new Menu(), function ($browser) {
$browser->clickMenuItem('support');
})
->waitFor('#support')
->assertSeeIn('.card-title', 'Contact Support')
->assertSeeIn('a.btn-info', 'Contact Support')
->click('a.btn-info')
->with(new Dialog('#support-dialog'), function (Browser $browser) {
$browser->assertSeeIn('@title', 'Contact Support')
->assertFocused('#support-user')
->assertSeeIn('@button-cancel', 'Cancel')
->assertSeeIn('@button-action', 'Submit')
->assertVisible('#support-name')
->assertVisible('#support-email')
->assertVisible('#support-summary')
->assertVisible('#support-body')
->type('#support-email', 'email@address.com')
->type('#support-summary', 'Summary')
->type('#support-body', 'Body')
->click('@button-cancel');
})
->assertMissing('#support-dialog')
->click('a.btn-info')
->with(new Dialog('#support-dialog'), function (Browser $browser) {
$browser->assertSeeIn('@title', 'Contact Support')
->assertFocused('#support-user')
->assertValue('#support-email', 'email@address.com')
->assertValue('#support-summary', 'Summary')
->assertValue('#support-body', 'Body')
->click('@button-action');
})
// Note: This line assumes SUPPORT_EMAIL is not set in config
->assertToast(Toast::TYPE_ERROR, 'Failed to submit the support request')
->assertVisible('#support-dialog');
});
}
}

File Metadata

Mime Type
text/x-php
Expires
Fri, Apr 24, 9:58 AM (1 w, 1 d ago)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
ea/ca/35f95337bf1a4494f1896c9f5bcd
Default Alt Text
SupportTest.php (2 KB)

Event Timeline