changeset 7378:e9c5ad10fa4b

8015274: TEST_BUG: Step2: After selecting 'View Warning Log', it is empty instead of FileNotFound. 8015276: TEST_BUG: The 'ptool.test' can't be saved in the 'tmp' folder. 8016158: Instruction is not clear on how to use keytool to create JKS store in case Reviewed-by: mullan
author weijun
date Thu, 13 Jun 2013 10:00:00 +0800
parents 021fdd093cd9
children 3c7bab68cd2f
files test/sun/security/tools/policytool/Alias.sh test/sun/security/tools/policytool/ChangeUI.html test/sun/security/tools/policytool/ChangeUI.sh test/sun/security/tools/policytool/OpenPolicy.sh test/sun/security/tools/policytool/SaveAs.sh test/sun/security/tools/policytool/UpdatePermissions.html test/sun/security/tools/policytool/UpdatePermissions.sh test/sun/security/tools/policytool/UsePolicy.sh test/sun/security/tools/policytool/i18n.html test/sun/security/tools/policytool/i18n.sh
diffstat 10 files changed, 105 insertions(+), 50 deletions(-) [+]
line wrap: on
line diff
--- a/test/sun/security/tools/policytool/Alias.sh	Thu Jun 13 09:59:29 2013 +0800
+++ b/test/sun/security/tools/policytool/Alias.sh	Thu Jun 13 10:00:00 2013 +0800
@@ -52,6 +52,11 @@
     PS=":"
     FS="/"
     ;;
+  CYGWIN* )
+    NULL=/dev/null
+    PS=";"
+    FS="/"
+    ;;
   Windows* )
     NULL=NUL
     PS=";"
--- a/test/sun/security/tools/policytool/ChangeUI.html	Thu Jun 13 09:59:29 2013 +0800
+++ b/test/sun/security/tools/policytool/ChangeUI.html	Thu Jun 13 10:00:00 2013 +0800
@@ -17,7 +17,8 @@
 
 First, policytool will be invoked.<br><br>
 <ol start="0">
-<li>If testing on Windows, create a temporary directory. (Example: C:\foo\tmp)
+<li>Find (or create) a temporary directory that you have write access to.
+(Example: 'C:\foo\tmp' on Windows or '/tmp' on other systems)
 <li>Add new policy entry
 <li>Add permission:
     <pre>
@@ -63,9 +64,9 @@
 <li>Confirm there are 2 entries in the permission list
 <li>Press cancel
 <li>Save as "/tmp/p"<br>
-If testing on Windows, save in the temporary directory created in Step 0.
-(Example: Save as "C:\foo\tmp\p.policy")
-<li>Confirm that the file /tmp/p (or C:\foo\tmp\p.policy) looks like
+(Or use the temporary directory mentioned in Step 0 if it's not '/tmp'.
+         For example, "C:\foo\tmp\p" on Windows)
+<li>Confirm that the file created in the previous step looks like
 <pre>
 /* AUTOMATICALLY GENERATED ON Tue Jul 19 16:27:30 CST 2005*/
 /* DO NOT EDIT */
--- a/test/sun/security/tools/policytool/ChangeUI.sh	Thu Jun 13 09:59:29 2013 +0800
+++ b/test/sun/security/tools/policytool/ChangeUI.sh	Thu Jun 13 10:00:00 2013 +0800
@@ -22,7 +22,7 @@
 #
 
 # @test
-# @bug  6296772 6293981 6290216
+# @bug  6296772 6293981 6290216 8015276
 # @summary FilePermission and DelegationPermission, and cancel button
 #
 # @run applet/manual=done ChangeUI.html
@@ -51,6 +51,11 @@
     PS=":"
     FS="/"
     ;;
+  CYGWIN* )
+    NULL=/dev/null
+    PS=";"
+    FS="/"
+    ;;
   Windows* )
     NULL=NUL
     PS=";"
--- a/test/sun/security/tools/policytool/OpenPolicy.sh	Thu Jun 13 09:59:29 2013 +0800
+++ b/test/sun/security/tools/policytool/OpenPolicy.sh	Thu Jun 13 10:00:00 2013 +0800
@@ -51,6 +51,11 @@
     PS=":"
     FS="/"
     ;;
+  CYGWIN* )
+    NULL=/dev/null
+    PS=";"
+    FS="/"
+    ;;
   Windows* )
     NULL=NUL
     PS=";"
