harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Artem Aliev (JIRA)" <j...@apache.org>
Subject [jira] Created: (HARMONY-2420) [luni] java.util.prefs.AbstractPreferences.exportNode(OutputStream) and java.util.prefs.AbstractPreferences.exportSubtree(OutputStream) throws AssertionError instead of NPE in a case when OutputStream is null
Date Mon, 04 Dec 2006 12:55:23 GMT
[luni]  java.util.prefs.AbstractPreferences.exportNode(OutputStream) and java.util.prefs.AbstractPreferences.exportSubtree(OutputStream)
throws AssertionError instead of NPE in a  case when OutputStream is null
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

                 Key: HARMONY-2420
                 URL: http://issues.apache.org/jira/browse/HARMONY-2420
             Project: Harmony
          Issue Type: Bug
          Components: Classlib
            Reporter: Artem Aliev
            Priority: Minor


exportNode(OutputStream) and exportSubtree(OutputStream) throws
AssertionError not NullPointerException in a case when OutputStream is null.

Test to reproduce:
import junit.framework.TestCase;

import java.io.IOException;
import java.util.prefs.*;

class AbstractPreferencesImpl extends AbstractPreferences{

        protected AbstractPreferencesImpl(AbstractPreferences arg0, String
arg1) {
                super(arg0, arg1);
        }

        protected AbstractPreferences childSpi(String arg0) {
                return null;
        }

        protected String[] childrenNamesSpi() throws BackingStoreException {
                return null;
        }

        protected void flushSpi() throws BackingStoreException {
        }

        protected String getSpi(String arg0) {
                return null;
        }

        protected String[] keysSpi() throws BackingStoreException {
                return null;
        }

        protected void putSpi(String arg0, String arg1) {
        }

        protected void removeNodeSpi() throws BackingStoreException {
        }

        protected void removeSpi(String arg0) {
        }

        protected void syncSpi() throws BackingStoreException {
        }
}

public class Test extends TestCase {

        public void testcase() {
                AbstractPreferences ap = new AbstractPreferencesImpl(null, "");
                boolean res1 = false, res2 = false;
                try {
                        ap.exportNode(null);
                } catch (IOException e) {
                        e.printStackTrace();
                } catch (BackingStoreException e) {
                        e.printStackTrace();
                }catch (NullPointerException e) {
                        e.printStackTrace();
                        System.out.println("Got Expected
NullPointerException");
                } catch (AssertionError ae) {
                        ae.printStackTrace();
                        res1 = true;
                        System.out.println("Got Unexpected AssertionError");
                } 
                try {
                        ap.exportSubtree(null);
                } catch (IOException e) {
                        e.printStackTrace();
                } catch (BackingStoreException e) {
                        e.printStackTrace();
                }catch (NullPointerException e) {
                        e.printStackTrace();
                        System.out.println("Got Expected
NullPointerException");
                } catch (AssertionError ae) {
                        ae.printStackTrace();
                        res2 = true;
                        System.out.println("Got Unexpected AssertionError");
                } 
                if (res1 || res2) {
                        fail();
                }
    }
}

Output on Harmony:
Apache Harmony Launcher : (c) Copyright 1991, 2006 The Apache Software
Foundation or its licensors, as applicable.
java version "1.5.0" 
pre-alpha : not complete or compatible
svn = rsvn: '.' is not a working copy, (Sep 20 2006), Windows/ia32/msvc 1310,
release build
http://incubator.apache.org/harmony

.java.lang.AssertionError: Stream is null
        at
java.util.prefs.AbstractPreferences.exportNode(AbstractPreferences.java:373)
        at Test.testcase(Test.java:50)
        at java.lang.reflect.VMReflection.invokeMethod(Native Method)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at junit.framework.TestCase.runTest(TestCase.java:154)
        at junit.framework.TestCase.runBare(TestCase.java:127)
        at junit.framework.TestResult$1.protect(TestResult.java:106)
        at junit.framework.TestResult.runProtected(TestResult.java:124)
        at junit.framework.TestResult.run(TestResult.java:109)
        at junit.framework.TestCase.run(TestCase.java:118)
        at junit.framework.TestSuite.runTest(TestSuite.java:208)
        at junit.framework.TestSuite.run(TestSuite.java:203)
        at junit.textui.TestRunner.doRun(TestRunner.java:115)
        at junit.textui.TestRunner.start(TestRunner.java:172)
        at junit.textui.TestRunner.main(TestRunner.java:138)
Got Unexpected AssertionError
java.lang.AssertionError: Stream is null
        at
java.util.prefs.AbstractPreferences.exportSubtree(AbstractPreferences.java:388)
        at Test.testcase(Test.java:64)
        at java.lang.reflect.VMReflection.invokeMethod(Native Method)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at junit.framework.TestCase.runTest(TestCase.java:154)
        at junit.framework.TestCase.runBare(TestCase.java:127)
        at junit.framework.TestResult$1.protect(TestResult.java:106)
        at junit.framework.TestResult.runProtected(TestResult.java:124)
        at junit.framework.TestResult.run(TestResult.java:109)
        at junit.framework.TestCase.run(TestCase.java:118)
        at junit.framework.TestSuite.runTest(TestSuite.java:208)
        at junit.framework.TestSuite.run(TestSuite.java:203)
        at junit.textui.TestRunner.doRun(TestRunner.java:115)
        at junit.textui.TestRunner.start(TestRunner.java:172)
        at junit.textui.TestRunner.main(TestRunner.java:138)
Got Unexpected AssertionError
F
Time: 0.125
There was 1 failure:
1) testcase(Test)junit.framework.AssertionFailedError
        at Test.testcase(Test.java:78)
        at java.lang.reflect.VMReflection.invokeMethod(Native Method)

FAILURES!!!
Tests run: 1,  Failures: 1,  Errors: 0

res = 1


Output on RI:
java version "1.5.0_06"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_06-b05)
Java HotSpot(TM) Client VM (build 1.5.0_06-b05, mixed mode)
.java.lang.NullPointerException
        at java.util.prefs.XmlSupport.putPreferencesInXml(XmlSupport.java:140)
        at java.util.prefs.XmlSupport.export(XmlSupport.java:104)
        at
