Mozilla-Mechanize-GUITester
view release on metacpan or search on metacpan
lib/Mozilla/Mechanize/GUITester.pm view on Meta::CPAN
Mozilla::Mechanize manual for its description.
=cut
sub new {
my $home = $ENV{HOME};
my $td = tempdir("/tmp/mozilla_guitester_XXXXXX", CLEANUP => 1);
local $ENV{HOME} = $td;
local $ENV{MOZ_NO_REMOTE} = 1;
my $self = shift()->SUPER::new(@_);
$self->{_home} = $td;
$self->{_popups} = {};
$self->{_alerts} = '';
$self->{_console_messages} = [];
$self->{_window_id} = $self->agent->{window}->window->XWINDOW;
confess("# Unable to find window id") unless $self->window_id;
Mozilla::PromptService::Register({ DEFAULT => sub {
my $name = shift;
$self->{_popups}->{$name} = [ @_ ];
$self->{_alerts} .= $_[2] . "\n";
} , Confirm => sub { return $self->{_confirm_result} }
, Prompt => sub { return $self->{_prompt_result}; } });
$self->{_reqs_count} = 0;
Mozilla::ObserverService::Register({
'http-on-examine-response' => sub {
$self->_N('http-on-examine-response');
my $channel = shift;
$self->{_response_status} = $channel->responseStatus;
$self->{_reqs_count}-- if $self->{_reqs_count} > 0;
lib/Mozilla/Mechanize/GUITester.pm view on Meta::CPAN
=cut
sub status { return shift()->{_response_status}; }
=head2 $mech->last_alert
Returns last alert contents intercepted through Mozilla::PromptService.
It is useful for communication from javascript.
=cut
sub last_alert { return shift()->{_popups}->{Alert}->[2]; }
=head2 $mech->console_messages
Returns arrayref of all console messages (e.g. javascript errors) aggregated
so far.
See Mozilla nsIConsoleService documentation for more details.
=cut
sub console_messages { return shift()->{_console_messages}; }
( run in 1.472 second using v1.01-cache-2.11-cpan-364913b4093 )