autotest: fix WindowManagerGraphicsCapture.

Lots of little issues addressed. I think people are removing our dependencies.
Somehow Image Magick convert can't handle postscript anymore. Also make sure
input to perceptualdiff is 8 bit as it chokes on default of 16.

BUG=27587,30316
TEST=Runs on lumpy.

Change-Id: I4a4b226c4a6a14c0be7e0cf77efe9ce7d1df88c9
Reviewed-on: https://gerrit.chromium.org/gerrit/21590
Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
Reviewed-by: Ilja H. Friedel <ihf@chromium.org>
Tested-by: Ilja H. Friedel <ihf@chromium.org>
diff --git a/client/site_tests/graphics_WindowManagerGraphicsCapture/graphics_WindowManagerGraphicsCapture.py b/client/site_tests/graphics_WindowManagerGraphicsCapture/graphics_WindowManagerGraphicsCapture.py
index 29b1ec2..0388c5f 100644
--- a/client/site_tests/graphics_WindowManagerGraphicsCapture/graphics_WindowManagerGraphicsCapture.py
+++ b/client/site_tests/graphics_WindowManagerGraphicsCapture/graphics_WindowManagerGraphicsCapture.py
@@ -19,32 +19,39 @@
         self.job.install_pkg(dep, 'dep', dep_dir)
 
         screenshot1_reference = os.path.join(self.bindir,
-                                            "screenshot1_reference")
+                                            "screenshot1_reference.png")
         screenshot1_generated = os.path.join(self.resultsdir,
-                                            "screenshot1_generated")
+                                            "screenshot1_generated.png")
         screenshot1_resized = os.path.join(self.resultsdir,
-                                            "screenshot1_generated_resized")
+                                            "screenshot1_generated_resized.png")
         screenshot2_reference = os.path.join(self.bindir,
-                                            "screenshot2_reference")
+                                            "screenshot2_reference.png")
         screenshot2_generated = os.path.join(self.resultsdir,
-                                            "screenshot2_generated")
+                                            "screenshot2_generated.png")
         screenshot2_resized = os.path.join(self.resultsdir,
-                                            "screenshot2_generated_resized")
+                                            "screenshot2_generated_resized.png")
 
         exefile = os.path.join(self.autodir, 'deps/glbench/windowmanagertest')
-        # Enable running in window manager
+        # Enable running in window manager.
         exefile = ('chvt 1 && DISPLAY=:0 XAUTHORITY=/home/chronos/.Xauthority ' 
                    + exefile)
 
-        # Delay before screenshot: 1 second has caused failures 
+        # Delay before screenshot: 1 second has caused failures.
         options = ' --screenshot1_sec 2'
         options += ' --screenshot2_sec 1'
         options += ' --cooldown_sec 1'
-        options += ' --screenshot1_cmd "DISPLAY=:0 xwd -root | convert - %s"' % screenshot1_generated
-        options += ' --screenshot2_cmd "DISPLAY=:0 xwd -root | convert - %s"' % screenshot2_generated
+        # perceptualdiff can handle only 8 bit images.
+        options += ' --screenshot1_cmd "DISPLAY=:0 import -channel RGB'
+        options += ' -colorspace RGB -depth 8 -window root'
+        options += ' %s"' % screenshot1_generated
+        options += ' --screenshot2_cmd "DISPLAY=:0 import -channel RGB'
+        options += ' -colorspace RGB -depth 8 -window root'
+        options += ' %s"' % screenshot2_generated
 
         utils.system(exefile + " " + options)
 
+        # convert -resize -depth 8 does not work. But resize honors previously
+        # chosen bit depth.
         utils.system("convert -resize '100x100!' %s %s" %
                      (screenshot1_generated, screenshot1_resized))
         utils.system("convert -resize '100x100!' %s %s" %
diff --git a/client/site_tests/graphics_WindowManagerGraphicsCapture/screenshot1_reference b/client/site_tests/graphics_WindowManagerGraphicsCapture/screenshot1_reference.png
similarity index 100%
rename from client/site_tests/graphics_WindowManagerGraphicsCapture/screenshot1_reference
rename to client/site_tests/graphics_WindowManagerGraphicsCapture/screenshot1_reference.png
Binary files differ
diff --git a/client/site_tests/graphics_WindowManagerGraphicsCapture/screenshot2_reference b/client/site_tests/graphics_WindowManagerGraphicsCapture/screenshot2_reference.png
similarity index 100%
rename from client/site_tests/graphics_WindowManagerGraphicsCapture/screenshot2_reference
rename to client/site_tests/graphics_WindowManagerGraphicsCapture/screenshot2_reference.png
Binary files differ