@ -364,54 +364,23 @@ sub crash_handler {
my ( $ self , $ filename ) = @ _ ;
my $ jenkins = $ ENV { JENKINS } ;
is ( "tests" , "failed" , "This test wasnt successful, check complete test logs for more info" ) ;
diag ( "----------------------- SCRIPT HAS CRASHED-----------------------") ;
diag ( "----------------------- --------- SCRIPT HAS CRASHED---------- -----------------------") ;
my $ url = $ self - > driver - > get_current_url ( ) ;
my $ title = $ self - > driver - > get_title ( ) ;
my $ realtime = localtime ( ) ;
if ( $ self - > driver - > find_text ( "Sorry!" ) || $ self - > driver - > find_text ( "Oops!" ) ) {
my $ crashvar = $ self - > driver - > find_element_by_css ( '.error-container > h2:nth-child(2)' ) - > get_text ( ) ;
my $ incident = "incident number: not avalible" ;
my $ time = "time of incident: not avalible" ;
eval {
$ incident = $ self - > driver - > find_element ( '.error-details > div:nth-child(2)' , 'css' ) - > get_text ( ) ;
$ time = $ self - > driver - > find_element ( '.error-details > div:nth-child(3)' , 'css' ) - > get_text ( ) ;
} ;
diag ( "Server: $ENV{CATALYST_SERVER}" ) ;
diag ( "Url: $url" ) ;
diag ( "Tab Title: $title" ) ;
diag ( "Server error: $crashvar" ) ;
diag ( $ incident ) ;
diag ( $ time ) ;
diag ( "Perl localtime(): $realtime" ) ;
} elsif ( $ self - > driver - > find_text ( "nginx" ) ) {
my $ crashvar = $ self - > driver - > find_element_by_css ( 'body > center:nth-child(1) > h1:nth-child(1)' ) - > get_text ( ) ;
diag ( "Server: $ENV{CATALYST_SERVER}" ) ;
diag ( "Url: $url" ) ;
diag ( "Tab Title: $title" ) ;
diag ( "nginx error: $crashvar" ) ;
diag ( "Perl localtime(): $realtime" ) ;
} elsif ( eval { $ self - > driver - > find_element ( '//*[@id="content"]//div[@class="alert alert-error"]' ) } ) {
my $ label = "Label: could not get text" ;
eval {
$ label = $ self - > driver - > find_element ( '//*[@id="content"]//div[@class="alert alert-error"]' ) - > get_text ( ) ;
} ;
diag ( "Server: $ENV{CATALYST_SERVER}" ) ;
diag ( "Url: $url" ) ;
diag ( "Tab Title: $title" ) ;
diag ( "Error Label: $label" ) ;
diag ( "Perl localtime(): $realtime" ) ;
} else {
diag ( "Could not detect Server issues. Maybe script problems?" ) ;
diag ( "If you still want to check server logs, here's some info" ) ;
diag ( "Server: $ENV{CATALYST_SERVER}" ) ;
diag ( "Url: $url" ) ;
diag ( "Tab Title: $title" ) ;
diag ( "Perl localtime(): $realtime" ) ;
}
my $ label = "Could not find a label" ;
eval {
$ label = $ self - > driver - > find_element ( '//*[@id="content"]//div[@class="alert alert-error"]' ) - > get_text ( ) ;
} ;
diag ( "Server: $ENV{CATALYST_SERVER}" ) ;
diag ( "Url: $url" ) ;
diag ( "Tab Title: $title" ) ;
diag ( "Label: $label" ) ;
diag ( "Perl localtime(): $realtime" ) ;
if ( $ jenkins ) {
$ self - > driver - > capture_screenshot ( $ filename ) ;
diag ( "Screenshot has been taken and is avalible in '/results' ") ;
}
diag ( "---------------------------------------------------------------- ") ;
diag ( "Screenshot has been taken and is avalible in " . $ filename ) ;
} ;
diag ( "------------------------------------------------------------------------------------" ) ;
}
1 ;