java.util.prefs.AbstractPreferences.exportNode(AbstractPreferences.java:1575)
        at Test.testcase(Test.java:50)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at junit.framework.TestCase.runTest(TestCase.java:154)
        at junit.framework.TestCase.runBare(TestCase.java:127)
        at junit.framework.TestResult$1.protect(TestResult.java:106)
        at junit.framework.TestResult.runProtected(TestResult.java:124)
        at junit.framework.TestResult.run(TestResult.java:109)
        at junit.framework.TestCase.run(TestCase.java:118)
        at junit.framework.TestSuite.runTest(TestSuite.java:208)
        at junit.framework.TestSuite.run(TestSuite.java:203)
        at junit.textui.TestRunner.doRun(TestRunner.java:116)
        at junit.textui.TestRunner.start(TestRunner.java:172)
        at junit.textui.TestRunner.main(TestRunner.java:138)
Got Expected NullPointerException
java.lang.NullPointerException
        at java.util.prefs.XmlSupport.putPreferencesInXml(XmlSupport.java:140)
        at java.util.prefs.XmlSupport.export(XmlSupport.java:104)
        at
java.util.prefs.AbstractPreferences.exportSubtree(AbstractPreferences.java:1591)
        at Test.testcase(Test.java:64)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at junit.framework.TestCase.runTest(TestCase.java:154)
        at junit.framework.TestCase.runBare(TestCase.java:127)
        at junit.framework.TestResult$1.protect(TestResult.java:106)
        at junit.framework.TestResult.runProtected(TestResult.java:124)
        at junit.framework.TestResult.run(TestResult.java:109)
        at junit.framework.TestCase.run(TestCase.java:118)
        at junit.framework.TestSuite.runTest(TestSuite.java:208)
        at junit.framework.TestSuite.run(TestSuite.java:203)
        at junit.textui.TestRunner.doRun(TestRunner.java:116)
        at junit.textui.TestRunner.start(TestRunner.java:172)
        at junit.textui.TestRunner.main(TestRunner.java:138)
Got Expected NullPointerException

Time: 0.078

OK (1 test)

res = 0


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message