Merge branch '0.8'
[swfdec.git] / test / custom / mouse-movie-below.stas
blob182a7e59e3cbe1b508702211b84aebe319bac01c
1 /* Swfdec
2  * Copyright (C) 2008 Benjamin Otte <otte@gnome.org>
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2.1 of the License, or (at your option) any later version.
8  * 
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12  * Lesser General Public License for more details.
13  * 
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library; if not, write to the Free Software
16  * Foundation, Inc., 51 Franklin Street, Fifth Floor, 
17  * Boston, MA  02110-1301  USA
18  */
20 run_test = function (t, file) {
21   var e;
22   print ("Testing " + file);
23   try {
24     t.reset (file);
25     t.advance (300);
26     t.mouse_move (50, 50);
27     t.advance (300);
28     t.mouse_press (50, 50);
29     t.advance (300);
30     t.mouse_move (140, 140);
31     t.advance (300);
32     t.mouse_move (50, 50);
33     t.advance (300);
34     t.mouse_release (50, 50);
35     t.advance (300);
36     t.mouse_press (50, 50);
37     t.advance (300);
38     t.mouse_move (140, 140);
39     t.advance (300);
40     t.mouse_release (140, 140);
41     t.advance (300);
42     var expected = Buffer.load (file + ".trace");
43     var diff = t.trace.diff (expected);
44     if (diff) {
45       error ("different trace output");
46       Native.print (diff);
47       return false;
48     }
49   } catch (e) {
50     if (e) {
51       error (e);
52       return false;
53     }
54   };
55   Native.print ("  OK\n");
56   return true;
59 filenames.sort ();
60 t = new Test ();
61 fail = [];
62 for (var i = 0; i < filenames.length; i++) {
63   if (!run_test (t, filenames[i]))
64     fail.push (filenames[i]);
66 if (fail.length > 0) {
67   error (fail.join ("\n       "));
68   throw (fail.length + " failures");