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