/hg/icedtea-web: Reproducer for PR1166

smohammad at icedtea.classpath.org smohammad at icedtea.classpath.org
Tue Nov 13 07:51:19 PST 2012


changeset 755aa6b30bb7 in /hg/icedtea-web
details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=755aa6b30bb7
author: Saad Mohammad <smohammad at redhat.com>
date: Tue Nov 13 10:50:01 2012 -0500

	Reproducer for PR1166


diffstat:

 ChangeLog                                                                                        |  16 +
 tests/reproducers/simple/EmbeddedJnlpInApplet/resources/EmbeddedJnlp.jnlp                        |  61 ++++++
 tests/reproducers/simple/EmbeddedJnlpInApplet/resources/EmbeddedJnlpInAppletNoCodebase.html      |  97 ++++++++++
 tests/reproducers/simple/EmbeddedJnlpInApplet/resources/EmbeddedJnlpInAppletWithDotCodebase.html |  97 ++++++++++
 tests/reproducers/simple/EmbeddedJnlpInApplet/resources/JnlpInApplet.html                        |  45 ++++
 tests/reproducers/simple/EmbeddedJnlpInApplet/srcs/EmbeddedJnlp.java                             |  47 ++++
 tests/reproducers/simple/EmbeddedJnlpInApplet/testcases/EmbeddedJnlpInAppletTest.java            |  71 +++++++
 7 files changed, 434 insertions(+), 0 deletions(-)

diffs (465 lines):

diff -r f934de8acee5 -r 755aa6b30bb7 ChangeLog
--- a/ChangeLog	Thu Nov 08 12:58:49 2012 -0500
+++ b/ChangeLog	Tue Nov 13 10:50:01 2012 -0500
@@ -1,3 +1,19 @@
+2012-11-13  Saad Mohammad  <smohammad at redhat.com>
+
+	Added reproducer for PR1166.
+	* tests/reproducers/simple/EmbeddedJnlpInApplet/resources/EmbeddedJnlp.jnlp:
+	Launching jnlp file that is used by jnlp_href in applet tag
+	* tests/reproducers/simple/EmbeddedJnlpInApplet/resources/EmbeddedJnlpInAppletNoCodebase.html:
+	Applet with an embedded jnlp file with no codebase specified
+	* tests/reproducers/simple/EmbeddedJnlpInApplet/resources/EmbeddedJnlpInAppletWithDotCodebase.html:
+	Applet with an embedded jnlp file with codebase set as a 'dot'
+	* tests/reproducers/simple/EmbeddedJnlpInApplet/resources/JnlpInApplet.html:
+	Applet with jnlp_href file.
+	* tests/reproducers/simple/EmbeddedJnlpInApplet/srcs/EmbeddedJnlp.java:
+	Simple class that outputs strings.
+	* tests/reproducers/simple/EmbeddedJnlpInApplet/testcases/EmbeddedJnlpInAppletTest.java:
+	Testcase that tests embedded jnlps in html pages.
+
 2012-11-08  Saad Mohammad  <smohammad at redhat.com>
 
 	* NEWS: Added entry for PR1027 - DownloadService is not supported by