--- a/test/sun/security/tools/policytool/SaveAs.sh	Thu Jun 13 09:59:29 2013 +0800
+++ b/test/sun/security/tools/policytool/SaveAs.sh	Thu Jun 13 10:00:00 2013 +0800
@@ -52,6 +52,11 @@
     PS=":"
     FS="/"
     ;;
+  CYGWIN* )
+    NULL=/dev/null
+    PS=";"
+    FS="/"
+    ;;
   Windows* )
     NULL=NUL
     PS=";"
--- a/test/sun/security/tools/policytool/UpdatePermissions.html	Thu Jun 13 09:59:29 2013 +0800
+++ b/test/sun/security/tools/policytool/UpdatePermissions.html	Thu Jun 13 10:00:00 2013 +0800
@@ -10,8 +10,8 @@
 First, policytool will be invoked.<br><br>
 
 Then, follow these steps:<br>
-0) If testing on Windows, create a temporary directory.
-(Example: C:\foo\tmp)<br><br>
+0) Find (or create) a temporary directory that you have write access to.
+(Example: 'C:\foo\tmp' on Windows or '/tmp' on other systems)<br><br>
 1) Click on the "Add Policy Entry" button in the
 main policytool window.<br><br>
 
@@ -32,13 +32,10 @@
 
 8) In the SaveAs window, enter "/tmp/ptool.test" as the file name
 and click "OK".<br>
-If testing on Windows, use the temporary directory created in Step 0.
-(Example: Save as "C:\foo\tmp\ptool.test")<br><br>
+(Or use the temporary directory mentioned in Step 0 if it's not '/tmp'.
+For example, "C:\foo\tmp\ptool.test" on Windows)<br><br>
 
-9) cat /tmp/ptool.test<br>
-If testing on Windows, check the contents of the file created in the previous
-step.<br><br>
-
+9) Check the content of the file created in the previous step<br><br>
 
 10) check to make sure that the new entry is in the policy file.<br><br>
 
@@ -53,8 +50,8 @@
 
 In the confirmation dialog pop-up, click "OK".<br><br>
 
-Exit policytool. If testing on Windows, delete the temporary directory and its
-contents created during this test.<br><br>
+Exit policytool. Delete the files created during this test. If the
+temporary directory is also newly created, empty and delete it.<br><br>
 
 Press "Pass" if ... press "Fail" otherwise.<br><br>
 
--- a/test/sun/security/tools/policytool/UpdatePermissions.sh	Thu Jun 13 09:59:29 2013 +0800
+++ b/test/sun/security/tools/policytool/UpdatePermissions.sh	Thu Jun 13 10:00:00 2013 +0800
@@ -23,6 +23,7 @@
 
 # @test
 # @bug 4218206
+# @bug 8015276
 # @summary missing or invalid permission target names in policy tool
 #
 # @run applet/manual=done UpdatePermissions.html
@@ -51,6 +52,11 @@
     PS=":"
     FS="/"
     ;;
+  CYGWIN* )
+    NULL=/dev/null
+    PS=";"
+    FS="/"
+    ;;
   Windows* )
     NULL=NUL
     PS=";"
--- a/test/sun/security/tools/policytool/UsePolicy.sh	Thu Jun 13 09:59:29 2013 +0800
+++ b/test/sun/security/tools/policytool/UsePolicy.sh	Thu Jun 13 10:00:00 2013 +0800
@@ -51,6 +51,11 @@
     PS=":"
     FS="/"
     ;;
+  CYGWIN* )
+    NULL=/dev/null
+    PS=";"
+    FS="/"
+    ;;
   Windows* )
     NULL=NUL
     PS=";"
--- a/test/sun/security/tools/policytool/i18n.html	Thu Jun 13 09:59:29 2013 +0800
+++ b/test/sun/security/tools/policytool/i18n.html	Thu Jun 13 10:00:00 2013 +0800
@@ -15,10 +15,15 @@
 is incomprehensible, then the test failed.  Otherwise,
 the test passed.
 <p>
+<b>Preparation</b>: Find (or create) a temporary directory that you have write
+access to (Example: 'C:\tmp' on Windows or '/tmp' on other systems) and copy
+the files "ks", "good", "bad" from the scratch sub-directory of this test's
+working directory (the -w argument of jtreg) into the temporary directory.
+If 'policy1' or 'policy2' already exists in this directory, remove it.
+<p>
 Press "Pass" if ... press "Fail" otherwise.
 <p>
