5 use Imager::Screenshot 'screenshot';
7 Imager::Screenshot->have_x11
8 or plan skip_all => "No X11 support";
10 # can we connect to a display
11 my $display = Imager::Screenshot::x11_open()
12 or plan skip_all => "Cannot connect to a display: ".Imager->errstr;
17 # should automatically connect and grab the root window
18 my $im = screenshot(id => 0)
19 or print "# ", Imager->errstr, "\n";
21 ok($im, "got a root screenshot, no display");
25 # use our supplied display
26 my $im = screenshot(display => $display, id => 0);
27 ok($im, "got a root screenshot, supplied display");
31 # use our supplied display - as a method
32 my $im = Imager::Screenshot->screenshot(display => $display, id => 0);
33 ok($im, "got a root screenshot, supplied display (method)");
37 # supply a junk window id
38 my $im = screenshot(display => $display, id => 0xFFFFFFF)
39 or print "# ", Imager->errstr, "\n";
40 ok(!$im, "should fail to get screenshot");
41 cmp_ok(Imager->errstr, '=~', 'BadWindow',
45 Imager::Screenshot::x11_close($display);