ATTENTION: policytool now contains no platform-specific codes anymore and should behaves exactly the same across all platforms. This also means:

1. You may only need to test it on one platform
2. You can create policy files for a platform which is different than the platform you are running policytool on

This is a multi-stage test. Click on "done" when you have completed reading these instructions.
First, policytool will be invoked.

1. Add new policy entry
2. Add permission:

           Type                   Target name     Actions
           FilePermission         c:\\foo\\bar    read

   1. Press OK
   2. Confirm the file name warning dialog appears
   3. Choose Retain, confirm the permission edit dialog is closed
   4. Double click the newly craeted FilePermission entry to edit it
   5. Press OK
   6. Confirm the file name warning dialog appears
   7. Choose Edit, confirm the permission edit dialog is still opened
   8. change Target name to c:\foo\bar
   9. Press OK, no warning dialog is shown
3. Add permission:

           Type                   Target name
           DelegationPermission   "me@SOMEWHERE" "you@SOMEWHERE"

   1. Press OK
   2. Double click the newly craeted DelegationPermission entry to edit it
   3. Confirm the target name is still "me@SOMEWHERE" "you@SOMEWHERE"
   4. Press OK
4. Confirm there are 2 entries in the permission list
5. Press Done
6. Double click the new policy entry to edit it
7. Add permission:

           Type
           AllPermission

8. Add a new Principal, say, KerberosPrincipal with Principal Name as aaa
9. Confirm there is 1 entry in the Pricipals list
10. Confirm there are 3 entries in the permission list
11. Press cancel
12. Double click the policy entry to edit it
13. Confirm there is ZERO entry in the Pricipals list
14. Confirm there are 2 entries in the permission list
15. Press cancel
16. Save as /tmp/p
17. Confirm that the file /tmp/p looks like

        /* AUTOMATICALLY GENERATED ON Tue Jul 19 16:27:30 CST 2005*/
        /* DO NOT EDIT */

        grant {
          permission java.io.FilePermission "c:\\foo\\bar", "read";
          permission javax.security.auth.kerberos.DelegationPermission "\"me@SOMEWHERE\" \"you@SOMEWHERE\"";
        };

Press "Pass" if ... press "Fail" otherwise.