-<ol start="0">
-<li> If testing on Windows, create a temporary directory. (Example: C:\foo\tmp)
+<ol>
 <li> Pull down the 'File' and 'KeyStore' menus and check values
 <li> Pull down 'File' menu and select 'View Warning Log'.  Confirm FileNotFound.
 <li> Pull down 'File' menu and select 'New'.
@@ -46,65 +51,65 @@
 <li> Select "play" from Target menu.
 <li> Click OK, confirm changed permission.
 <li> Type "hello" for 'CodeBase', click on 'Done', and check error message
+<li> Clean up the 'CodeBase' textbox
 <li> Type "hello" for 'SignedBy', click on 'Done', and check warning message
-<li> Click, on 'Edit Policy Entry' and 'Remove Policy Entry'
+<li> Click on 'Edit Policy Entry' and 'Remove Policy Entry'
 	and check error messages
-<li> Select policy entry, click on 'Edit Policy Entry', and check pop-up window
+<li> Select policy entry, click on 'Edit Policy Entry', check pop-up window and close it
 <li> Select policy entry, click on 'Remove Policy Entry',
 	and check pop-up window
 <li> Do not remove the entry, click 'Cancel'.
 <li> Pull down 'File' menu and select 'Exit'.  Confirm Save option.
 	Click 'Cancel'.
-<li> Select 'File' menu value 'Save' and enter "/tmp/policy1" as the filename.<br>
-     If testing on Windows, use the temporary directory created in Step 0.
-        (Example: Save as "C:\foo\tmp\policy1")<br>
-     Check status message.
+<li> Select 'File' menu value 'Save' and save into file "policy1" in the
+    temporary directory. Check status message.<br>
 <li> Select 'File' menu value 'New'
 <li> Click 'Add Policy Entry', type in "hello" for 'SignedBy' field,
 	click 'Done'.  Confirm warning.
 <li> Select 'File' menu value 'Open' and confirm save option
-	(do not save changes)
-<li> Type "/tmp/policy1" (if Windows, "C:\foo\tmp\policy1") for the filename
-        and confirm warning message<br>
+	(Click 'Cancel', do not save changes)
 <li> Pull down 'File' menu, select 'View Warning Log'
 	and confirm KeyStore alias warning
 <li> Pull down 'KeyStore' menu and select 'Edit'
