I am trying to test a functionality to disable/enable a resource. It detects correctly the dialog but acceptDialog() seems to not work correctly.
The test is like:
$browser->loginAs($user) ->resize(1440, 3000) ->visitRoute('route', ['id' => $id]) ->assertSee('Active') ->click('#state-resource') ->pause(20) ->assertDialogOpened('Are you sure you wish to activate/deactivate this resource?') ->acceptDialog() ->pause(1000) ->assertSee('Inactive') ->restoreSize();
If I don't use the acceptDialog, an exception is raised -> Facebook\WebDriver\Exception\UnexpectedAlertOpenException
But using the acceptDialog seems like the dialog is dismissed instead of being accepted, because It stays on the same page ( notice the pause function to ensure enough time to change the page).
I get a screenshot of the page like the button was never clicked and the dialog accepted. Can't take an screenshoot when the dialog is displayed because I get an UnexpetedAlertOpenException.
The html code of the element with the state-resource id is:
<button style="display:inline" class="submit small text_only has_text" id="state-resource" onclick="return confirm('Are you sure you wish to activate/deactivate this resource?')"> Deactivate </button>
Somebody knows why this test doesn't work?