blob: 58eeb1d5d6ac5332d793ebb3cd25cb840898d910 [file] [log] [blame]
senorblanco@chromium.org782f3b42012-10-29 18:06:26 +00001#!/usr/bin/python
2
3'''
4Copyright 2012 Google Inc.
5
6Use of this source code is governed by a BSD-style license that can be
7found in the LICENSE file.
8'''
9
10'''
11Rebaselines a single GM test, on all bots and all configurations.
12Must be run from an SVN checkout of the gm-expected directory.
13'''
14
15import os, subprocess, sys, tempfile
16
17pairs = [
18 ['base-shuttle-win7-intel-float',
19 'Skia_Shuttle_Win7_Intel_Float_Release_32'],
senorblanco@chromium.org5682f212012-10-30 14:34:55 +000020 ['base-shuttle-win7-intel-angle',
21 'Skia_Shuttle_Win7_Intel_Float_ANGLE_Release_32'],
22 ['base-shuttle-win7-intel-directwrite',
23 'Skia_Shuttle_Win7_Intel_Float_DirectWrite_Release_32'],
senorblanco@chromium.org782f3b42012-10-29 18:06:26 +000024 ['base-shuttle_ubuntu12_ati5770',
25 'Skia_Shuttle_Ubuntu12_ATI5770_Float_Release_64'],
26 ['base-macmini',
27 'Skia_Mac_Float_Release_32'],
28 ['base-macmini-lion-float',
29 'Skia_MacMiniLion_Float_Release_32'],
30 ['base-android-galaxy-nexus',
31 'Skia_GalaxyNexus_4-1_Float_Release_32'],
32 ['base-android-nexus-7',
33 'Skia_Nexus7_4-1_Float_Release_32'],
34 ['base-android-nexus-s',
35 'Skia_NexusS_4-1_Float_Release_32'],
36 ['base-android-xoom',
37 'Skia_Xoom_4-1_Float_Release_32'],
38]
39
40if len(sys.argv) != 2:
41 print 'Usage: ' + os.path.basename(sys.argv[0]) + ' <testname>'
42 exit(1)
43
44testname = sys.argv[1]
senorblanco@chromium.org782f3b42012-10-29 18:06:26 +000045
46for pair in pairs:
senorblanco@chromium.org5682f212012-10-30 14:34:55 +000047 if (pair[0] == 'base-shuttle-win7-intel-angle'):
48 testtypes = [ 'angle' ]
49 else:
50 testtypes = [ '4444', '565', '8888', 'gpu', 'pdf' ]
senorblanco@chromium.org782f3b42012-10-29 18:06:26 +000051 print pair[0] + ':'
52 for testtype in testtypes:
53 infilename = testname + '_' + testtype + '.png'
54 print infilename
55
56 url = 'http://skia-autogen.googlecode.com/svn/gm-actual/' + pair[0] + '/' + pair[1] + '/' + pair[0] + '/' + infilename
57 cmd = [ 'curl', '--fail', '--silent', url ]
58 temp = tempfile.NamedTemporaryFile()
59 ret = subprocess.call(cmd, stdout=temp)
60 if ret != 0:
61 print 'Couldn\'t fetch ' + url
62 continue
63 outfilename = os.path.join(pair[0], infilename);
64 cmd = [ 'cp', temp.name, outfilename ]
65 subprocess.call(cmd);
66 cmd = [ 'svn', 'add', '--quiet', outfilename ]
67 subprocess.call(cmd)
senorblanco@chromium.org5682f212012-10-30 14:34:55 +000068 cmd = [ 'svn', 'propset', '--quiet', 'svn:mime-type', 'image/png', outfilename ];
69 subprocess.call(cmd)