I'm trying to use the Manager's DialogMonitor class to handle dialogues triggered by javascript over the course of testing.
I've tried running this before tests start:
Confirm = new ConfirmDialog(browser, DialogButton.OK);
manager.DialogMonitor.AddDialog(Confirm);
OnBeforeUnload = new OnBeforeUnloadDialog(browser, DialogButton.OK);
manager.DialogMonitor.AddDialog(OnBeforeUnload);
Alert = new AlertDialog(browser, DialogButton.OK);
manager.DialogMonitor.AddDialog(Alert);
manager.DialogMonitor.Start();
However, it appears that the monitor doesn't even register that dialogues are appearing when testing in Chrome.
I've also tried this:
Confirm = new ConfirmDialog(browser, DialogButton.OK);
Confirm.HandlerDelegate =
dialog => {
manager.Desktop.KeyBoard.KeyPress(Keys.Enter);
};
manager.DialogMonitor.AddDialog(Confirm);
OnBeforeUnload = new OnBeforeUnloadDialog(browser, DialogButton.OK);
OnBeforeUnload.HandlerDelegate = Confirm.HandlerDelegate;
manager.DialogMonitor.AddDialog(OnBeforeUnload);
Alert = new AlertDialog(browser, DialogButton.OK);
Alert.HandlerDelegate = Confirm.HandlerDelegate;
manager.DialogMonitor.AddDialog(Alert);
manager.DialogMonitor.Start();
The delegate is never called, no matter what type of dialog is triggered or when it happens.
Is there some setting I don't know about to allow handling Chrome dialogues, or does the framework as it is now just not support Chrome?