gnash-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnash-commit] /srv/bzr/gnash/trunk r10447: Add --enable-http-testsuite


From: Sandro Santilli
Subject: [Gnash-commit] /srv/bzr/gnash/trunk r10447: Add --enable-http-testsuite directive to configure.
Date: Tue, 16 Dec 2008 20:44:02 +0100
User-agent: Bazaar (1.5)

------------------------------------------------------------
revno: 10447
committer: Sandro Santilli <address@hidden>
branch nick: trunk
timestamp: Tue 2008-12-16 20:44:02 +0100
message:
  Add --enable-http-testsuite directive to configure.
  When enabled, make check will also run a remoting test against a service
  on gnashdev.org. You can specify another uri for offline testing.
  Updated remoting.README with more info about how.
modified:
  Makefile.am
  configure.ac
  testsuite/misc-ming.all/Makefile.am
  testsuite/misc-ming.all/remoting.README
  testsuite/misc-ming.all/remoting.as
=== modified file 'Makefile.am'
--- a/Makefile.am       2008-11-22 16:06:06 +0000
+++ b/Makefile.am       2008-12-16 19:44:02 +0000
@@ -261,6 +261,9 @@
 if ENABLE_SWFDEC_TESTSUITE
        @echo " SWFDEC_TESTSUITE $(SWFDEC_TESTSUITE)"
 endif
+if ENABLE_HTTP_TESTSUITE
+       @echo " HTTP_TESTSUITE $(HTTP_TESTSUITE)"
+endif
        @echo "Graphics support..."     
 if BUILD_CAIRO_RENDERER
        @echo " CAIRO_CFLAGS is $(CAIRO_CFLAGS)"

=== modified file 'configure.ac'
--- a/configure.ac      2008-11-18 09:29:12 +0000
+++ b/configure.ac      2008-12-16 19:44:02 +0000
@@ -1534,6 +1534,20 @@
 fi
 AM_CONDITIONAL(ENABLE_SWFDEC_TESTSUITE, [ test x"$SWFDEC_TESTSUITE" != x ])
 
+if test x$cross_compiling = xno; then
+  AC_ARG_ENABLE([http_testsuite],
+      dnl # TODO: find out how to add [quotes] around '=<baseurl>'
+         AC_HELP_STRING([--enable-http-testsuite=<baseurl>],
+                 [Enable http based testsuite (default url is 
http://www.gnashdev.org/testcases)]),
+             [case "${enableval}" in
+             no) HTTP_TESTSUITE="" ;;
+            yes) HTTP_TESTSUITE="http://www.gnashdev.org/testcases"; ;;
+              *) HTTP_TESTSUITE="${enableval}";;
+           esac])
+  AC_SUBST(HTTP_TESTSUITE)
+fi
+AM_CONDITIONAL(ENABLE_HTTP_TESTSUITE, [ test x"$HTTP_TESTSUITE" != x ])
+
 dnl
 dnl See if we can use the swfmill, mtasc, swfc and haxe based testsuites 
 dnl
@@ -2870,6 +2884,11 @@
     echo "                 or .deb users: apt-get install swftools" >&4
   fi
 
+  if test x"$HTTP_TESTSUITE" != x; then
+    echo "        HTTP testsuite dir is $HTTP_TESTSUITE"
+  fi
+
+
   if test x"$PYTHON" != x; then
     echo "        PYTHON is $PYTHON"
   else

=== modified file 'testsuite/misc-ming.all/Makefile.am'
--- a/testsuite/misc-ming.all/Makefile.am       2008-12-14 21:30:08 +0000
+++ b/testsuite/misc-ming.all/Makefile.am       2008-12-16 19:44:02 +0000
@@ -34,6 +34,7 @@
        PrototypeEventListeners.as \
        DragDropTest.as \
        remoting.as \
+       remoting_end.as \
        remoting.php \
        gotoFrame2Test.as \
        DrawingApiTest.as \
@@ -152,7 +153,7 @@
        action_execution_order_test11 \
        reverse_execute_PlaceObject2_test1 \
        reverse_execute_PlaceObject2_test2 \
-    loadImageTest \
+       loadImageTest \
        loadMovieTest \
        loadMovieTestRunner \
        eventSoundTest1 \
@@ -307,6 +308,12 @@
        SharedObjectTestRunner
 endif
 
+if MAKESWF_SUPPORTS_PREBUILT_CLIPS
+if ENABLE_HTTP_TESTSUITE
+check_SCRIPTS += remotingTestRunner
+endif
+endif
+
 if MING_VERSION_0_4
 check_SCRIPTS += \
        opcode_guard_testrunner \
@@ -1720,7 +1727,12 @@
        $(NULL)
 
 remoting.swf: $(srcdir)/remoting.as Dejagnu.swf Makefile 
