test/java/util/prefs/Preferences/XMLPreferencesTest.java
branchxml-sax-and-dom-2
changeset 1264 601d21ee9aa6
parent 1263 24b6c30fbf71
     1.1 --- a/test/java/util/prefs/Preferences/XMLPreferencesTest.java	Wed Jun 24 17:29:29 2009 +0200
     1.2 +++ b/test/java/util/prefs/Preferences/XMLPreferencesTest.java	Wed Jun 24 17:50:25 2009 +0200
     1.3 @@ -28,6 +28,7 @@
     1.4  import sun.util.xml.PrefsXmlSupport;
     1.5  
     1.6  import java.io.ByteArrayOutputStream;
     1.7 +import java.util.Arrays;
     1.8  import java.util.prefs.Preferences;
     1.9  
    1.10  /** Checks whether reading and writing via standard DOM and simplified API
    1.11 @@ -74,24 +75,54 @@
    1.12      }
    1.13  
    1.14      public void testCompareInput() throws Exception {
    1.15 -        /*
    1.16 -        String text = "";
    1.17 +        Preferences.userRoot().node("test1/b/c").removeNode();
    1.18 +        Preferences.userRoot().node("test2/b/c").removeNode();
    1.19  
    1.20 -        Properties p1 = new Properties();
    1.21 +        String text = "<?xml version='1.0' encoding='UTF-8' standalone='no'?>" +
    1.22 +                "<!DOCTYPE preferences SYSTEM 'http://java.sun.com/dtd/preferences.dtd'>" +
    1.23 +                "            <preferences EXTERNAL_XML_VERSION='1.0'>" +
    1.24 +                "    <root type='user'>\n\n\n" +
    1.25 +                "<map/><node name='test1'><map/><node name='b'>" +
    1.26 +                "<map/><node name='c'><map>" +
    1.27 +                "    <entry key='ahoj' value='simple'/>" +
    1.28 +                "    <entry key='kuk' value='1'/>" +
    1.29 +                "    <entry key='multi' value='true'/>        \n" +
    1.30 +                "</map>" +
    1.31 +                "<node name='child'>" +
    1.32 +                "<map>" +
    1.33 +                "<entry key='data' value='false'/>" +
    1.34 +                "</map>" +
    1.35 +                "</node><node name='empty'><map/>" +
    1.36 +                "</node>" +
    1.37 +                "</node>" +
    1.38 +                "</node>" +
    1.39 +                "</node>" +
    1.40 +                "</root>" +
    1.41 +                "</preferences>";
    1.42 +
    1.43          {
    1.44              ByteArrayInputStream is = new ByteArrayInputStream(text.getBytes("UTF-8"));
    1.45 -            FULL.load(p1, is);
    1.46 +            FULL.importPreferences(is);
    1.47          }
    1.48  
    1.49 -        Properties p2 = new Properties();
    1.50          {
    1.51 +            text = text.replace("'test1'", "'test2'");
    1.52              ByteArrayInputStream is = new ByteArrayInputStream(text.getBytes("UTF-8"));
    1.53 -            SIMPLE.load(p2, is);
    1.54 +            SIMPLE.importPreferences(is);
    1.55          }
    1.56  
    1.57 -        assert p1.equals(p2) : "P1: " + p1 + "\nP2: " + p2;
    1.58 +        assert Preferences.userRoot().nodeExists("test1/b/c") : "Node in user imported";
    1.59 +        assert Preferences.userRoot().nodeExists("test2/b/c") : "Node in system imported";
    1.60 +
    1.61 +        Preferences u = Preferences.userRoot().node("test1/b/c");
    1.62 +        Preferences s = Preferences.userRoot().node("test2/b/c");
    1.63 +
    1.64 +        assert Arrays.equals(u.keys(), s.keys()) : "Same keys in both nodes";
    1.65 +
    1.66 +        for (String k : u.keys()) {
    1.67 +            assert u.get(k, "Neco").equals(s.get(k, "Cone")) : "Same values for " + k;
    1.68 +        }
    1.69          System.err.println("OK: testCompareInput");
    1.70 -         */
    1.71      }
    1.72  
    1.73  }
    1.74 \ No newline at end of file