1 <html>
   2 <body>
   3 
   4 <applet width=100 height=100 code=i18n.class>
   5 </applet>
   6 
   7 This is a multi-stage test.  Click on "done" when you have completed
   8 reading these instructions.<br>
   9 <p>
  10 First, policytool will be invoked.  During the entire test,
  11 make sure that all the buttons, menu options, error messages,
  12 and output messages are comprehensible
  13 (you can read all the english text fine).
  14 If at any time an exception is thrown, or if any message
  15 is incomprehensible, then the test failed.  Otherwise,
  16 the test passed.
  17 <p>
  18 <b>Preparation</b>: Find (or create) a temporary directory that you have write
  19 access to (Example: 'C:\tmp' on Windows or '/tmp' on other systems) and copy
  20 the files "ks", "good", "bad" from the scratch sub-directory of this test's
  21 working directory (the -w argument of jtreg) into the temporary directory.
  22 If 'policy1' or 'policy2' already exists in this directory, remove it.
  23 <p>
  24 Press "Pass" if ... press "Fail" otherwise.
  25 <p>
  26 <ol>
  27 <li> Pull down the 'File' and 'KeyStore' menus and check values
  28 <li> Pull down 'File' menu and select 'View Warning Log'.  Confirm FileNotFound.
  29 <li> Pull down 'File' menu and select 'New'.
  30 <li> Pull down 'File' menu and select 'View Warning Log'.  Confirm empty.
  31 <li> Click on 'Add Policy Entry' and check pop-up window
  32 <li> Click on 'Edit Permission' and 'Remove Permission' and check error messages
  33 <li> Click on 'Add Permission' and check pop-up window
  34 <li> Pull down 'Permission' menu and check values
  35 <li> Select 'AWTPermission', pull down 'Target Name' and check values
  36 <li> Select 'FilePermission', pull down 'Target Name' and 'Actions' and check values.
  37 <li> Select 'NetPermission', pull down 'Target Name' and check values
  38 <li> Select 'PropertyPermission', pull down 'Actions' and check values
  39 <li> Select 'ReflectPermission', pull down 'Target Name' and check values
  40 <li> Select 'RuntimePermission', pull down 'Target Name' and check values
  41 <li> Select 'SecurityPermission', pull down 'Target Name' and check values
  42 <li> Select 'SerializablePermission', pull down 'Target Name' and check values
  43 <li> Select 'SocketPermission', pull down 'Actions' and check values
  44 <li> Type "www.example.com" for SocketPermission 'TargetName',
  45         and "connect" for 'Actions'
  46 <li> Click OK
  47 <li> Check new entry
  48 <li> Click once on new entry
  49 <li> Click on 'Edit Permission' and confirm values
  50 <li> Select AudioPermission.  Confirm 'Target Name' and 'Actions' cleared.
  51 <li> Select "play" from Target menu.
  52 <li> Click OK, confirm changed permission.
  53 <li> Type "hello" for 'CodeBase', click on 'Done', and check error message
  54 <li> Clean up the 'CodeBase' textbox
  55 <li> Type "hello" for 'SignedBy', click on 'Done', and check warning message
  56 <li> Click on 'Edit Policy Entry' and 'Remove Policy Entry'
  57         and check error messages
  58 <li> Select policy entry, click on 'Edit Policy Entry', check pop-up window and close it
  59 <li> Select policy entry, click on 'Remove Policy Entry',
  60         and check pop-up window
  61 <li> Do not remove the entry, click 'Cancel'.
  62 <li> Pull down 'File' menu and select 'Exit'.  Confirm Save option.
  63         Click 'Cancel'.
  64 <li> Select 'File' menu value 'Save' and save into file "policy1" in the
  65     temporary directory. Check status message.<br>
  66 <li> Select 'File' menu value 'New'
  67 <li> Click 'Add Policy Entry', type in "hello" for 'SignedBy' field,
  68         click 'Done'.  Confirm warning.
  69 <li> Select 'File' menu value 'Open' and confirm save option
  70         (Click 'Cancel', do not save changes)
  71 <li> Pull down 'File' menu, select 'View Warning Log'
  72         and confirm KeyStore alias warning
  73 <li> Pull down 'KeyStore' menu and select 'Edit'
  74 <li> Enter 'foo' as KeyStore URL, click 'OK', and check error
  75 <li> Enter KeyStore URL "file:/tmp/ks" (Or use the temporary directory mentioned
  76     in the preparation if it's not '/tmp'. For example, "file:/C:/tmp/ks" on Windows)
  77     but leave other fields empty. Click 'OK'. Should succeed.
  78 <li> Pull down 'KeyStore' menu and select 'Edit'
  79 <li> Confirm URL and Type values. The Type should be "jks"
  80 <li> Enter 'foo' as the provider, click 'OK' and check error message.
  81 <li> Enter 'SUN' as the provider, click 'OK'.  Should succeed.
  82 <li> Pull down 'KeyStore' menu and select 'Edit'
  83 <li> Confirm URL, Type, and Provider values.
  84 <li> Enter 'foo' as the password URL, click 'OK' and check error message.
  85 <li> Enter URL "file:/tmp/bad" (Or use the temporary directory mentioned in
  86     the preparation if it's not '/tmp'. For example, "file:/C:/tmp/bad" on Windows),
  87     click 'OK' and check error message.
  88 <li> Enter URL "file:/tmp/good" (Or use the temporary directory mentioned in
  89     the preparation if it's not '/tmp'. For example, "file:/C:/tmp/good" on Windows)
  90     and click 'OK'.  Should succeed.
  91 <li> Pull down 'KeyStore' menu and select 'Edit'
  92 <li> Confirm URL, Type, Provider, and Password URL values.
  93 <li> Click OK
  94 <li> Pull down 'File' menu and select 'Save As' and save into file "policy2"
  95     in the temporary directory. Confirm status message.<br>
  96 <li> Pull down 'File' menu and select 'New'.
  97 <li> Pull down 'File' menu and select 'Open' and open "policy2" in the
  98     temporary directory.<br>
  99 <li> Click on 'Add Policy Entry', enter Codebase 'http://foo',
 100         SignedBy 'bar'.  Click on 'Done' and confirm alias warning.
 101 <li> Double-Click on just created policy entry, confirm edit window appears.
 102 <li> Change SignedBy to an 'hello'.
 103 <li> Click on Done and confirm it worked with no warning.
 104 <li> Double-Click on "SignedBy hello" policy entry and
 105         confirm edit window appears.
 106 <li> Click on Edit/Remove Principal, confirm errors.
 107 <li> Click on 'Add Principal' and check new window.
 108 <li> Click on 'OK' and confirm error message (no principal name)
 109 <li> Enter 'hello' as principal name, click OK and
 110         confirm status message.
 111 <li> Confirm new principal in Principals list.
 112 <li> Click on 'Done' (creating policy entry).
 113 <li> View warning log and confirm X500Principal/KeyStore alias message.
 114 <li> Confirm principal added to policy entry in main window listing.
 115 <li> Double click on that entry.
 116 <li> Enter codebase "file:/foobar".
 117 <li> Click on 'Add Principal'.  Select KerberosPrincipal.  enter 'foo' as name.
 118         Click OK.
 119 <li> Confirm new principal in list.
 120 <li> Double-click on new principal.  Select X500Principal.
 121         Confirm name cleared.  Type 'foo' as name.  Click OK.  Confirm error.
 122         type 'cn=foo' as name.  Click OK.  should succeed.
 123 <li> Confirm changed principal in list.
 124 <li> Click on 'Add Permission', and add a FilePermission, choose a target and
 125     an action. Click OK.
 126 <li> Click on 'Done' in Policy Entry window.
 127 <li> Confirm entries in main window listing.
 128 <li> Select 'File' menu value 'Exit'
 129 <li> Save Changes, confirm status message.
 130 <li> Delete all files created during this test. If the temporary directory
 131  is also newly created, empty and delete it.</ol>
 132 <p>
 133 
 134 </body>
 135 </html>