../actionscript.all/check.as ../actionscript.all/utils.as
-       $(MAKESWF) -n network -r12 -o $@ -v6 -DUSE_DEJAGNU_MODULE 
-DOUTPUT_VERSION=6 Dejagnu.swf $(srcdir)/remoting.as
+       $(MAKESWF) -n network -r12 -o $@ -v6 
-DHTTP_TESTSUITE='\"$(HTTP_TESTSUITE)\"' -DUSE_DEJAGNU_MODULE 
-DOUTPUT_VERSION=6 Dejagnu.swf $(srcdir)/remoting.as 
$(srcdir)/../actionscript.all/dejagnu_so_fini.as
+
+remotingTestRunner: $(srcdir)/../generic-testrunner.sh remoting.swf
+       sh $< $(top_builddir) remoting.swf > $@
+       chmod 755 $@
+       
 
 DragDropTest.swf: $(srcdir)/DragDropTest.as Dejagnu.swf DragDropTestLoaded.swf 
Makefile ../actionscript.all/check.as ../actionscript.all/utils.as
        $(MAKESWF) -r12 -o $@ -v6 -DUSE_DEJAGNU_MODULE -DOUTPUT_VERSION=6 
Dejagnu.swf $(srcdir)/DragDropTest.as
@@ -1980,6 +1992,12 @@
        gotoFrame2Test-Runner 
 endif
 
+if MAKESWF_SUPPORTS_PREBUILT_CLIPS
+if ENABLE_HTTP_TESTSUITE
+TEST_CASES += remotingTestRunner
+endif
+endif
+
 if MING_SUPPORTS_INIT_ACTIONS
 TEST_CASES += \
        registerClassTest2runner \

=== modified file 'testsuite/misc-ming.all/remoting.README'
--- a/testsuite/misc-ming.all/remoting.README   2008-12-14 21:30:08 +0000
+++ b/testsuite/misc-ming.all/remoting.README   2008-12-16 19:44:02 +0000
@@ -1,5 +1,51 @@
-Test for remoting trought NetConnection and http.
-To use the test:
-       - make remoting.swf
-       - put remoting.swf and remoting.php to your webroot
-       - <flashplayer> <url_to_remoting.swf>
+Test for remoting trough NetConnection and http.
+
+SERVER
+------
+
+The server part of the test is a PHP file.
+There's one copy available at
+http://www.gnashdev.org/testcases/remoting.php
+
+If you want to test offline you can copy remoting.php
+somewhere in your web server directories and specify 
+the base url at configure time, for example:
+
+ $ ./configure --enable-http-testsuite=http://localhost/gnashtests/
+ $ cp remoting.php /var/www/gnashtests/
+
+Note that in order for the php file to work you might need to 
+add the following line to your .htaccess file:
+
+  php_flag always_populate_raw_post_data on in place
+
+Also, if you run the client (remote.swf) from a different domain
+then the one the server is on, you'll need a crossdomain.xml file
+on the web root of the server.
+
+The most open version of a crossdomain.xml only contains this line:
+
+ <cross-domain-policy> <allow-access-from domain="*" /> </cross-domain-policy>
+
+CLIENT
+------
+
+The client part is an SWF, compiled by Ming from remoting.as.
+The SWF will embed the url to the remoting.php file.
+This is for convenience to allow testing it with the proprietary
+player to verify it expects the correct behaviour.
+
+The embedded url is set at configure time (--enable-http-testsuite)
+but can be overridden by a query string, for example:
+
+    $ gnash -v remoting.swf?url=remoting.php # relative url
+
+The generated remoting.swf is set to have "network" sandbox so
+you'll be able to run it from the filesystem and have it access
+network resources (as long as crossdomain.xml file is in place).
+
+Note that the proprietary player doesn't let you specify a query
+string for a filesystem-loaded file, so use --enable-http-testsuite
+to specify the embedded (default) url.
+
+

=== modified file 'testsuite/misc-ming.all/remoting.as'
--- a/testsuite/misc-ming.all/remoting.as       2008-12-16 16:43:12 +0000
+++ b/testsuite/misc-ming.all/remoting.as       2008-12-16 19:44:02 +0000
@@ -25,13 +25,14 @@
 {
        //note("END OF TEST");
        check_totals(89);
+       play();
 };
 
 
 if ( ! _root.hasOwnProperty('url') ) {
     // updated daily from bzr !
     // TODO: let ./configure specify another one
-    url='http://www.gnashdev.org/testcases/remoting.php';
+    url=HTTP_TESTSUITE+'/remoting.php';
 }
 
 stop();


reply via email to

[Prev in Thread] Current Thread [Next in Thread]