diff -r f934de8acee5 -r 755aa6b30bb7 tests/reproducers/simple/EmbeddedJnlpInApplet/resources/EmbeddedJnlp.jnlp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/reproducers/simple/EmbeddedJnlpInApplet/resources/EmbeddedJnlp.jnlp	Tue Nov 13 10:50:01 2012 -0500
@@ -0,0 +1,61 @@
+<!--
+
+This file is part of IcedTea.
+
+IcedTea is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+IcedTea is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with IcedTea; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version.
+
+ -->
+<?xml version="1.0" encoding="utf-8"?>
+<jnlp spec="1.0" href="EmbeddedJnlp.jnlp">
+    <information>
+        <title>SignedAppletTest</title>
+        <vendor>IcedTea</vendor>
+        <homepage href="http://icedtea.classpath.org/wiki/IcedTea-Web#Testing_IcedTea-Web "/>
+        <description>SignedAppletTest</description>
+        <offline/>
+    </information>
+    <resources>
+        <j2se version="1.4+"/>
+        <jar href="EmbeddedJnlpInApplet.jar"/>
+    </resources>
+    <applet-desc
+      documentBase="."
+      name="EmbeddedJnlp"
+      main-class="EmbeddedJnlp"
+      width="100"
+      height="100">
+    </applet-desc>
+</jnlp>
+
+
+</applet-desc>
diff -r f934de8acee5 -r 755aa6b30bb7 tests/reproducers/simple/EmbeddedJnlpInApplet/resources/EmbeddedJnlpInAppletNoCodebase.html
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/reproducers/simple/EmbeddedJnlpInApplet/resources/EmbeddedJnlpInAppletNoCodebase.html	Tue Nov 13 10:50:01 2012 -0500
@@ -0,0 +1,97 @@
+<!--
+
+This file is part of IcedTea.
+
+IcedTea is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+IcedTea is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with IcedTea; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version.
+
+************************************************************************
+The embedded file is an exact copy of EmbeddedJnlp.jnlp except there is
+no codebase attribute within jnlp tag.
+
+This can be decoded using the base64 command.
+************************************************************************
+ -->
+<html><head></head><body bgcolor="red">
+<p>
+
+
+    <applet code="EmbeddedJnlp.class" width="800" height="600">
+        <param name="jnlp_href" value="EmbeddedJnlpWithNoCodebase.jnlp">
+        <param name="jnlp_embedded"
+               value="PCEtLQ0KDQpUaGlzIGZpbGUgaXMgcGFydCBvZiBJY2VkVGVhLg0KDQpJY2VkVGVhIGlzIGZyZWUg
+c29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkNCml0IHVuZGVy
+IHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVk
+IGJ5DQp0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyLCBvciAo
+YXQgeW91ciBvcHRpb24pDQphbnkgbGF0ZXIgdmVyc2lvbi4NCg0KSWNlZFRlYSBpcyBkaXN0cmli
+dXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLCBidXQNCldJVEhPVVQgQU5Z
+IFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YNCk1FUkNIQU5U
+QUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05V
+DQpHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuDQoNCllvdSBzaG91bGQg
+aGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlDQph
+bG9uZyB3aXRoIEljZWRUZWE7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLiAgSWYgbm90LCB3cml0ZSB0
+byB0aGUNCkZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0
+LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQQ0KMDIxMTAtMTMwMSBVU0EuDQoNCkxpbmtpbmcgdGhp
+cyBsaWJyYXJ5IHN0YXRpY2FsbHkgb3IgZHluYW1pY2FsbHkgd2l0aCBvdGhlciBtb2R1bGVzIGlz
+DQptYWtpbmcgYSBjb21iaW5lZCB3b3JrIGJhc2VkIG9uIHRoaXMgbGlicmFyeS4gIFRodXMsIHRo
+ZSB0ZXJtcyBhbmQNCmNvbmRpdGlvbnMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNl
+IGNvdmVyIHRoZSB3aG9sZQ0KY29tYmluYXRpb24uDQoNCkFzIGEgc3BlY2lhbCBleGNlcHRpb24s
+IHRoZSBjb3B5cmlnaHQgaG9sZGVycyBvZiB0aGlzIGxpYnJhcnkgZ2l2ZSB5b3UNCnBlcm1pc3Np
+b24gdG8gbGluayB0aGlzIGxpYnJhcnkgd2l0aCBpbmRlcGVuZGVudCBtb2R1bGVzIHRvIHByb2R1
+Y2UgYW4NCmV4ZWN1dGFibGUsIHJlZ2FyZGxlc3Mgb2YgdGhlIGxpY2Vuc2UgdGVybXMgb2YgdGhl
+c2UgaW5kZXBlbmRlbnQNCm1vZHVsZXMsIGFuZCB0byBjb3B5IGFuZCBkaXN0cmlidXRlIHRoZSBy
+ZXN1bHRpbmcgZXhlY3V0YWJsZSB1bmRlcg0KdGVybXMgb2YgeW91ciBjaG9pY2UsIHByb3ZpZGVk
+IHRoYXQgeW91IGFsc28gbWVldCwgZm9yIGVhY2ggbGlua2VkDQppbmRlcGVuZGVudCBtb2R1bGUs
+IHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB0aGUgbGljZW5zZSBvZiB0aGF0DQptb2R1bGUu
+ICBBbiBpbmRlcGVuZGVudCBtb2R1bGUgaXMgYSBtb2R1bGUgd2hpY2ggaXMgbm90IGRlcml2ZWQg
+ZnJvbQ0Kb3IgYmFzZWQgb24gdGhpcyBsaWJyYXJ5LiAgSWYgeW91IG1vZGlmeSB0aGlzIGxpYnJh
+cnksIHlvdSBtYXkgZXh0ZW5kDQp0aGlzIGV4Y2VwdGlvbiB0byB5b3VyIHZlcnNpb24gb2YgdGhl
+IGxpYnJhcnksIGJ1dCB5b3UgYXJlIG5vdA0Kb2JsaWdhdGVkIHRvIGRvIHNvLiAgSWYgeW91IGRv
+IG5vdCB3aXNoIHRvIGRvIHNvLCBkZWxldGUgdGhpcw0KZXhjZXB0aW9uIHN0YXRlbWVudCBmcm9t
+IHlvdXIgdmVyc2lvbi4NCg0KIC0tPg0KPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRm
+LTgiPz4NCjxqbmxwIHNwZWM9IjEuMCIgaHJlZj0iRW1iZWRkZWRKbmxwV2l0aE5vQ29kZWJhc2Uu
+am5scCI+DQogICAgPGluZm9ybWF0aW9uPg0KICAgICAgICA8dGl0bGU+U2lnbmVkQXBwbGV0VGVz
+dDwvdGl0bGU+DQogICAgICAgIDx2ZW5kb3I+SWNlZFRlYTwvdmVuZG9yPg0KICAgICAgICA8aG9t
+ZXBhZ2UgaHJlZj0iaHR0cDovL2ljZWR0ZWEuY2xhc3NwYXRoLm9yZy93aWtpL0ljZWRUZWEtV2Vi
+I1Rlc3RpbmdfSWNlZFRlYS1XZWIgIi8+DQogICAgICAgIDxkZXNjcmlwdGlvbj5TaWduZWRBcHBs
+ZXRUZXN0PC9kZXNjcmlwdGlvbj4NCiAgICAgICAgPG9mZmxpbmUvPg0KICAgIDwvaW5mb3JtYXRp
+b24+DQogICAgPHJlc291cmNlcz4NCiAgICAgICAgPGoyc2UgdmVyc2lvbj0iMS40KyIvPg0KICAg
+ICAgICA8amFyIGhyZWY9IkVtYmVkZGVkSm5scEluQXBwbGV0LmphciIvPg0KICAgIDwvcmVzb3Vy
+Y2VzPg0KICAgIDxhcHBsZXQtZGVzYw0KICAgICAgZG9jdW1lbnRCYXNlPSIuIg0KICAgICAgbmFt
+ZT0iRW1iZWRkZWRKbmxwIg0KICAgICAgbWFpbi1jbGFzcz0iRW1iZWRkZWRKbmxwIg0KICAgICAg
+d2lkdGg9IjEwMCINCiAgICAgIGhlaWdodD0iMTAwIj4NCiAgICA8L2FwcGxldC1kZXNjPg0KPC9q
+bmxwPg0KDQoNCjwvYXBwbGV0LWRlc2M+">
+    </applet>
+
+</p>
+</body>
+</html>
diff -r f934de8acee5 -r 755aa6b30bb7 tests/reproducers/simple/EmbeddedJnlpInApplet/resources/EmbeddedJnlpInAppletWithDotCodebase.html
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/reproducers/simple/EmbeddedJnlpInApplet/resources/EmbeddedJnlpInAppletWithDotCodebase.html	Tue Nov 13 10:50:01 2012 -0500
@@ -0,0 +1,97 @@
+<!--
+
+This file is part of IcedTea.
+
+IcedTea is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+IcedTea is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with IcedTea; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version.
+
+
+************************************************************************
+The embedded file is an exact copy of EmbeddedJnlp.jnlp.
+
+This can be decoded using the base64 command.
+************************************************************************
+ -->
+<html><head></head><body bgcolor="red">
+<p>
+
+
+    <applet code="EmbeddedJnlp.class" width="800" height="600">
+        <param name="jnlp_href" value="EmbeddedJnlpWithDotCodebase.jnlp">
+        <param name="jnlp_embedded"
+               value="PCEtLQ0KDQpUaGlzIGZpbGUgaXMgcGFydCBvZiBJY2VkVGVhLg0KDQpJY2VkVGVhIGlzIGZyZWUg
+c29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkNCml0IHVuZGVy
+IHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVk
+IGJ5DQp0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyLCBvciAo
+YXQgeW91ciBvcHRpb24pDQphbnkgbGF0ZXIgdmVyc2lvbi4NCg0KSWNlZFRlYSBpcyBkaXN0cmli
+dXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLCBidXQNCldJVEhPVVQgQU5Z
+IFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YNCk1FUkNIQU5U
+QUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05V
+DQpHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuDQoNCllvdSBzaG91bGQg
+aGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlDQph
+bG9uZyB3aXRoIEljZWRUZWE7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLiAgSWYgbm90LCB3cml0ZSB0
+byB0aGUNCkZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0
+LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQQ0KMDIxMTAtMTMwMSBVU0EuDQoNCkxpbmtpbmcgdGhp
+cyBsaWJyYXJ5IHN0YXRpY2FsbHkgb3IgZHluYW1pY2FsbHkgd2l0aCBvdGhlciBtb2R1bGVzIGlz
+DQptYWtpbmcgYSBjb21iaW5lZCB3b3JrIGJhc2VkIG9uIHRoaXMgbGlicmFyeS4gIFRodXMsIHRo
+ZSB0ZXJtcyBhbmQNCmNvbmRpdGlvbnMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNl
+IGNvdmVyIHRoZSB3aG9sZQ0KY29tYmluYXRpb24uDQoNCkFzIGEgc3BlY2lhbCBleGNlcHRpb24s
+IHRoZSBjb3B5cmlnaHQgaG9sZGVycyBvZiB0aGlzIGxpYnJhcnkgZ2l2ZSB5b3UNCnBlcm1pc3Np
+b24gdG8gbGluayB0aGlzIGxpYnJhcnkgd2l0aCBpbmRlcGVuZGVudCBtb2R1bGVzIHRvIHByb2R1
+Y2UgYW4NCmV4ZWN1dGFibGUsIHJlZ2FyZGxlc3Mgb2YgdGhlIGxpY2Vuc2UgdGVybXMgb2YgdGhl
+c2UgaW5kZXBlbmRlbnQNCm1vZHVsZXMsIGFuZCB0byBjb3B5IGFuZCBkaXN0cmlidXRlIHRoZSBy
+ZXN1bHRpbmcgZXhlY3V0YWJsZSB1bmRlcg0KdGVybXMgb2YgeW91ciBjaG9pY2UsIHByb3ZpZGVk
+IHRoYXQgeW91IGFsc28gbWVldCwgZm9yIGVhY2ggbGlua2VkDQppbmRlcGVuZGVudCBtb2R1bGUs
+IHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB0aGUgbGljZW5zZSBvZiB0aGF0DQptb2R1bGUu
+ICBBbiBpbmRlcGVuZGVudCBtb2R1bGUgaXMgYSBtb2R1bGUgd2hpY2ggaXMgbm90IGRlcml2ZWQg
+ZnJvbQ0Kb3IgYmFzZWQgb24gdGhpcyBsaWJyYXJ5LiAgSWYgeW91IG1vZGlmeSB0aGlzIGxpYnJh
+cnksIHlvdSBtYXkgZXh0ZW5kDQp0aGlzIGV4Y2VwdGlvbiB0byB5b3VyIHZlcnNpb24gb2YgdGhl
+IGxpYnJhcnksIGJ1dCB5b3UgYXJlIG5vdA0Kb2JsaWdhdGVkIHRvIGRvIHNvLiAgSWYgeW91IGRv
+IG5vdCB3aXNoIHRvIGRvIHNvLCBkZWxldGUgdGhpcw0KZXhjZXB0aW9uIHN0YXRlbWVudCBmcm9t
+IHlvdXIgdmVyc2lvbi4NCg0KIC0tPg0KPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRm
+LTgiPz4NCjxqbmxwIHNwZWM9IjEuMCIgaHJlZj0iRW1iZWRkZWRKbmxwV2l0aERvdENvZGViYXNl
+LmpubHAiIGNvZGViYXNlPSIuIj4NCiAgICA8aW5mb3JtYXRpb24+DQogICAgICAgIDx0aXRsZT5T
+aWduZWRBcHBsZXRUZXN0PC90aXRsZT4NCiAgICAgICAgPHZlbmRvcj5JY2VkVGVhPC92ZW5kb3I+
+DQogICAgICAgIDxob21lcGFnZSBocmVmPSJodHRwOi8vaWNlZHRlYS5jbGFzc3BhdGgub3JnL3dp
+a2kvSWNlZFRlYS1XZWIjVGVzdGluZ19JY2VkVGVhLVdlYiAiLz4NCiAgICAgICAgPGRlc2NyaXB0
+aW9uPlNpZ25lZEFwcGxldFRlc3Q8L2Rlc2NyaXB0aW9uPg0KICAgICAgICA8b2ZmbGluZS8+DQog
+ICAgPC9pbmZvcm1hdGlvbj4NCiAgICA8cmVzb3VyY2VzPg0KICAgICAgICA8ajJzZSB2ZXJzaW9u
+PSIxLjQrIi8+DQogICAgICAgIDxqYXIgaHJlZj0iRW1iZWRkZWRKbmxwSW5BcHBsZXQuamFyIi8+
+DQogICAgPC9yZXNvdXJjZXM+DQogICAgPGFwcGxldC1kZXNjDQogICAgICBkb2N1bWVudEJhc2U9
+Ii4iDQogICAgICBuYW1lPSJFbWJlZGRlZEpubHAiDQogICAgICBtYWluLWNsYXNzPSJFbWJlZGRl
+ZEpubHAiDQogICAgICB3aWR0aD0iMTAwIg0KICAgICAgaGVpZ2h0PSIxMDAiPg0KICAgIDwvYXBw
+bGV0LWRlc2M+DQo8L2pubHA+DQoNCg0KPC9hcHBsZXQtZGVzYz4=">
+    </applet>
+
+</p>
+</body>
+</html>
diff -r f934de8acee5 -r 755aa6b30bb7 tests/reproducers/simple/EmbeddedJnlpInApplet/resources/JnlpInApplet.html
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/reproducers/simple/EmbeddedJnlpInApplet/resources/JnlpInApplet.html	Tue Nov 13 10:50:01 2012 -0500
@@ -0,0 +1,45 @@
+<!--
+
+This file is part of IcedTea.
+
+IcedTea is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+IcedTea is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with IcedTea; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version.
+
+ -->
+<html><head></head><body bgcolor="red">
+<p>
+    <applet code="EmbeddedJnlp.class" width="800" height="600">
+        <param name="jnlp_href" value="EmbeddedJnlp.jnlp">
+    </applet>
+</p>
+</body>
+</html>
diff -r f934de8acee5 -r 755aa6b30bb7 tests/reproducers/simple/EmbeddedJnlpInApplet/srcs/EmbeddedJnlp.java
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/reproducers/simple/EmbeddedJnlpInApplet/srcs/EmbeddedJnlp.java	Tue Nov 13 10:50:01 2012 -0500
@@ -0,0 +1,47 @@
+/* EmbeddedJnlp.java
+Copyright (C) 2012 Red Hat, Inc.
+
+This file is part of IcedTea.
+
+IcedTea is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License as published by
+the Free Software Foundation, version 2.
+
+IcedTea is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with IcedTea; see the file COPYING.  If not, write to
+the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version.
+ */
+
+import java.applet.Applet;
+
+ at SuppressWarnings("serial")
+public class EmbeddedJnlp extends Applet {
+
+    @Override
+    public void start() {
+        System.out.println("*** APPLET FINISHED ***");
+    }
+}
diff -r f934de8acee5 -r 755aa6b30bb7 tests/reproducers/simple/EmbeddedJnlpInApplet/testcases/EmbeddedJnlpInAppletTest.java
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/reproducers/simple/EmbeddedJnlpInApplet/testcases/EmbeddedJnlpInAppletTest.java	Tue Nov 13 10:50:01 2012 -0500
@@ -0,0 +1,71 @@
+/* EmbeddedJnlpInAppletTest.java
+Copyright (C) 2012 Red Hat, Inc.
+
+This file is part of IcedTea.
+
+IcedTea is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License as published by
+the Free Software Foundation, version 2.
+
+IcedTea is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with IcedTea; see the file COPYING.  If not, write to
+the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library.  Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module.  An independent module is a module which is not derived from
+or based on this library.  If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so.  If you do not wish to do so, delete this
+exception statement from your version.
+ */
+
+import junit.framework.Assert;
+import net.sourceforge.jnlp.ProcessResult;
+import net.sourceforge.jnlp.ServerAccess.AutoClose;
+import net.sourceforge.jnlp.browsertesting.BrowserTest;
+import net.sourceforge.jnlp.browsertesting.Browsers;
+import net.sourceforge.jnlp.closinglisteners.AutoOkClosingListener;
+import net.sourceforge.jnlp.annotations.TestInBrowsers;
+import org.junit.Test;
+
+public class EmbeddedJnlpInAppletTest extends BrowserTest {
+
+    final static String s = AutoOkClosingListener.MAGICAL_OK_CLOSING_STRING;
+
+    @Test
+    @TestInBrowsers(testIn = { Browsers.one })
+    public void JnlpInApplet() throws Exception {
+        ProcessResult pr = server.executeBrowser("/JnlpInApplet.html", AutoClose.CLOSE_ON_CORRECT_END);
+        Assert.assertTrue("Stdout should contain " + s + " but did not", pr.stdout.contains(s));
+    }
+
+    @Test
+    @TestInBrowsers(testIn = { Browsers.one })
+    public void EmbeddedJnlpInAppletWithADotAsCodebase() throws Exception {
+        ProcessResult pr = server.executeBrowser("/EmbeddedJnlpInAppletWithDotCodebase.html", AutoClose.CLOSE_ON_CORRECT_END);
+        Assert.assertTrue("Stdout should contain " + s + " but did not", pr.stdout.contains(s));
+    }
+
+    @Test
+    @TestInBrowsers(testIn = { Browsers.one })
+    public void EmbeddedJnlpInAppletWithNoCodebase() throws Exception {
+        ProcessResult pr = server.executeBrowser("/EmbeddedJnlpInAppletNoCodebase.html", AutoClose.CLOSE_ON_CORRECT_END);
+        Assert.assertTrue("Stdout should contain " + s + " but did not", pr.stdout.contains(s));
+    }
+}



More information about the distro-pkg-dev mailing list