< prev index next >
test/jdk/java/util/prefs/CheckUserPrefsStorage.java
Print this page
*** 1,7 ****
/*
! * Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
--- 1,7 ----
/*
! * Copyright (c) 2012, 2018, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*** 19,41 ****
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
import java.util.prefs.Preferences;
! /**
! *
! * @author khazra
! * First class called by CheckUserPrefsStorage.sh to create and
! * store a user preference
! */
! public class CheckUserPrefFirst {
! public static void main(String[] args) throws Exception {
! Preferences prefs = Preferences.userNodeForPackage(CheckUserPrefFirst.class);
! prefs.put("Check", "Success");
prefs.flush();
}
- }
--- 19,72 ----
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
+ /*
+ * @test
+ * @bug 7198073 7197662
+ * @summary Tests that user preferences are stored in the permanent storage
+ * @library /test/lib
+ * @run main/othervm -Djava.util.prefs.userRoot=. CheckUserPrefsStorage
+ */
+
import java.util.prefs.Preferences;
! import jdk.test.lib.process.ProcessTools;
!
! public class CheckUserPrefsStorage {
! private static final Class PREF_NODE = CheckUserPrefsStorage.class;
! private static final String KEY = "Check";
! private static final String VALUE = "Success";
! private static final Preferences prefs = Preferences.userNodeForPackage(PREF_NODE);
! public static void main(String[] args) throws Throwable {
! if (args.length == 0) {
! createPref(KEY, VALUE);
! ProcessTools.executeTestJvm("-Djava.util.prefs.userRoot=.",
! PREF_NODE.getName(),
! KEY,
! VALUE)
! .outputTo(System.out)
! .errorTo(System.out)
! .shouldHaveExitValue(0);
! } else {
! checkPref(args[0], args[1]);
! }
! }
!
! public static void createPref(String key, String value) throws Exception {
! prefs.put(key, value);
prefs.flush();
}
+ public static void checkPref(String key, String value) throws Exception {
+ String result = prefs.get(key, null);
+ if ((result == null) || !(result.equals(value))) {
+ throw new RuntimeException("User pref not stored!");
+ }
+ prefs.remove(key);
+ prefs.flush();
+ }
+
+ }
< prev index next >