-<li> Enter 'foo' as KeyStore URL and check error
-<li> Using keytool create JKS keystore
-<li> Enter KeyStore URL but leave other fields empty.  Should succeed.
+<li> Enter 'foo' as KeyStore URL, click 'OK', and check error
+<li> Enter KeyStore URL "file:/tmp/ks" (Or use the temporary directory mentioned
+    in the preparation if it's not '/tmp'. For example, "file:/C:/tmp/ks" on Windows)
+    but leave other fields empty. Click 'OK'. Should succeed.
 <li> Pull down 'KeyStore' menu and select 'Edit'
-<li> Confirm URL and Type values.
-<li> Enter 'foo' as the provider and check error message.
-<li> Enter 'SUN' as the provider.  Should succeed.
+<li> Confirm URL and Type values. The Type should be "jks"
+<li> Enter 'foo' as the provider, click 'OK' and check error message.
+<li> Enter 'SUN' as the provider, click 'OK'.  Should succeed.
 <li> Pull down 'KeyStore' menu and select 'Edit'
 <li> Confirm URL, Type, and Provider values.
-<li> Enter 'foo' as the password URL and check error message.
-<li> Enter URL with bad password and check error message.
-<li> Enter URL with good password.  Should succeed.
+<li> Enter 'foo' as the password URL, click 'OK' and check error message.
+<li> Enter URL "file:/tmp/bad" (Or use the temporary directory mentioned in
+    the preparation if it's not '/tmp'. For example, "file:/C:/tmp/bad" on Windows),
+    click 'OK' and check error message.
+<li> Enter URL "file:/tmp/good" (Or use the temporary directory mentioned in
+    the preparation if it's not '/tmp'. For example, "file:/C:/tmp/good" on Windows)
+    and click 'OK'.  Should succeed.
 <li> Pull down 'KeyStore' menu and select 'Edit'
 <li> Confirm URL, Type, Provider, and Password URL values.
 <li> Click OK
-<li> Pull down 'File' menu and select 'Save As'.  Enter "/tmp/policy2"
-        (if Windows, "C:\foo\tmp\policy2").
-	Confirm status message.<br>
+<li> Pull down 'File' menu and select 'Save As' and save into file "policy2"
+    in the temporary directory. Confirm status message.<br>
 <li> Pull down 'File' menu and select 'New'.
-<li> Pull down 'File' menu and select 'Open'.  Enter "/tmp/policy2"
-        (if Windows, "C:\foo\tmp\policy2").
-	Confirm warning message.<br>
+<li> Pull down 'File' menu and select 'Open' and open "policy2" in the
+    temporary directory.<br>
 <li> Click on 'Add Policy Entry', enter Codebase 'http://foo',
 	SignedBy 'bar'.  Click on 'Done' and confirm alias warning.
 <li> Double-Click on just created policy entry, confirm edit window appears.
-<li> Change SignedBy to an alias in previously created keystore.
+<li> Change SignedBy to an 'hello'.
 <li> Click on Done and confirm it worked with no warning.
 <li> Double-Click on "SignedBy hello" policy entry and
 	confirm edit window appears.
 <li> Click on Edit/Remove Principal, confirm errors.
 <li> Click on 'Add Principal' and check new window.
 <li> Click on 'OK' and confirm error message (no principal name)
-<li> Enter valid KeyStore alias as principal name, click OK and
+<li> Enter 'hello' as principal name, click OK and
 	confirm status message.
 <li> Confirm new principal in Principals list.
-<li> Click on 'Done' (creating policy entry), confirm alias warning.
+<li> Click on 'Done' (creating policy entry).
 <li> View warning log and confirm X500Principal/KeyStore alias message.
 <li> Confirm principal added to policy entry in main window listing.
 <li> Double click on that entry.
@@ -116,14 +121,14 @@
 	Confirm name cleared.  Type 'foo' as name.  Click OK.  Confirm error.
 	type 'cn=foo' as name.  Click OK.  should succeed.
 <li> Confirm changed principal in list.
-<li> Click on 'Add Permission', and add any FilePermission.
-<li> Click on 'Done' in Policy Entry window.  Confirm alias warning.
+<li> Click on 'Add Permission', and add a FilePermission, choose a target and
+    an action. Click OK.
+<li> Click on 'Done' in Policy Entry window.
 <li> Confirm entries in main window listing.
 <li> Select 'File' menu value 'Exit'
 <li> Save Changes, confirm status message.
-<li> If testing on Windows, delete the temporary directory and its contents
-        created during this test.
-</ol>
+<li> Delete all files created during this test. If the temporary directory
+ is also newly created, empty and delete it.</ol>
 <p>
 
 </body>
--- a/test/sun/security/tools/policytool/i18n.sh	Thu Jun 13 09:59:29 2013 +0800
+++ b/test/sun/security/tools/policytool/i18n.sh	Thu Jun 13 10:00:00 2013 +0800
@@ -23,10 +23,13 @@
 
 # @test
 # @bug 4348370
+# @bug 8015274
+# @bug 8015276
+# @bug 8016158
 # @summary policytool not i18n compliant
 #
 # @run applet/manual=done i18n.html
-# @run shell i18n.sh
+# @run shell/timeout=1200 i18n.sh
 # @run applet/manual=yesno i18n.html
 
 # set a few environment variables so that the shell-script can run stand-alone
@@ -51,6 +54,11 @@
     PS=":"
     FS="/"
     ;;
+  CYGWIN* )
+    NULL=/dev/null
+    PS=";"
+    FS="/"
+    ;;
   Windows* )
     NULL=NUL
     PS=";"
@@ -66,6 +74,19 @@
 
 echo "HELLO!"
 
+echo "Checking for $HOME/.java.policy"
+
+# 8015274
+if [ -e $HOME/.java.policy ]; then
+    echo "You have a .java.policy file in your HOME directory"
+    echo "The file must be removed before running this test"
+    exit 1
+fi
+
+${TESTJAVA}${FS}bin${FS}keytool -genkeypair -alias hello -dname CN=Hello \
+        -storepass changeit -keypass changeit -keystore ks
+echo changeit > good
+echo badpass > bad
 ${TESTJAVA}${FS}bin${FS}policytool
 
 exit $?