You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@harmony.apache.org by Mikhail Loenko <ml...@gmail.com> on 2006/08/14 12:16:28 UTC

Re: [jira] Created: (HARMONY-1113) [classlib][beans]Harmony does not throw IllegalArgumentException for java.beans.PropertyEditorSupport.setAsText() while RI does.

Hi Ilya

Is it significant that the test code is in bootclasspath, or it can
work from classpath?

There were some discussions around the tests that might be interesting,
please look at [1].

Please look at the section
Utilize JUnit's assert/fail methods and exception handling for clean test code

This also might be useful [2]

Thanks,
Mikhail

[1] http://mail-archives.apache.org/mod_mbox/incubator-harmony-dev/200603.mbox/%3c442B7857.7040002@gmail.com%3e

[2] http://incubator.apache.org/harmony/subcomponents/classlibrary/agreements.html


2006/8/9, Ilya Okomin (JIRA) <ji...@apache.org>:
> [classlib][beans]Harmony does not throw IllegalArgumentException for java.beans.PropertyEditorSupport.setAsText() while RI does.
> --------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-1113
>                 URL: http://issues.apache.org/jira/browse/HARMONY-1113
>             Project: Harmony
>          Issue Type: Bug
>          Components: Classlib
>            Reporter: Ilya Okomin
>            Priority: Minor
>         Attachments: PropertyEditorSupport.patch, PropertyEditorSupportTest.patch
>
> Harmony does not throw IllegalArgumentException for java.beans.PropertyEditorSupport.setAsText(String) when parameter is invalid
> while RI throws IllegalArgumentException.
> Java 1.5.0 spec says:"May raise java.lang.IllegalArgumentException if either the String is badly formatted or if this kind of property can't be expressed as text."
> =============test.java==============
> import java.beans.PropertyEditorSupport;
>
> public class test {
>
>    public static void main(String args[]) {
>        PropertyEditorSupport undefPropertyEditorSupport = new
> PropertyEditorSupport();
>        try {
>            System.err.print("value is null: ");
>            undefPropertyEditorSupport.setAsText("string");
>            System.err.println("failed: IllegalArgumentException expected, but
> nothing was thrown!\n");
>        } catch (IllegalArgumentException eE) {
>            System.err.println("success!");
>            eE.printStackTrace();
>        }
>
>        PropertyEditorSupport defPropertyEditorSupport = new
> PropertyEditorSupport();
>        try {
>            defPropertyEditorSupport.setValue(new Object());
>
>            System.err.print("value is Object: ");
>            defPropertyEditorSupport.setAsText("string");
>            System.err.println("failed: IllegalArgumentException expected, but
> nothing was thrown!\n");
>        } catch (IllegalArgumentException eE) {
>            System.err.println("success!");
>            eE.printStackTrace();
>        }
>
>        defPropertyEditorSupport = new PropertyEditorSupport();
>        try {
>            defPropertyEditorSupport.setValue(new String());
>            System.err.print("value is String: ");
>            defPropertyEditorSupport.setAsText("string");
>            System.err.println("success!");
>        } catch (IllegalArgumentException eE) {
>            System.err.println("failed!");
>            eE.printStackTrace();
>        }
>
>    }
>
> }
> ===========================================
> Output:
>
> Harmony:
> java version "1.5.0"
> pre-alpha : not complete or compatible
> svn = r424571, (Jul 22 2006), Windows/ia32/msvc 1310, release build
> http://incubator.apache.org/harmony
>
> value is null: failed: IllegalArgumentException expected, but nothing was
> thrown!
>
> value is Object: failed: IllegalArgumentException expected, but nothing was
> thrown!
>
> value is String: success!
>
> RI:
> java version "1.5.0"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32, R25.0.0-75,
> GC: System optimized over throughput (initial strategy singleparpar))
>
> value is null: success!
> java.lang.IllegalArgumentException: string
>        at
> java.beans.PropertyEditorSupport.setAsText(PropertyEditorSupport.java:166)
>        at bugzilla.Test9433.main(Test9433.java:11)
> value is Object: success!
> java.lang.IllegalArgumentException: string
>        at
> java.beans.PropertyEditorSupport.setAsText(PropertyEditorSupport.java:166)
>        at bugzilla.Test9433.main(Test9433.java:23)
> value is String: success!
>
> For this reason, suggested solution is to check in setAsText() method if the
> value is instanse of String, in case of true - setValue, otherwise - throw an
> IAE following the spec, "...this kind of property can't be expressed as text".
>
> Suggested patch and regression test can be found in the attach
>
>
> --
> 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
>
>
>

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Re: [jira] Created: (HARMONY-1113) [classlib][beans]Harmony does not throw IllegalArgumentException for java.beans.PropertyEditorSupport.setAsText() while RI does.

Posted by Ilya Okomin <il...@gmail.com>.
Alexei,

Thanks for encouraging me!
It's a great pleasure for me to take part in Harmony! :)

Regards,
Ilya.


On 8/14/06, Alexei Zakharov <al...@gmail.com> wrote:
>
> Ilya,
>
> > Thus test_setAsTextNull is redundant but
> > other two test cases have to be added.
>
> This is exactly what I mean.
> BTW, If you have more patches (or free time) for java.beans you are
> highly welcome. I have already tired from working on this package
> alone. :)
>
> Regards,
>
> 2006/8/14, Ilya Okomin <il...@gmail.com>:
> > On 8/14/06, Alexei Zakharov <al...@gmail.com> wrote:
> > >
> > > Hi Ilya,
> > >
> > > FYI there is the existing class
> > > org.apache.harmony.beans.tests.java.beans.PropertyEditorSupportTest
> > > that contains all tests for PropertyEditorSupport. IMHO it would be
> > > better if you embed your tests into this class. BTW, you may also take
> > > a look at existent
> > > testSetAsText
> > > method since it seems it does the same job.
> >
> >
> > Thanks for suggested solution, I've already done it before read your
> message
> > :-)
> >
> > Hmmm..you right, existing one test testSetAsText is the same as
> > test_setAsTextNull.
> > Actually existing testSetAsText test doesn't cover the problem,
> according to
> > the documentation setAsText method behavior depends on the object state
> > (rather newValue field type), thus we have to take into account the type
> of
> > the newValue before setAsText call, if it is instanse of String or not.
> I've
> > created tests for these cases. Thus test_setAsTextNull is redundant but
> > other two test cases have to be added.
> >
> > Regards,
> > > Alexei
> > >
> > > P.S. thanks for the patch :)
> >
> >
> > Always welcome!
> >
> >  Thanks,
> > Ilya.
> >
> > 2006/8/14, Ilya Okomin <il...@gmail.com>:
> > > > Hello, Mikhail!
> > > >
> > > > Provided test case can work from classpath of course. It's my
> mistake,
> > > > thanks for noticed it. I'll prepare updated test case' patch with
> > > correct
> > > > packaging and taking into account exceptions handling recommendation
> > > ASAP.
> > > >
> > > > Thanks,
> > > > Ilya.
> > > >
> > > >
> > > > On 8/14/06, Mikhail Loenko <ml...@gmail.com> wrote:
> > > > >
> > > > > Hi Ilya
> > > > >
> > > > > Is it significant that the test code is in bootclasspath, or it
> can
> > > > > work from classpath?
> > > > >
> > > > > There were some discussions around the tests that might be
> > > interesting,
> > > > > please look at [1].
> > > > >
> > > > > Please look at the section
> > > > > Utilize JUnit's assert/fail methods and exception handling for
> clean
> > > test
> > > > > code
> > > > >
> > > > > This also might be useful [2]
> > > > >
> > > > > Thanks,
> > > > > Mikhail
> > > > >
> > > > > [1]
> > > > >
> > >
> http://mail-archives.apache.org/mod_mbox/incubator-harmony-dev/200603.mbox/%3c442B7857.7040002@gmail.com%3e
> > > > >
> > > > > [2]
> > > > >
> > >
> http://incubator.apache.org/harmony/subcomponents/classlibrary/agreements.html
> > > > >
> > > > >
> > > > > 2006/8/9, Ilya Okomin (JIRA) <ji...@apache.org>:
> > > > > > [classlib][beans]Harmony does not throw IllegalArgumentException
> for
> > > > > java.beans.PropertyEditorSupport.setAsText() while RI does.
> > > > > >
> > > > >
> > >
> --------------------------------------------------------------------------------------------------------------------------------
> > > > > >
> > > > > >                 Key: HARMONY-1113
> > > > > >                 URL:
> > > http://issues.apache.org/jira/browse/HARMONY-1113
> > > > > >             Project: Harmony
> > > > > >          Issue Type: Bug
> > > > > >          Components: Classlib
> > > > > >            Reporter: Ilya Okomin
> > > > > >            Priority: Minor
> > > > > >         Attachments: PropertyEditorSupport.patch,
> > > > > PropertyEditorSupportTest.patch
> > > > > >
> > > > > > Harmony does not throw IllegalArgumentException for
> > > > > java.beans.PropertyEditorSupport.setAsText(String) when parameter
> is
> > > > > invalid
> > > > > > while RI throws IllegalArgumentException.
> > > > > > Java 1.5.0 spec says:"May raise
> java.lang.IllegalArgumentExceptionif
> > > > > either the String is badly formatted or if this kind of property
> can't
> > > be
> > > > > expressed as text."
> > > > > > =============test.java==============
> > > > > > import java.beans.PropertyEditorSupport;
> > > > > >
> > > > > > public class test {
> > > > > >
> > > > > >    public static void main(String args[]) {
> > > > > >        PropertyEditorSupport undefPropertyEditorSupport = new
> > > > > > PropertyEditorSupport();
> > > > > >        try {
> > > > > >            System.err.print("value is null: ");
> > > > > >            undefPropertyEditorSupport.setAsText("string");
> > > > > >            System.err.println("failed: IllegalArgumentException
> > > > > expected, but
> > > > > > nothing was thrown!\n");
> > > > > >        } catch (IllegalArgumentException eE) {
> > > > > >            System.err.println("success!");
> > > > > >            eE.printStackTrace();
> > > > > >        }
> > > > > >
> > > > > >        PropertyEditorSupport defPropertyEditorSupport = new
> > > > > > PropertyEditorSupport();
> > > > > >        try {
> > > > > >            defPropertyEditorSupport.setValue(new Object());
> > > > > >
> > > > > >            System.err.print("value is Object: ");
> > > > > >            defPropertyEditorSupport.setAsText("string");
> > > > > >            System.err.println("failed: IllegalArgumentException
> > > > > expected, but
> > > > > > nothing was thrown!\n");
> > > > > >        } catch (IllegalArgumentException eE) {
> > > > > >            System.err.println("success!");
> > > > > >            eE.printStackTrace();
> > > > > >        }
> > > > > >
> > > > > >        defPropertyEditorSupport = new PropertyEditorSupport();
> > > > > >        try {
> > > > > >            defPropertyEditorSupport.setValue(new String());
> > > > > >            System.err.print("value is String: ");
> > > > > >            defPropertyEditorSupport.setAsText("string");
> > > > > >            System.err.println("success!");
> > > > > >        } catch (IllegalArgumentException eE) {
> > > > > >            System.err.println("failed!");
> > > > > >            eE.printStackTrace();
> > > > > >        }
> > > > > >
> > > > > >    }
> > > > > >
> > > > > > }
> > > > > > ===========================================
> > > > > > Output:
> > > > > >
> > > > > > Harmony:
> > > > > > java version "1.5.0"
> > > > > > pre-alpha : not complete or compatible
> > > > > > svn = r424571, (Jul 22 2006), Windows/ia32/msvc 1310, release
> build
> > > > > > http://incubator.apache.org/harmony
> > > > > >
> > > > > > value is null: failed: IllegalArgumentException expected, but
> > > nothing
> > > > > was
> > > > > > thrown!
> > > > > >
> > > > > > value is Object: failed: IllegalArgumentException expected, but
> > > nothing
> > > > > was
> > > > > > thrown!
> > > > > >
> > > > > > value is String: success!
> > > > > >
> > > > > > RI:
> > > > > > java version "1.5.0"
> > > > > > Java(TM) 2 Runtime Environment, Standard Edition (build
> 1.5.0-b64)
> > > > > > BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32,
> > > > > R25.0.0-75,
> > > > > > GC: System optimized over throughput (initial strategy
> > > singleparpar))
> > > > > >
> > > > > > value is null: success!
> > > > > > java.lang.IllegalArgumentException: string
> > > > > >        at
> > > > > > java.beans.PropertyEditorSupport.setAsText(
> > > PropertyEditorSupport.java
> > > > > :166)
> > > > > >        at bugzilla.Test9433.main(Test9433.java:11)
> > > > > > value is Object: success!
> > > > > > java.lang.IllegalArgumentException: string
> > > > > >        at
> > > > > > java.beans.PropertyEditorSupport.setAsText(
> > > PropertyEditorSupport.java
> > > > > :166)
> > > > > >        at bugzilla.Test9433.main(Test9433.java:23)
> > > > > > value is String: success!
> > > > > >
> > > > > > For this reason, suggested solution is to check in setAsText()
> > > method if
> > > > > the
> > > > > > value is instanse of String, in case of true - setValue,
> otherwise -
> > > > > throw an
> > > > > > IAE following the spec, "...this kind of property can't be
> expressed
> > > as
> > > > > text".
> > > > > >
> > > > > > Suggested patch and regression test can be found in the attach
> > > > > >
>
>
>
> --
> Alexei Zakharov,
> Intel Middleware Product Division
>
> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> For additional commands, e-mail: harmony-dev-help@incubator.apache.org
>
>


-- 
--
Ilya Okomin
Intel Middleware Products Division

Re: [jira] Created: (HARMONY-1113) [classlib][beans]Harmony does not throw IllegalArgumentException for java.beans.PropertyEditorSupport.setAsText() while RI does.

Posted by Alexei Zakharov <al...@gmail.com>.
Hi Mikhail,

> BTW, there is a looking similar failure in the test
> o.a.h.beans.tests.java.beans.CustomizedPersistenceDelegateTest#testProxyPD
> :)

It doesn't seem to be a completely similar failure to me. IMO the
above test fails due the fact that we simply don't have persistence
delegates for proxies, nobody have implemented them till now. Well,
the similarity here is that we need to deal with the same mysterious
java.lang.reflect.Proxy class. :)
I'm going to occupy myself with the above issue on this weekend if
nobody objects.

Regards,

2006/8/16, Mikhail Loenko <ml...@gmail.com>:
> It works, thanks for the patch!
>
> BTW, there is a looking similar failure in the test
>
> o.a.h.beans.tests.java.beans.CustomizedPersistenceDelegateTest#testProxyPD
>
> :)
>
> Thanks,
> Mikhail
>
> 2006/8/16, Mikhail Loenko <ml...@gmail.com>:
> > Sure!
> >
> > 2006/8/16, Alexei Zakharov <al...@gmail.com>:
> > > Mikhail,
> > >
> > > > But there are two remaining failures related to
> > > > Proxy. That area is completely new for me and I guess it's caused
> > > > by incorrect process of Object's methods including equals().
> > > > Can you guys take a look?
> > >
> > > I have created HARMONY-1207 that fixes the above problem. Could you
> > > please take a look at it?
> > >
> > > Thanks,
> > >
> > > 2006/8/14, Mikhail Loenko <ml...@gmail.com>:
> > > > 2006/8/14, Alexei Zakharov <al...@gmail.com>:
> > > > > Ilya,
> > > > >
> > > > > > Thus test_setAsTextNull is redundant but
> > > > > > other two test cases have to be added.
> > > > >
> > > > > This is exactly what I mean.
> > > > > BTW, If you have more patches (or free time) for java.beans you are
> > > > > highly welcome. I have already tired from working on this package
> > > > > alone. :)
> > > >
> > > > You are not alone :)
> > > >
> > > > BTW, I've managed to fix most of the failures in
> > > > org.apache.harmony.beans.tests.java.beans.PropertyEditorSupportTest
> > > > they were caused by a bug in no-arg constructor of
> > > > PropertyEditorSupport
> > > > I'll commit the fix tomorrow. But there are two remaining failures related to
> > > > Proxy. That area is completely new for me and I guess it's caused
> > > > by incorrect process of Object's methods including equals().
> > > >
> > > > Can you guys take a look?
> > > >
> > > > Thanks,
> > > > Mikhail
> > > >
> > > >
> > > > >
> > > > > Regards,
> > > > >
> > > > > 2006/8/14, Ilya Okomin <il...@gmail.com>:
> > > > > > On 8/14/06, Alexei Zakharov <al...@gmail.com> wrote:
> > > > > > >
> > > > > > > Hi Ilya,
> > > > > > >
> > > > > > > FYI there is the existing class
> > > > > > > org.apache.harmony.beans.tests.java.beans.PropertyEditorSupportTest
> > > > > > > that contains all tests for PropertyEditorSupport. IMHO it would be
> > > > > > > better if you embed your tests into this class. BTW, you may also take
> > > > > > > a look at existent
> > > > > > > testSetAsText
> > > > > > > method since it seems it does the same job.
> > > > > >
> > > > > >
> > > > > > Thanks for suggested solution, I've already done it before read your message
> > > > > > :-)
> > > > > >
> > > > > > Hmmm..you right, existing one test testSetAsText is the same as
> > > > > > test_setAsTextNull.
> > > > > > Actually existing testSetAsText test doesn't cover the problem, according to
> > > > > > the documentation setAsText method behavior depends on the object state
> > > > > > (rather newValue field type), thus we have to take into account the type of
> > > > > > the newValue before setAsText call, if it is instanse of String or not. I've
> > > > > > created tests for these cases. Thus test_setAsTextNull is redundant but
> > > > > > other two test cases have to be added.
> > > > > >
> > > > > > Regards,
> > > > > > > Alexei
> > > > > > >
> > > > > > > P.S. thanks for the patch :)
> > > > > >
> > > > > >
> > > > > > Always welcome!
> > > > > >
> > > > > >  Thanks,
> > > > > > Ilya.
> > > > > >
> > > > > > 2006/8/14, Ilya Okomin <il...@gmail.com>:
> > > > > > > > Hello, Mikhail!
> > > > > > > >
> > > > > > > > Provided test case can work from classpath of course. It's my mistake,
> > > > > > > > thanks for noticed it. I'll prepare updated test case' patch with
> > > > > > > correct
> > > > > > > > packaging and taking into account exceptions handling recommendation
> > > > > > > ASAP.
> > > > > > > >
> > > > > > > > Thanks,
> > > > > > > > Ilya.
> > > > > > > >
> > > > > > > >
> > > > > > > > On 8/14/06, Mikhail Loenko <ml...@gmail.com> wrote:
> > > > > > > > >
> > > > > > > > > Hi Ilya
> > > > > > > > >
> > > > > > > > > Is it significant that the test code is in bootclasspath, or it can
> > > > > > > > > work from classpath?
> > > > > > > > >
> > > > > > > > > There were some discussions around the tests that might be
> > > > > > > interesting,
> > > > > > > > > please look at [1].
> > > > > > > > >
> > > > > > > > > Please look at the section
> > > > > > > > > Utilize JUnit's assert/fail methods and exception handling for clean
> > > > > > > test
> > > > > > > > > code
> > > > > > > > >
> > > > > > > > > This also might be useful [2]
> > > > > > > > >
> > > > > > > > > Thanks,
> > > > > > > > > Mikhail
> > > > > > > > >
> > > > > > > > > [1]
> > > > > > > > >
> > > > > > > http://mail-archives.apache.org/mod_mbox/incubator-harmony-dev/200603.mbox/%3c442B7857.7040002@gmail.com%3e
> > > > > > > > >
> > > > > > > > > [2]
> > > > > > > > >
> > > > > > > http://incubator.apache.org/harmony/subcomponents/classlibrary/agreements.html
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > 2006/8/9, Ilya Okomin (JIRA) <ji...@apache.org>:
> > > > > > > > > > [classlib][beans]Harmony does not throw IllegalArgumentException for
> > > > > > > > > java.beans.PropertyEditorSupport.setAsText() while RI does.
> > > > > > > > > >
> > > > > > > > >
> > > > > > > --------------------------------------------------------------------------------------------------------------------------------
> > > > > > > > > >
> > > > > > > > > >                 Key: HARMONY-1113
> > > > > > > > > >                 URL:
> > > > > > > http://issues.apache.org/jira/browse/HARMONY-1113
> > > > > > > > > >             Project: Harmony
> > > > > > > > > >          Issue Type: Bug
> > > > > > > > > >          Components: Classlib
> > > > > > > > > >            Reporter: Ilya Okomin
> > > > > > > > > >            Priority: Minor
> > > > > > > > > >         Attachments: PropertyEditorSupport.patch,
> > > > > > > > > PropertyEditorSupportTest.patch
> > > > > > > > > >
> > > > > > > > > > Harmony does not throw IllegalArgumentException for
> > > > > > > > > java.beans.PropertyEditorSupport.setAsText(String) when parameter is
> > > > > > > > > invalid
> > > > > > > > > > while RI throws IllegalArgumentException.
> > > > > > > > > > Java 1.5.0 spec says:"May raise java.lang.IllegalArgumentExceptionif
> > > > > > > > > either the String is badly formatted or if this kind of property can't
> > > > > > > be
> > > > > > > > > expressed as text."
> > > > > > > > > > =============test.java==============
> > > > > > > > > > import java.beans.PropertyEditorSupport;
> > > > > > > > > >
> > > > > > > > > > public class test {
> > > > > > > > > >
> > > > > > > > > >    public static void main(String args[]) {
> > > > > > > > > >        PropertyEditorSupport undefPropertyEditorSupport = new
> > > > > > > > > > PropertyEditorSupport();
> > > > > > > > > >        try {
> > > > > > > > > >            System.err.print("value is null: ");
> > > > > > > > > >            undefPropertyEditorSupport.setAsText("string");
> > > > > > > > > >            System.err.println("failed: IllegalArgumentException
> > > > > > > > > expected, but
> > > > > > > > > > nothing was thrown!\n");
> > > > > > > > > >        } catch (IllegalArgumentException eE) {
> > > > > > > > > >            System.err.println("success!");
> > > > > > > > > >            eE.printStackTrace();
> > > > > > > > > >        }
> > > > > > > > > >
> > > > > > > > > >        PropertyEditorSupport defPropertyEditorSupport = new
> > > > > > > > > > PropertyEditorSupport();
> > > > > > > > > >        try {
> > > > > > > > > >            defPropertyEditorSupport.setValue(new Object());
> > > > > > > > > >
> > > > > > > > > >            System.err.print("value is Object: ");
> > > > > > > > > >            defPropertyEditorSupport.setAsText("string");
> > > > > > > > > >            System.err.println("failed: IllegalArgumentException
> > > > > > > > > expected, but
> > > > > > > > > > nothing was thrown!\n");
> > > > > > > > > >        } catch (IllegalArgumentException eE) {
> > > > > > > > > >            System.err.println("success!");
> > > > > > > > > >            eE.printStackTrace();
> > > > > > > > > >        }
> > > > > > > > > >
> > > > > > > > > >        defPropertyEditorSupport = new PropertyEditorSupport();
> > > > > > > > > >        try {
> > > > > > > > > >            defPropertyEditorSupport.setValue(new String());
> > > > > > > > > >            System.err.print("value is String: ");
> > > > > > > > > >            defPropertyEditorSupport.setAsText("string");
> > > > > > > > > >            System.err.println("success!");
> > > > > > > > > >        } catch (IllegalArgumentException eE) {
> > > > > > > > > >            System.err.println("failed!");
> > > > > > > > > >            eE.printStackTrace();
> > > > > > > > > >        }
> > > > > > > > > >
> > > > > > > > > >    }
> > > > > > > > > >
> > > > > > > > > > }
> > > > > > > > > > ===========================================
> > > > > > > > > > Output:
> > > > > > > > > >
> > > > > > > > > > Harmony:
> > > > > > > > > > java version "1.5.0"
> > > > > > > > > > pre-alpha : not complete or compatible
> > > > > > > > > > svn = r424571, (Jul 22 2006), Windows/ia32/msvc 1310, release build
> > > > > > > > > > http://incubator.apache.org/harmony
> > > > > > > > > >
> > > > > > > > > > value is null: failed: IllegalArgumentException expected, but
> > > > > > > nothing
> > > > > > > > > was
> > > > > > > > > > thrown!
> > > > > > > > > >
> > > > > > > > > > value is Object: failed: IllegalArgumentException expected, but
> > > > > > > nothing
> > > > > > > > > was
> > > > > > > > > > thrown!
> > > > > > > > > >
> > > > > > > > > > value is String: success!
> > > > > > > > > >
> > > > > > > > > > RI:
> > > > > > > > > > java version "1.5.0"
> > > > > > > > > > Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> > > > > > > > > > BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32,
> > > > > > > > > R25.0.0-75,
> > > > > > > > > > GC: System optimized over throughput (initial strategy
> > > > > > > singleparpar))
> > > > > > > > > >
> > > > > > > > > > value is null: success!
> > > > > > > > > > java.lang.IllegalArgumentException: string
> > > > > > > > > >        at
> > > > > > > > > > java.beans.PropertyEditorSupport.setAsText(
> > > > > > > PropertyEditorSupport.java
> > > > > > > > > :166)
> > > > > > > > > >        at bugzilla.Test9433.main(Test9433.java:11)
> > > > > > > > > > value is Object: success!
> > > > > > > > > > java.lang.IllegalArgumentException: string
> > > > > > > > > >        at
> > > > > > > > > > java.beans.PropertyEditorSupport.setAsText(
> > > > > > > PropertyEditorSupport.java
> > > > > > > > > :166)
> > > > > > > > > >        at bugzilla.Test9433.main(Test9433.java:23)
> > > > > > > > > > value is String: success!
> > > > > > > > > >
> > > > > > > > > > For this reason, suggested solution is to check in setAsText()
> > > > > > > method if
> > > > > > > > > the
> > > > > > > > > > value is instanse of String, in case of true - setValue, otherwise -
> > > > > > > > > throw an
> > > > > > > > > > IAE following the spec, "...this kind of property can't be expressed
> > > > > > > as
> > > > > > > > > text".
> > > > > > > > > >
> > > > > > > > > > Suggested patch and regression test can be found in the attach
> > > > > > > > > >
> > > > >
> > > > >
> > > > >
> > > > > --
> > > > > Alexei Zakharov,
> > > > > Intel Middleware Product Division
> > > > >
> > > > > ---------------------------------------------------------------------
> > > > > Terms of use : http://incubator.apache.org/harmony/mailing.html
> > > > > To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> > > > > For additional commands, e-mail: harmony-dev-help@incubator.apache.org
> > > > >
> > > > >
> > > >
> > > > ---------------------------------------------------------------------
> > > > Terms of use : http://incubator.apache.org/harmony/mailing.html
> > > > To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> > > > For additional commands, e-mail: harmony-dev-help@incubator.apache.org
> > > >
> > > >
> > >
> > >
> > > --
> > > Alexei Zakharov,
> > > Intel Middleware Product Division
> > >
> > > ---------------------------------------------------------------------
> > > Terms of use : http://incubator.apache.org/harmony/mailing.html
> > > To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> > > For additional commands, e-mail: harmony-dev-help@incubator.apache.org
> > >
> > >
> >
>
> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> For additional commands, e-mail: harmony-dev-help@incubator.apache.org
>
>


-- 
Alexei Zakharov,
Intel Middleware Product Division

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Re: [jira] Created: (HARMONY-1113) [classlib][beans]Harmony does not throw IllegalArgumentException for java.beans.PropertyEditorSupport.setAsText() while RI does.

Posted by Mikhail Loenko <ml...@gmail.com>.
It works, thanks for the patch!

BTW, there is a looking similar failure in the test

o.a.h.beans.tests.java.beans.CustomizedPersistenceDelegateTest#testProxyPD

:)

Thanks,
Mikhail

2006/8/16, Mikhail Loenko <ml...@gmail.com>:
> Sure!
>
> 2006/8/16, Alexei Zakharov <al...@gmail.com>:
> > Mikhail,
> >
> > > But there are two remaining failures related to
> > > Proxy. That area is completely new for me and I guess it's caused
> > > by incorrect process of Object's methods including equals().
> > > Can you guys take a look?
> >
> > I have created HARMONY-1207 that fixes the above problem. Could you
> > please take a look at it?
> >
> > Thanks,
> >
> > 2006/8/14, Mikhail Loenko <ml...@gmail.com>:
> > > 2006/8/14, Alexei Zakharov <al...@gmail.com>:
> > > > Ilya,
> > > >
> > > > > Thus test_setAsTextNull is redundant but
> > > > > other two test cases have to be added.
> > > >
> > > > This is exactly what I mean.
> > > > BTW, If you have more patches (or free time) for java.beans you are
> > > > highly welcome. I have already tired from working on this package
> > > > alone. :)
> > >
> > > You are not alone :)
> > >
> > > BTW, I've managed to fix most of the failures in
> > > org.apache.harmony.beans.tests.java.beans.PropertyEditorSupportTest
> > > they were caused by a bug in no-arg constructor of
> > > PropertyEditorSupport
> > > I'll commit the fix tomorrow. But there are two remaining failures related to
> > > Proxy. That area is completely new for me and I guess it's caused
> > > by incorrect process of Object's methods including equals().
> > >
> > > Can you guys take a look?
> > >
> > > Thanks,
> > > Mikhail
> > >
> > >
> > > >
> > > > Regards,
> > > >
> > > > 2006/8/14, Ilya Okomin <il...@gmail.com>:
> > > > > On 8/14/06, Alexei Zakharov <al...@gmail.com> wrote:
> > > > > >
> > > > > > Hi Ilya,
> > > > > >
> > > > > > FYI there is the existing class
> > > > > > org.apache.harmony.beans.tests.java.beans.PropertyEditorSupportTest
> > > > > > that contains all tests for PropertyEditorSupport. IMHO it would be
> > > > > > better if you embed your tests into this class. BTW, you may also take
> > > > > > a look at existent
> > > > > > testSetAsText
> > > > > > method since it seems it does the same job.
> > > > >
> > > > >
> > > > > Thanks for suggested solution, I've already done it before read your message
> > > > > :-)
> > > > >
> > > > > Hmmm..you right, existing one test testSetAsText is the same as
> > > > > test_setAsTextNull.
> > > > > Actually existing testSetAsText test doesn't cover the problem, according to
> > > > > the documentation setAsText method behavior depends on the object state
> > > > > (rather newValue field type), thus we have to take into account the type of
> > > > > the newValue before setAsText call, if it is instanse of String or not. I've
> > > > > created tests for these cases. Thus test_setAsTextNull is redundant but
> > > > > other two test cases have to be added.
> > > > >
> > > > > Regards,
> > > > > > Alexei
> > > > > >
> > > > > > P.S. thanks for the patch :)
> > > > >
> > > > >
> > > > > Always welcome!
> > > > >
> > > > >  Thanks,
> > > > > Ilya.
> > > > >
> > > > > 2006/8/14, Ilya Okomin <il...@gmail.com>:
> > > > > > > Hello, Mikhail!
> > > > > > >
> > > > > > > Provided test case can work from classpath of course. It's my mistake,
> > > > > > > thanks for noticed it. I'll prepare updated test case' patch with
> > > > > > correct
> > > > > > > packaging and taking into account exceptions handling recommendation
> > > > > > ASAP.
> > > > > > >
> > > > > > > Thanks,
> > > > > > > Ilya.
> > > > > > >
> > > > > > >
> > > > > > > On 8/14/06, Mikhail Loenko <ml...@gmail.com> wrote:
> > > > > > > >
> > > > > > > > Hi Ilya
> > > > > > > >
> > > > > > > > Is it significant that the test code is in bootclasspath, or it can
> > > > > > > > work from classpath?
> > > > > > > >
> > > > > > > > There were some discussions around the tests that might be
> > > > > > interesting,
> > > > > > > > please look at [1].
> > > > > > > >
> > > > > > > > Please look at the section
> > > > > > > > Utilize JUnit's assert/fail methods and exception handling for clean
> > > > > > test
> > > > > > > > code
> > > > > > > >
> > > > > > > > This also might be useful [2]
> > > > > > > >
> > > > > > > > Thanks,
> > > > > > > > Mikhail
> > > > > > > >
> > > > > > > > [1]
> > > > > > > >
> > > > > > http://mail-archives.apache.org/mod_mbox/incubator-harmony-dev/200603.mbox/%3c442B7857.7040002@gmail.com%3e
> > > > > > > >
> > > > > > > > [2]
> > > > > > > >
> > > > > > http://incubator.apache.org/harmony/subcomponents/classlibrary/agreements.html
> > > > > > > >
> > > > > > > >
> > > > > > > > 2006/8/9, Ilya Okomin (JIRA) <ji...@apache.org>:
> > > > > > > > > [classlib][beans]Harmony does not throw IllegalArgumentException for
> > > > > > > > java.beans.PropertyEditorSupport.setAsText() while RI does.
> > > > > > > > >
> > > > > > > >
> > > > > > --------------------------------------------------------------------------------------------------------------------------------
> > > > > > > > >
> > > > > > > > >                 Key: HARMONY-1113
> > > > > > > > >                 URL:
> > > > > > http://issues.apache.org/jira/browse/HARMONY-1113
> > > > > > > > >             Project: Harmony
> > > > > > > > >          Issue Type: Bug
> > > > > > > > >          Components: Classlib
> > > > > > > > >            Reporter: Ilya Okomin
> > > > > > > > >            Priority: Minor
> > > > > > > > >         Attachments: PropertyEditorSupport.patch,
> > > > > > > > PropertyEditorSupportTest.patch
> > > > > > > > >
> > > > > > > > > Harmony does not throw IllegalArgumentException for
> > > > > > > > java.beans.PropertyEditorSupport.setAsText(String) when parameter is
> > > > > > > > invalid
> > > > > > > > > while RI throws IllegalArgumentException.
> > > > > > > > > Java 1.5.0 spec says:"May raise java.lang.IllegalArgumentExceptionif
> > > > > > > > either the String is badly formatted or if this kind of property can't
> > > > > > be
> > > > > > > > expressed as text."
> > > > > > > > > =============test.java==============
> > > > > > > > > import java.beans.PropertyEditorSupport;
> > > > > > > > >
> > > > > > > > > public class test {
> > > > > > > > >
> > > > > > > > >    public static void main(String args[]) {
> > > > > > > > >        PropertyEditorSupport undefPropertyEditorSupport = new
> > > > > > > > > PropertyEditorSupport();
> > > > > > > > >        try {
> > > > > > > > >            System.err.print("value is null: ");
> > > > > > > > >            undefPropertyEditorSupport.setAsText("string");
> > > > > > > > >            System.err.println("failed: IllegalArgumentException
> > > > > > > > expected, but
> > > > > > > > > nothing was thrown!\n");
> > > > > > > > >        } catch (IllegalArgumentException eE) {
> > > > > > > > >            System.err.println("success!");
> > > > > > > > >            eE.printStackTrace();
> > > > > > > > >        }
> > > > > > > > >
> > > > > > > > >        PropertyEditorSupport defPropertyEditorSupport = new
> > > > > > > > > PropertyEditorSupport();
> > > > > > > > >        try {
> > > > > > > > >            defPropertyEditorSupport.setValue(new Object());
> > > > > > > > >
> > > > > > > > >            System.err.print("value is Object: ");
> > > > > > > > >            defPropertyEditorSupport.setAsText("string");
> > > > > > > > >            System.err.println("failed: IllegalArgumentException
> > > > > > > > expected, but
> > > > > > > > > nothing was thrown!\n");
> > > > > > > > >        } catch (IllegalArgumentException eE) {
> > > > > > > > >            System.err.println("success!");
> > > > > > > > >            eE.printStackTrace();
> > > > > > > > >        }
> > > > > > > > >
> > > > > > > > >        defPropertyEditorSupport = new PropertyEditorSupport();
> > > > > > > > >        try {
> > > > > > > > >            defPropertyEditorSupport.setValue(new String());
> > > > > > > > >            System.err.print("value is String: ");
> > > > > > > > >            defPropertyEditorSupport.setAsText("string");
> > > > > > > > >            System.err.println("success!");
> > > > > > > > >        } catch (IllegalArgumentException eE) {
> > > > > > > > >            System.err.println("failed!");
> > > > > > > > >            eE.printStackTrace();
> > > > > > > > >        }
> > > > > > > > >
> > > > > > > > >    }
> > > > > > > > >
> > > > > > > > > }
> > > > > > > > > ===========================================
> > > > > > > > > Output:
> > > > > > > > >
> > > > > > > > > Harmony:
> > > > > > > > > java version "1.5.0"
> > > > > > > > > pre-alpha : not complete or compatible
> > > > > > > > > svn = r424571, (Jul 22 2006), Windows/ia32/msvc 1310, release build
> > > > > > > > > http://incubator.apache.org/harmony
> > > > > > > > >
> > > > > > > > > value is null: failed: IllegalArgumentException expected, but
> > > > > > nothing
> > > > > > > > was
> > > > > > > > > thrown!
> > > > > > > > >
> > > > > > > > > value is Object: failed: IllegalArgumentException expected, but
> > > > > > nothing
> > > > > > > > was
> > > > > > > > > thrown!
> > > > > > > > >
> > > > > > > > > value is String: success!
> > > > > > > > >
> > > > > > > > > RI:
> > > > > > > > > java version "1.5.0"
> > > > > > > > > Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> > > > > > > > > BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32,
> > > > > > > > R25.0.0-75,
> > > > > > > > > GC: System optimized over throughput (initial strategy
> > > > > > singleparpar))
> > > > > > > > >
> > > > > > > > > value is null: success!
> > > > > > > > > java.lang.IllegalArgumentException: string
> > > > > > > > >        at
> > > > > > > > > java.beans.PropertyEditorSupport.setAsText(
> > > > > > PropertyEditorSupport.java
> > > > > > > > :166)
> > > > > > > > >        at bugzilla.Test9433.main(Test9433.java:11)
> > > > > > > > > value is Object: success!
> > > > > > > > > java.lang.IllegalArgumentException: string
> > > > > > > > >        at
> > > > > > > > > java.beans.PropertyEditorSupport.setAsText(
> > > > > > PropertyEditorSupport.java
> > > > > > > > :166)
> > > > > > > > >        at bugzilla.Test9433.main(Test9433.java:23)
> > > > > > > > > value is String: success!
> > > > > > > > >
> > > > > > > > > For this reason, suggested solution is to check in setAsText()
> > > > > > method if
> > > > > > > > the
> > > > > > > > > value is instanse of String, in case of true - setValue, otherwise -
> > > > > > > > throw an
> > > > > > > > > IAE following the spec, "...this kind of property can't be expressed
> > > > > > as
> > > > > > > > text".
> > > > > > > > >
> > > > > > > > > Suggested patch and regression test can be found in the attach
> > > > > > > > >
> > > >
> > > >
> > > >
> > > > --
> > > > Alexei Zakharov,
> > > > Intel Middleware Product Division
> > > >
> > > > ---------------------------------------------------------------------
> > > > Terms of use : http://incubator.apache.org/harmony/mailing.html
> > > > To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> > > > For additional commands, e-mail: harmony-dev-help@incubator.apache.org
> > > >
> > > >
> > >
> > > ---------------------------------------------------------------------
> > > Terms of use : http://incubator.apache.org/harmony/mailing.html
> > > To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> > > For additional commands, e-mail: harmony-dev-help@incubator.apache.org
> > >
> > >
> >
> >
> > --
> > Alexei Zakharov,
> > Intel Middleware Product Division
> >
> > ---------------------------------------------------------------------
> > Terms of use : http://incubator.apache.org/harmony/mailing.html
> > To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> > For additional commands, e-mail: harmony-dev-help@incubator.apache.org
> >
> >
>

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Re: [jira] Created: (HARMONY-1113) [classlib][beans]Harmony does not throw IllegalArgumentException for java.beans.PropertyEditorSupport.setAsText() while RI does.

Posted by Mikhail Loenko <ml...@gmail.com>.
Sure!

2006/8/16, Alexei Zakharov <al...@gmail.com>:
> Mikhail,
>
> > But there are two remaining failures related to
> > Proxy. That area is completely new for me and I guess it's caused
> > by incorrect process of Object's methods including equals().
> > Can you guys take a look?
>
> I have created HARMONY-1207 that fixes the above problem. Could you
> please take a look at it?
>
> Thanks,
>
> 2006/8/14, Mikhail Loenko <ml...@gmail.com>:
> > 2006/8/14, Alexei Zakharov <al...@gmail.com>:
> > > Ilya,
> > >
> > > > Thus test_setAsTextNull is redundant but
> > > > other two test cases have to be added.
> > >
> > > This is exactly what I mean.
> > > BTW, If you have more patches (or free time) for java.beans you are
> > > highly welcome. I have already tired from working on this package
> > > alone. :)
> >
> > You are not alone :)
> >
> > BTW, I've managed to fix most of the failures in
> > org.apache.harmony.beans.tests.java.beans.PropertyEditorSupportTest
> > they were caused by a bug in no-arg constructor of
> > PropertyEditorSupport
> > I'll commit the fix tomorrow. But there are two remaining failures related to
> > Proxy. That area is completely new for me and I guess it's caused
> > by incorrect process of Object's methods including equals().
> >
> > Can you guys take a look?
> >
> > Thanks,
> > Mikhail
> >
> >
> > >
> > > Regards,
> > >
> > > 2006/8/14, Ilya Okomin <il...@gmail.com>:
> > > > On 8/14/06, Alexei Zakharov <al...@gmail.com> wrote:
> > > > >
> > > > > Hi Ilya,
> > > > >
> > > > > FYI there is the existing class
> > > > > org.apache.harmony.beans.tests.java.beans.PropertyEditorSupportTest
> > > > > that contains all tests for PropertyEditorSupport. IMHO it would be
> > > > > better if you embed your tests into this class. BTW, you may also take
> > > > > a look at existent
> > > > > testSetAsText
> > > > > method since it seems it does the same job.
> > > >
> > > >
> > > > Thanks for suggested solution, I've already done it before read your message
> > > > :-)
> > > >
> > > > Hmmm..you right, existing one test testSetAsText is the same as
> > > > test_setAsTextNull.
> > > > Actually existing testSetAsText test doesn't cover the problem, according to
> > > > the documentation setAsText method behavior depends on the object state
> > > > (rather newValue field type), thus we have to take into account the type of
> > > > the newValue before setAsText call, if it is instanse of String or not. I've
> > > > created tests for these cases. Thus test_setAsTextNull is redundant but
> > > > other two test cases have to be added.
> > > >
> > > > Regards,
> > > > > Alexei
> > > > >
> > > > > P.S. thanks for the patch :)
> > > >
> > > >
> > > > Always welcome!
> > > >
> > > >  Thanks,
> > > > Ilya.
> > > >
> > > > 2006/8/14, Ilya Okomin <il...@gmail.com>:
> > > > > > Hello, Mikhail!
> > > > > >
> > > > > > Provided test case can work from classpath of course. It's my mistake,
> > > > > > thanks for noticed it. I'll prepare updated test case' patch with
> > > > > correct
> > > > > > packaging and taking into account exceptions handling recommendation
> > > > > ASAP.
> > > > > >
> > > > > > Thanks,
> > > > > > Ilya.
> > > > > >
> > > > > >
> > > > > > On 8/14/06, Mikhail Loenko <ml...@gmail.com> wrote:
> > > > > > >
> > > > > > > Hi Ilya
> > > > > > >
> > > > > > > Is it significant that the test code is in bootclasspath, or it can
> > > > > > > work from classpath?
> > > > > > >
> > > > > > > There were some discussions around the tests that might be
> > > > > interesting,
> > > > > > > please look at [1].
> > > > > > >
> > > > > > > Please look at the section
> > > > > > > Utilize JUnit's assert/fail methods and exception handling for clean
> > > > > test
> > > > > > > code
> > > > > > >
> > > > > > > This also might be useful [2]
> > > > > > >
> > > > > > > Thanks,
> > > > > > > Mikhail
> > > > > > >
> > > > > > > [1]
> > > > > > >
> > > > > http://mail-archives.apache.org/mod_mbox/incubator-harmony-dev/200603.mbox/%3c442B7857.7040002@gmail.com%3e
> > > > > > >
> > > > > > > [2]
> > > > > > >
> > > > > http://incubator.apache.org/harmony/subcomponents/classlibrary/agreements.html
> > > > > > >
> > > > > > >
> > > > > > > 2006/8/9, Ilya Okomin (JIRA) <ji...@apache.org>:
> > > > > > > > [classlib][beans]Harmony does not throw IllegalArgumentException for
> > > > > > > java.beans.PropertyEditorSupport.setAsText() while RI does.
> > > > > > > >
> > > > > > >
> > > > > --------------------------------------------------------------------------------------------------------------------------------
> > > > > > > >
> > > > > > > >                 Key: HARMONY-1113
> > > > > > > >                 URL:
> > > > > http://issues.apache.org/jira/browse/HARMONY-1113
> > > > > > > >             Project: Harmony
> > > > > > > >          Issue Type: Bug
> > > > > > > >          Components: Classlib
> > > > > > > >            Reporter: Ilya Okomin
> > > > > > > >            Priority: Minor
> > > > > > > >         Attachments: PropertyEditorSupport.patch,
> > > > > > > PropertyEditorSupportTest.patch
> > > > > > > >
> > > > > > > > Harmony does not throw IllegalArgumentException for
> > > > > > > java.beans.PropertyEditorSupport.setAsText(String) when parameter is
> > > > > > > invalid
> > > > > > > > while RI throws IllegalArgumentException.
> > > > > > > > Java 1.5.0 spec says:"May raise java.lang.IllegalArgumentExceptionif
> > > > > > > either the String is badly formatted or if this kind of property can't
> > > > > be
> > > > > > > expressed as text."
> > > > > > > > =============test.java==============
> > > > > > > > import java.beans.PropertyEditorSupport;
> > > > > > > >
> > > > > > > > public class test {
> > > > > > > >
> > > > > > > >    public static void main(String args[]) {
> > > > > > > >        PropertyEditorSupport undefPropertyEditorSupport = new
> > > > > > > > PropertyEditorSupport();
> > > > > > > >        try {
> > > > > > > >            System.err.print("value is null: ");
> > > > > > > >            undefPropertyEditorSupport.setAsText("string");
> > > > > > > >            System.err.println("failed: IllegalArgumentException
> > > > > > > expected, but
> > > > > > > > nothing was thrown!\n");
> > > > > > > >        } catch (IllegalArgumentException eE) {
> > > > > > > >            System.err.println("success!");
> > > > > > > >            eE.printStackTrace();
> > > > > > > >        }
> > > > > > > >
> > > > > > > >        PropertyEditorSupport defPropertyEditorSupport = new
> > > > > > > > PropertyEditorSupport();
> > > > > > > >        try {
> > > > > > > >            defPropertyEditorSupport.setValue(new Object());
> > > > > > > >
> > > > > > > >            System.err.print("value is Object: ");
> > > > > > > >            defPropertyEditorSupport.setAsText("string");
> > > > > > > >            System.err.println("failed: IllegalArgumentException
> > > > > > > expected, but
> > > > > > > > nothing was thrown!\n");
> > > > > > > >        } catch (IllegalArgumentException eE) {
> > > > > > > >            System.err.println("success!");
> > > > > > > >            eE.printStackTrace();
> > > > > > > >        }
> > > > > > > >
> > > > > > > >        defPropertyEditorSupport = new PropertyEditorSupport();
> > > > > > > >        try {
> > > > > > > >            defPropertyEditorSupport.setValue(new String());
> > > > > > > >            System.err.print("value is String: ");
> > > > > > > >            defPropertyEditorSupport.setAsText("string");
> > > > > > > >            System.err.println("success!");
> > > > > > > >        } catch (IllegalArgumentException eE) {
> > > > > > > >            System.err.println("failed!");
> > > > > > > >            eE.printStackTrace();
> > > > > > > >        }
> > > > > > > >
> > > > > > > >    }
> > > > > > > >
> > > > > > > > }
> > > > > > > > ===========================================
> > > > > > > > Output:
> > > > > > > >
> > > > > > > > Harmony:
> > > > > > > > java version "1.5.0"
> > > > > > > > pre-alpha : not complete or compatible
> > > > > > > > svn = r424571, (Jul 22 2006), Windows/ia32/msvc 1310, release build
> > > > > > > > http://incubator.apache.org/harmony
> > > > > > > >
> > > > > > > > value is null: failed: IllegalArgumentException expected, but
> > > > > nothing
> > > > > > > was
> > > > > > > > thrown!
> > > > > > > >
> > > > > > > > value is Object: failed: IllegalArgumentException expected, but
> > > > > nothing
> > > > > > > was
> > > > > > > > thrown!
> > > > > > > >
> > > > > > > > value is String: success!
> > > > > > > >
> > > > > > > > RI:
> > > > > > > > java version "1.5.0"
> > > > > > > > Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> > > > > > > > BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32,
> > > > > > > R25.0.0-75,
> > > > > > > > GC: System optimized over throughput (initial strategy
> > > > > singleparpar))
> > > > > > > >
> > > > > > > > value is null: success!
> > > > > > > > java.lang.IllegalArgumentException: string
> > > > > > > >        at
> > > > > > > > java.beans.PropertyEditorSupport.setAsText(
> > > > > PropertyEditorSupport.java
> > > > > > > :166)
> > > > > > > >        at bugzilla.Test9433.main(Test9433.java:11)
> > > > > > > > value is Object: success!
> > > > > > > > java.lang.IllegalArgumentException: string
> > > > > > > >        at
> > > > > > > > java.beans.PropertyEditorSupport.setAsText(
> > > > > PropertyEditorSupport.java
> > > > > > > :166)
> > > > > > > >        at bugzilla.Test9433.main(Test9433.java:23)
> > > > > > > > value is String: success!
> > > > > > > >
> > > > > > > > For this reason, suggested solution is to check in setAsText()
> > > > > method if
> > > > > > > the
> > > > > > > > value is instanse of String, in case of true - setValue, otherwise -
> > > > > > > throw an
> > > > > > > > IAE following the spec, "...this kind of property can't be expressed
> > > > > as
> > > > > > > text".
> > > > > > > >
> > > > > > > > Suggested patch and regression test can be found in the attach
> > > > > > > >
> > >
> > >
> > >
> > > --
> > > Alexei Zakharov,
> > > Intel Middleware Product Division
> > >
> > > ---------------------------------------------------------------------
> > > Terms of use : http://incubator.apache.org/harmony/mailing.html
> > > To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> > > For additional commands, e-mail: harmony-dev-help@incubator.apache.org
> > >
> > >
> >
> > ---------------------------------------------------------------------
> > Terms of use : http://incubator.apache.org/harmony/mailing.html
> > To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> > For additional commands, e-mail: harmony-dev-help@incubator.apache.org
> >
> >
>
>
> --
> Alexei Zakharov,
> Intel Middleware Product Division
>
> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> For additional commands, e-mail: harmony-dev-help@incubator.apache.org
>
>

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Re: [jira] Created: (HARMONY-1113) [classlib][beans]Harmony does not throw IllegalArgumentException for java.beans.PropertyEditorSupport.setAsText() while RI does.

Posted by Alexei Zakharov <al...@gmail.com>.
Mikhail,

> But there are two remaining failures related to
> Proxy. That area is completely new for me and I guess it's caused
> by incorrect process of Object's methods including equals().
> Can you guys take a look?

I have created HARMONY-1207 that fixes the above problem. Could you
please take a look at it?

Thanks,

2006/8/14, Mikhail Loenko <ml...@gmail.com>:
> 2006/8/14, Alexei Zakharov <al...@gmail.com>:
> > Ilya,
> >
> > > Thus test_setAsTextNull is redundant but
> > > other two test cases have to be added.
> >
> > This is exactly what I mean.
> > BTW, If you have more patches (or free time) for java.beans you are
> > highly welcome. I have already tired from working on this package
> > alone. :)
>
> You are not alone :)
>
> BTW, I've managed to fix most of the failures in
> org.apache.harmony.beans.tests.java.beans.PropertyEditorSupportTest
> they were caused by a bug in no-arg constructor of
> PropertyEditorSupport
> I'll commit the fix tomorrow. But there are two remaining failures related to
> Proxy. That area is completely new for me and I guess it's caused
> by incorrect process of Object's methods including equals().
>
> Can you guys take a look?
>
> Thanks,
> Mikhail
>
>
> >
> > Regards,
> >
> > 2006/8/14, Ilya Okomin <il...@gmail.com>:
> > > On 8/14/06, Alexei Zakharov <al...@gmail.com> wrote:
> > > >
> > > > Hi Ilya,
> > > >
> > > > FYI there is the existing class
> > > > org.apache.harmony.beans.tests.java.beans.PropertyEditorSupportTest
> > > > that contains all tests for PropertyEditorSupport. IMHO it would be
> > > > better if you embed your tests into this class. BTW, you may also take
> > > > a look at existent
> > > > testSetAsText
> > > > method since it seems it does the same job.
> > >
> > >
> > > Thanks for suggested solution, I've already done it before read your message
> > > :-)
> > >
> > > Hmmm..you right, existing one test testSetAsText is the same as
> > > test_setAsTextNull.
> > > Actually existing testSetAsText test doesn't cover the problem, according to
> > > the documentation setAsText method behavior depends on the object state
> > > (rather newValue field type), thus we have to take into account the type of
> > > the newValue before setAsText call, if it is instanse of String or not. I've
> > > created tests for these cases. Thus test_setAsTextNull is redundant but
> > > other two test cases have to be added.
> > >
> > > Regards,
> > > > Alexei
> > > >
> > > > P.S. thanks for the patch :)
> > >
> > >
> > > Always welcome!
> > >
> > >  Thanks,
> > > Ilya.
> > >
> > > 2006/8/14, Ilya Okomin <il...@gmail.com>:
> > > > > Hello, Mikhail!
> > > > >
> > > > > Provided test case can work from classpath of course. It's my mistake,
> > > > > thanks for noticed it. I'll prepare updated test case' patch with
> > > > correct
> > > > > packaging and taking into account exceptions handling recommendation
> > > > ASAP.
> > > > >
> > > > > Thanks,
> > > > > Ilya.
> > > > >
> > > > >
> > > > > On 8/14/06, Mikhail Loenko <ml...@gmail.com> wrote:
> > > > > >
> > > > > > Hi Ilya
> > > > > >
> > > > > > Is it significant that the test code is in bootclasspath, or it can
> > > > > > work from classpath?
> > > > > >
> > > > > > There were some discussions around the tests that might be
> > > > interesting,
> > > > > > please look at [1].
> > > > > >
> > > > > > Please look at the section
> > > > > > Utilize JUnit's assert/fail methods and exception handling for clean
> > > > test
> > > > > > code
> > > > > >
> > > > > > This also might be useful [2]
> > > > > >
> > > > > > Thanks,
> > > > > > Mikhail
> > > > > >
> > > > > > [1]
> > > > > >
> > > > http://mail-archives.apache.org/mod_mbox/incubator-harmony-dev/200603.mbox/%3c442B7857.7040002@gmail.com%3e
> > > > > >
> > > > > > [2]
> > > > > >
> > > > http://incubator.apache.org/harmony/subcomponents/classlibrary/agreements.html
> > > > > >
> > > > > >
> > > > > > 2006/8/9, Ilya Okomin (JIRA) <ji...@apache.org>:
> > > > > > > [classlib][beans]Harmony does not throw IllegalArgumentException for
> > > > > > java.beans.PropertyEditorSupport.setAsText() while RI does.
> > > > > > >
> > > > > >
> > > > --------------------------------------------------------------------------------------------------------------------------------
> > > > > > >
> > > > > > >                 Key: HARMONY-1113
> > > > > > >                 URL:
> > > > http://issues.apache.org/jira/browse/HARMONY-1113
> > > > > > >             Project: Harmony
> > > > > > >          Issue Type: Bug
> > > > > > >          Components: Classlib
> > > > > > >            Reporter: Ilya Okomin
> > > > > > >            Priority: Minor
> > > > > > >         Attachments: PropertyEditorSupport.patch,
> > > > > > PropertyEditorSupportTest.patch
> > > > > > >
> > > > > > > Harmony does not throw IllegalArgumentException for
> > > > > > java.beans.PropertyEditorSupport.setAsText(String) when parameter is
> > > > > > invalid
> > > > > > > while RI throws IllegalArgumentException.
> > > > > > > Java 1.5.0 spec says:"May raise java.lang.IllegalArgumentExceptionif
> > > > > > either the String is badly formatted or if this kind of property can't
> > > > be
> > > > > > expressed as text."
> > > > > > > =============test.java==============
> > > > > > > import java.beans.PropertyEditorSupport;
> > > > > > >
> > > > > > > public class test {
> > > > > > >
> > > > > > >    public static void main(String args[]) {
> > > > > > >        PropertyEditorSupport undefPropertyEditorSupport = new
> > > > > > > PropertyEditorSupport();
> > > > > > >        try {
> > > > > > >            System.err.print("value is null: ");
> > > > > > >            undefPropertyEditorSupport.setAsText("string");
> > > > > > >            System.err.println("failed: IllegalArgumentException
> > > > > > expected, but
> > > > > > > nothing was thrown!\n");
> > > > > > >        } catch (IllegalArgumentException eE) {
> > > > > > >            System.err.println("success!");
> > > > > > >            eE.printStackTrace();
> > > > > > >        }
> > > > > > >
> > > > > > >        PropertyEditorSupport defPropertyEditorSupport = new
> > > > > > > PropertyEditorSupport();
> > > > > > >        try {
> > > > > > >            defPropertyEditorSupport.setValue(new Object());
> > > > > > >
> > > > > > >            System.err.print("value is Object: ");
> > > > > > >            defPropertyEditorSupport.setAsText("string");
> > > > > > >            System.err.println("failed: IllegalArgumentException
> > > > > > expected, but
> > > > > > > nothing was thrown!\n");
> > > > > > >        } catch (IllegalArgumentException eE) {
> > > > > > >            System.err.println("success!");
> > > > > > >            eE.printStackTrace();
> > > > > > >        }
> > > > > > >
> > > > > > >        defPropertyEditorSupport = new PropertyEditorSupport();
> > > > > > >        try {
> > > > > > >            defPropertyEditorSupport.setValue(new String());
> > > > > > >            System.err.print("value is String: ");
> > > > > > >            defPropertyEditorSupport.setAsText("string");
> > > > > > >            System.err.println("success!");
> > > > > > >        } catch (IllegalArgumentException eE) {
> > > > > > >            System.err.println("failed!");
> > > > > > >            eE.printStackTrace();
> > > > > > >        }
> > > > > > >
> > > > > > >    }
> > > > > > >
> > > > > > > }
> > > > > > > ===========================================
> > > > > > > Output:
> > > > > > >
> > > > > > > Harmony:
> > > > > > > java version "1.5.0"
> > > > > > > pre-alpha : not complete or compatible
> > > > > > > svn = r424571, (Jul 22 2006), Windows/ia32/msvc 1310, release build
> > > > > > > http://incubator.apache.org/harmony
> > > > > > >
> > > > > > > value is null: failed: IllegalArgumentException expected, but
> > > > nothing
> > > > > > was
> > > > > > > thrown!
> > > > > > >
> > > > > > > value is Object: failed: IllegalArgumentException expected, but
> > > > nothing
> > > > > > was
> > > > > > > thrown!
> > > > > > >
> > > > > > > value is String: success!
> > > > > > >
> > > > > > > RI:
> > > > > > > java version "1.5.0"
> > > > > > > Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> > > > > > > BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32,
> > > > > > R25.0.0-75,
> > > > > > > GC: System optimized over throughput (initial strategy
> > > > singleparpar))
> > > > > > >
> > > > > > > value is null: success!
> > > > > > > java.lang.IllegalArgumentException: string
> > > > > > >        at
> > > > > > > java.beans.PropertyEditorSupport.setAsText(
> > > > PropertyEditorSupport.java
> > > > > > :166)
> > > > > > >        at bugzilla.Test9433.main(Test9433.java:11)
> > > > > > > value is Object: success!
> > > > > > > java.lang.IllegalArgumentException: string
> > > > > > >        at
> > > > > > > java.beans.PropertyEditorSupport.setAsText(
> > > > PropertyEditorSupport.java
> > > > > > :166)
> > > > > > >        at bugzilla.Test9433.main(Test9433.java:23)
> > > > > > > value is String: success!
> > > > > > >
> > > > > > > For this reason, suggested solution is to check in setAsText()
> > > > method if
> > > > > > the
> > > > > > > value is instanse of String, in case of true - setValue, otherwise -
> > > > > > throw an
> > > > > > > IAE following the spec, "...this kind of property can't be expressed
> > > > as
> > > > > > text".
> > > > > > >
> > > > > > > Suggested patch and regression test can be found in the attach
> > > > > > >
> >
> >
> >
> > --
> > Alexei Zakharov,
> > Intel Middleware Product Division
> >
> > ---------------------------------------------------------------------
> > Terms of use : http://incubator.apache.org/harmony/mailing.html
> > To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> > For additional commands, e-mail: harmony-dev-help@incubator.apache.org
> >
> >
>
> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> For additional commands, e-mail: harmony-dev-help@incubator.apache.org
>
>


-- 
Alexei Zakharov,
Intel Middleware Product Division

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Re: [jira] Created: (HARMONY-1113) [classlib][beans]Harmony does not throw IllegalArgumentException for java.beans.PropertyEditorSupport.setAsText() while RI does.

Posted by Alexei Zakharov <al...@gmail.com>.
Hi Mikhail,

> You are not alone :)

I beg you pardon, I meant mere mortals who speak patch+JIRA language :)

> BTW, I've managed to fix most of the failures in
> org.apache.harmony.beans.tests.java.beans.PropertyEditorSupportTest
...
> Can you guys take a look?

Sure, I will look at it tomorrow.

Regards,

2006/8/14, Mikhail Loenko <ml...@gmail.com>:
> 2006/8/14, Alexei Zakharov <al...@gmail.com>:
> > Ilya,
> >
> > > Thus test_setAsTextNull is redundant but
> > > other two test cases have to be added.
> >
> > This is exactly what I mean.
> > BTW, If you have more patches (or free time) for java.beans you are
> > highly welcome. I have already tired from working on this package
> > alone. :)
>
> You are not alone :)
>
> BTW, I've managed to fix most of the failures in
> org.apache.harmony.beans.tests.java.beans.PropertyEditorSupportTest
> they were caused by a bug in no-arg constructor of
> PropertyEditorSupport
> I'll commit the fix tomorrow. But there are two remaining failures related to
> Proxy. That area is completely new for me and I guess it's caused
> by incorrect process of Object's methods including equals().
>
> Can you guys take a look?
>
> Thanks,
> Mikhail
>
>
> >
> > Regards,
> >
> > 2006/8/14, Ilya Okomin <il...@gmail.com>:
> > > On 8/14/06, Alexei Zakharov <al...@gmail.com> wrote:
> > > >
> > > > Hi Ilya,
> > > >
> > > > FYI there is the existing class
> > > > org.apache.harmony.beans.tests.java.beans.PropertyEditorSupportTest
> > > > that contains all tests for PropertyEditorSupport. IMHO it would be
> > > > better if you embed your tests into this class. BTW, you may also take
> > > > a look at existent
> > > > testSetAsText
> > > > method since it seems it does the same job.
> > >
> > >
> > > Thanks for suggested solution, I've already done it before read your message
> > > :-)
> > >
> > > Hmmm..you right, existing one test testSetAsText is the same as
> > > test_setAsTextNull.
> > > Actually existing testSetAsText test doesn't cover the problem, according to
> > > the documentation setAsText method behavior depends on the object state
> > > (rather newValue field type), thus we have to take into account the type of
> > > the newValue before setAsText call, if it is instanse of String or not. I've
> > > created tests for these cases. Thus test_setAsTextNull is redundant but
> > > other two test cases have to be added.
> > >
> > > Regards,
> > > > Alexei
> > > >
> > > > P.S. thanks for the patch :)
> > >
> > >
> > > Always welcome!
> > >
> > >  Thanks,
> > > Ilya.
> > >
> > > 2006/8/14, Ilya Okomin <il...@gmail.com>:
> > > > > Hello, Mikhail!
> > > > >
> > > > > Provided test case can work from classpath of course. It's my mistake,
> > > > > thanks for noticed it. I'll prepare updated test case' patch with
> > > > correct
> > > > > packaging and taking into account exceptions handling recommendation
> > > > ASAP.
> > > > >
> > > > > Thanks,
> > > > > Ilya.
> > > > >
> > > > >
> > > > > On 8/14/06, Mikhail Loenko <ml...@gmail.com> wrote:
> > > > > >
> > > > > > Hi Ilya
> > > > > >
> > > > > > Is it significant that the test code is in bootclasspath, or it can
> > > > > > work from classpath?
> > > > > >
> > > > > > There were some discussions around the tests that might be
> > > > interesting,
> > > > > > please look at [1].
> > > > > >
> > > > > > Please look at the section
> > > > > > Utilize JUnit's assert/fail methods and exception handling for clean
> > > > test
> > > > > > code
> > > > > >
> > > > > > This also might be useful [2]
> > > > > >
> > > > > > Thanks,
> > > > > > Mikhail
> > > > > >
> > > > > > [1]
> > > > > >
> > > > http://mail-archives.apache.org/mod_mbox/incubator-harmony-dev/200603.mbox/%3c442B7857.7040002@gmail.com%3e
> > > > > >
> > > > > > [2]
> > > > > >
> > > > http://incubator.apache.org/harmony/subcomponents/classlibrary/agreements.html
> > > > > >
> > > > > >
> > > > > > 2006/8/9, Ilya Okomin (JIRA) <ji...@apache.org>:
> > > > > > > [classlib][beans]Harmony does not throw IllegalArgumentException for
> > > > > > java.beans.PropertyEditorSupport.setAsText() while RI does.
> > > > > > >
> > > > > >
> > > > --------------------------------------------------------------------------------------------------------------------------------
> > > > > > >
> > > > > > >                 Key: HARMONY-1113
> > > > > > >                 URL:
> > > > http://issues.apache.org/jira/browse/HARMONY-1113
> > > > > > >             Project: Harmony
> > > > > > >          Issue Type: Bug
> > > > > > >          Components: Classlib
> > > > > > >            Reporter: Ilya Okomin
> > > > > > >            Priority: Minor
> > > > > > >         Attachments: PropertyEditorSupport.patch,
> > > > > > PropertyEditorSupportTest.patch
> > > > > > >
> > > > > > > Harmony does not throw IllegalArgumentException for
> > > > > > java.beans.PropertyEditorSupport.setAsText(String) when parameter is
> > > > > > invalid
> > > > > > > while RI throws IllegalArgumentException.
> > > > > > > Java 1.5.0 spec says:"May raise java.lang.IllegalArgumentExceptionif
> > > > > > either the String is badly formatted or if this kind of property can't
> > > > be
> > > > > > expressed as text."
> > > > > > > =============test.java==============
> > > > > > > import java.beans.PropertyEditorSupport;
> > > > > > >
> > > > > > > public class test {
> > > > > > >
> > > > > > >    public static void main(String args[]) {
> > > > > > >        PropertyEditorSupport undefPropertyEditorSupport = new
> > > > > > > PropertyEditorSupport();
> > > > > > >        try {
> > > > > > >            System.err.print("value is null: ");
> > > > > > >            undefPropertyEditorSupport.setAsText("string");
> > > > > > >            System.err.println("failed: IllegalArgumentException
> > > > > > expected, but
> > > > > > > nothing was thrown!\n");
> > > > > > >        } catch (IllegalArgumentException eE) {
> > > > > > >            System.err.println("success!");
> > > > > > >            eE.printStackTrace();
> > > > > > >        }
> > > > > > >
> > > > > > >        PropertyEditorSupport defPropertyEditorSupport = new
> > > > > > > PropertyEditorSupport();
> > > > > > >        try {
> > > > > > >            defPropertyEditorSupport.setValue(new Object());
> > > > > > >
> > > > > > >            System.err.print("value is Object: ");
> > > > > > >            defPropertyEditorSupport.setAsText("string");
> > > > > > >            System.err.println("failed: IllegalArgumentException
> > > > > > expected, but
> > > > > > > nothing was thrown!\n");
> > > > > > >        } catch (IllegalArgumentException eE) {
> > > > > > >            System.err.println("success!");
> > > > > > >            eE.printStackTrace();
> > > > > > >        }
> > > > > > >
> > > > > > >        defPropertyEditorSupport = new PropertyEditorSupport();
> > > > > > >        try {
> > > > > > >            defPropertyEditorSupport.setValue(new String());
> > > > > > >            System.err.print("value is String: ");
> > > > > > >            defPropertyEditorSupport.setAsText("string");
> > > > > > >            System.err.println("success!");
> > > > > > >        } catch (IllegalArgumentException eE) {
> > > > > > >            System.err.println("failed!");
> > > > > > >            eE.printStackTrace();
> > > > > > >        }
> > > > > > >
> > > > > > >    }
> > > > > > >
> > > > > > > }
> > > > > > > ===========================================
> > > > > > > Output:
> > > > > > >
> > > > > > > Harmony:
> > > > > > > java version "1.5.0"
> > > > > > > pre-alpha : not complete or compatible
> > > > > > > svn = r424571, (Jul 22 2006), Windows/ia32/msvc 1310, release build
> > > > > > > http://incubator.apache.org/harmony
> > > > > > >
> > > > > > > value is null: failed: IllegalArgumentException expected, but
> > > > nothing
> > > > > > was
> > > > > > > thrown!
> > > > > > >
> > > > > > > value is Object: failed: IllegalArgumentException expected, but
> > > > nothing
> > > > > > was
> > > > > > > thrown!
> > > > > > >
> > > > > > > value is String: success!
> > > > > > >
> > > > > > > RI:
> > > > > > > java version "1.5.0"
> > > > > > > Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> > > > > > > BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32,
> > > > > > R25.0.0-75,
> > > > > > > GC: System optimized over throughput (initial strategy
> > > > singleparpar))
> > > > > > >
> > > > > > > value is null: success!
> > > > > > > java.lang.IllegalArgumentException: string
> > > > > > >        at
> > > > > > > java.beans.PropertyEditorSupport.setAsText(
> > > > PropertyEditorSupport.java
> > > > > > :166)
> > > > > > >        at bugzilla.Test9433.main(Test9433.java:11)
> > > > > > > value is Object: success!
> > > > > > > java.lang.IllegalArgumentException: string
> > > > > > >        at
> > > > > > > java.beans.PropertyEditorSupport.setAsText(
> > > > PropertyEditorSupport.java
> > > > > > :166)
> > > > > > >        at bugzilla.Test9433.main(Test9433.java:23)
> > > > > > > value is String: success!
> > > > > > >
> > > > > > > For this reason, suggested solution is to check in setAsText()
> > > > method if
> > > > > > the
> > > > > > > value is instanse of String, in case of true - setValue, otherwise -
> > > > > > throw an
> > > > > > > IAE following the spec, "...this kind of property can't be expressed
> > > > as
> > > > > > text".
> > > > > > >
> > > > > > > Suggested patch and regression test can be found in the attach
> > > > > > >
> >
> >
> >
> > --
> > Alexei Zakharov,
> > Intel Middleware Product Division
> >
> > ---------------------------------------------------------------------
> > Terms of use : http://incubator.apache.org/harmony/mailing.html
> > To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> > For additional commands, e-mail: harmony-dev-help@incubator.apache.org
> >
> >
>
> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> For additional commands, e-mail: harmony-dev-help@incubator.apache.org
>
>


-- 
Alexei Zakharov,
Intel Middleware Product Division

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Re: [jira] Created: (HARMONY-1113) [classlib][beans]Harmony does not throw IllegalArgumentException for java.beans.PropertyEditorSupport.setAsText() while RI does.

Posted by Mikhail Loenko <ml...@gmail.com>.
2006/8/14, Alexei Zakharov <al...@gmail.com>:
> Ilya,
>
> > Thus test_setAsTextNull is redundant but
> > other two test cases have to be added.
>
> This is exactly what I mean.
> BTW, If you have more patches (or free time) for java.beans you are
> highly welcome. I have already tired from working on this package
> alone. :)

You are not alone :)

BTW, I've managed to fix most of the failures in
org.apache.harmony.beans.tests.java.beans.PropertyEditorSupportTest
they were caused by a bug in no-arg constructor of
PropertyEditorSupport
I'll commit the fix tomorrow. But there are two remaining failures related to
Proxy. That area is completely new for me and I guess it's caused
by incorrect process of Object's methods including equals().

Can you guys take a look?

Thanks,
Mikhail


>
> Regards,
>
> 2006/8/14, Ilya Okomin <il...@gmail.com>:
> > On 8/14/06, Alexei Zakharov <al...@gmail.com> wrote:
> > >
> > > Hi Ilya,
> > >
> > > FYI there is the existing class
> > > org.apache.harmony.beans.tests.java.beans.PropertyEditorSupportTest
> > > that contains all tests for PropertyEditorSupport. IMHO it would be
> > > better if you embed your tests into this class. BTW, you may also take
> > > a look at existent
> > > testSetAsText
> > > method since it seems it does the same job.
> >
> >
> > Thanks for suggested solution, I've already done it before read your message
> > :-)
> >
> > Hmmm..you right, existing one test testSetAsText is the same as
> > test_setAsTextNull.
> > Actually existing testSetAsText test doesn't cover the problem, according to
> > the documentation setAsText method behavior depends on the object state
> > (rather newValue field type), thus we have to take into account the type of
> > the newValue before setAsText call, if it is instanse of String or not. I've
> > created tests for these cases. Thus test_setAsTextNull is redundant but
> > other two test cases have to be added.
> >
> > Regards,
> > > Alexei
> > >
> > > P.S. thanks for the patch :)
> >
> >
> > Always welcome!
> >
> >  Thanks,
> > Ilya.
> >
> > 2006/8/14, Ilya Okomin <il...@gmail.com>:
> > > > Hello, Mikhail!
> > > >
> > > > Provided test case can work from classpath of course. It's my mistake,
> > > > thanks for noticed it. I'll prepare updated test case' patch with
> > > correct
> > > > packaging and taking into account exceptions handling recommendation
> > > ASAP.
> > > >
> > > > Thanks,
> > > > Ilya.
> > > >
> > > >
> > > > On 8/14/06, Mikhail Loenko <ml...@gmail.com> wrote:
> > > > >
> > > > > Hi Ilya
> > > > >
> > > > > Is it significant that the test code is in bootclasspath, or it can
> > > > > work from classpath?
> > > > >
> > > > > There were some discussions around the tests that might be
> > > interesting,
> > > > > please look at [1].
> > > > >
> > > > > Please look at the section
> > > > > Utilize JUnit's assert/fail methods and exception handling for clean
> > > test
> > > > > code
> > > > >
> > > > > This also might be useful [2]
> > > > >
> > > > > Thanks,
> > > > > Mikhail
> > > > >
> > > > > [1]
> > > > >
> > > http://mail-archives.apache.org/mod_mbox/incubator-harmony-dev/200603.mbox/%3c442B7857.7040002@gmail.com%3e
> > > > >
> > > > > [2]
> > > > >
> > > http://incubator.apache.org/harmony/subcomponents/classlibrary/agreements.html
> > > > >
> > > > >
> > > > > 2006/8/9, Ilya Okomin (JIRA) <ji...@apache.org>:
> > > > > > [classlib][beans]Harmony does not throw IllegalArgumentException for
> > > > > java.beans.PropertyEditorSupport.setAsText() while RI does.
> > > > > >
> > > > >
> > > --------------------------------------------------------------------------------------------------------------------------------
> > > > > >
> > > > > >                 Key: HARMONY-1113
> > > > > >                 URL:
> > > http://issues.apache.org/jira/browse/HARMONY-1113
> > > > > >             Project: Harmony
> > > > > >          Issue Type: Bug
> > > > > >          Components: Classlib
> > > > > >            Reporter: Ilya Okomin
> > > > > >            Priority: Minor
> > > > > >         Attachments: PropertyEditorSupport.patch,
> > > > > PropertyEditorSupportTest.patch
> > > > > >
> > > > > > Harmony does not throw IllegalArgumentException for
> > > > > java.beans.PropertyEditorSupport.setAsText(String) when parameter is
> > > > > invalid
> > > > > > while RI throws IllegalArgumentException.
> > > > > > Java 1.5.0 spec says:"May raise java.lang.IllegalArgumentExceptionif
> > > > > either the String is badly formatted or if this kind of property can't
> > > be
> > > > > expressed as text."
> > > > > > =============test.java==============
> > > > > > import java.beans.PropertyEditorSupport;
> > > > > >
> > > > > > public class test {
> > > > > >
> > > > > >    public static void main(String args[]) {
> > > > > >        PropertyEditorSupport undefPropertyEditorSupport = new
> > > > > > PropertyEditorSupport();
> > > > > >        try {
> > > > > >            System.err.print("value is null: ");
> > > > > >            undefPropertyEditorSupport.setAsText("string");
> > > > > >            System.err.println("failed: IllegalArgumentException
> > > > > expected, but
> > > > > > nothing was thrown!\n");
> > > > > >        } catch (IllegalArgumentException eE) {
> > > > > >            System.err.println("success!");
> > > > > >            eE.printStackTrace();
> > > > > >        }
> > > > > >
> > > > > >        PropertyEditorSupport defPropertyEditorSupport = new
> > > > > > PropertyEditorSupport();
> > > > > >        try {
> > > > > >            defPropertyEditorSupport.setValue(new Object());
> > > > > >
> > > > > >            System.err.print("value is Object: ");
> > > > > >            defPropertyEditorSupport.setAsText("string");
> > > > > >            System.err.println("failed: IllegalArgumentException
> > > > > expected, but
> > > > > > nothing was thrown!\n");
> > > > > >        } catch (IllegalArgumentException eE) {
> > > > > >            System.err.println("success!");
> > > > > >            eE.printStackTrace();
> > > > > >        }
> > > > > >
> > > > > >        defPropertyEditorSupport = new PropertyEditorSupport();
> > > > > >        try {
> > > > > >            defPropertyEditorSupport.setValue(new String());
> > > > > >            System.err.print("value is String: ");
> > > > > >            defPropertyEditorSupport.setAsText("string");
> > > > > >            System.err.println("success!");
> > > > > >        } catch (IllegalArgumentException eE) {
> > > > > >            System.err.println("failed!");
> > > > > >            eE.printStackTrace();
> > > > > >        }
> > > > > >
> > > > > >    }
> > > > > >
> > > > > > }
> > > > > > ===========================================
> > > > > > Output:
> > > > > >
> > > > > > Harmony:
> > > > > > java version "1.5.0"
> > > > > > pre-alpha : not complete or compatible
> > > > > > svn = r424571, (Jul 22 2006), Windows/ia32/msvc 1310, release build
> > > > > > http://incubator.apache.org/harmony
> > > > > >
> > > > > > value is null: failed: IllegalArgumentException expected, but
> > > nothing
> > > > > was
> > > > > > thrown!
> > > > > >
> > > > > > value is Object: failed: IllegalArgumentException expected, but
> > > nothing
> > > > > was
> > > > > > thrown!
> > > > > >
> > > > > > value is String: success!
> > > > > >
> > > > > > RI:
> > > > > > java version "1.5.0"
> > > > > > Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> > > > > > BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32,
> > > > > R25.0.0-75,
> > > > > > GC: System optimized over throughput (initial strategy
> > > singleparpar))
> > > > > >
> > > > > > value is null: success!
> > > > > > java.lang.IllegalArgumentException: string
> > > > > >        at
> > > > > > java.beans.PropertyEditorSupport.setAsText(
> > > PropertyEditorSupport.java
> > > > > :166)
> > > > > >        at bugzilla.Test9433.main(Test9433.java:11)
> > > > > > value is Object: success!
> > > > > > java.lang.IllegalArgumentException: string
> > > > > >        at
> > > > > > java.beans.PropertyEditorSupport.setAsText(
> > > PropertyEditorSupport.java
> > > > > :166)
> > > > > >        at bugzilla.Test9433.main(Test9433.java:23)
> > > > > > value is String: success!
> > > > > >
> > > > > > For this reason, suggested solution is to check in setAsText()
> > > method if
> > > > > the
> > > > > > value is instanse of String, in case of true - setValue, otherwise -
> > > > > throw an
> > > > > > IAE following the spec, "...this kind of property can't be expressed
> > > as
> > > > > text".
> > > > > >
> > > > > > Suggested patch and regression test can be found in the attach
> > > > > >
>
>
>
> --
> Alexei Zakharov,
> Intel Middleware Product Division
>
> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> For additional commands, e-mail: harmony-dev-help@incubator.apache.org
>
>

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Re: [jira] Created: (HARMONY-1113) [classlib][beans]Harmony does not throw IllegalArgumentException for java.beans.PropertyEditorSupport.setAsText() while RI does.

Posted by Alexei Zakharov <al...@gmail.com>.
Ilya,

> Thus test_setAsTextNull is redundant but
> other two test cases have to be added.

This is exactly what I mean.
BTW, If you have more patches (or free time) for java.beans you are
highly welcome. I have already tired from working on this package
alone. :)

Regards,

2006/8/14, Ilya Okomin <il...@gmail.com>:
> On 8/14/06, Alexei Zakharov <al...@gmail.com> wrote:
> >
> > Hi Ilya,
> >
> > FYI there is the existing class
> > org.apache.harmony.beans.tests.java.beans.PropertyEditorSupportTest
> > that contains all tests for PropertyEditorSupport. IMHO it would be
> > better if you embed your tests into this class. BTW, you may also take
> > a look at existent
> > testSetAsText
> > method since it seems it does the same job.
>
>
> Thanks for suggested solution, I've already done it before read your message
> :-)
>
> Hmmm..you right, existing one test testSetAsText is the same as
> test_setAsTextNull.
> Actually existing testSetAsText test doesn't cover the problem, according to
> the documentation setAsText method behavior depends on the object state
> (rather newValue field type), thus we have to take into account the type of
> the newValue before setAsText call, if it is instanse of String or not. I've
> created tests for these cases. Thus test_setAsTextNull is redundant but
> other two test cases have to be added.
>
> Regards,
> > Alexei
> >
> > P.S. thanks for the patch :)
>
>
> Always welcome!
>
>  Thanks,
> Ilya.
>
> 2006/8/14, Ilya Okomin <il...@gmail.com>:
> > > Hello, Mikhail!
> > >
> > > Provided test case can work from classpath of course. It's my mistake,
> > > thanks for noticed it. I'll prepare updated test case' patch with
> > correct
> > > packaging and taking into account exceptions handling recommendation
> > ASAP.
> > >
> > > Thanks,
> > > Ilya.
> > >
> > >
> > > On 8/14/06, Mikhail Loenko <ml...@gmail.com> wrote:
> > > >
> > > > Hi Ilya
> > > >
> > > > Is it significant that the test code is in bootclasspath, or it can
> > > > work from classpath?
> > > >
> > > > There were some discussions around the tests that might be
> > interesting,
> > > > please look at [1].
> > > >
> > > > Please look at the section
> > > > Utilize JUnit's assert/fail methods and exception handling for clean
> > test
> > > > code
> > > >
> > > > This also might be useful [2]
> > > >
> > > > Thanks,
> > > > Mikhail
> > > >
> > > > [1]
> > > >
> > http://mail-archives.apache.org/mod_mbox/incubator-harmony-dev/200603.mbox/%3c442B7857.7040002@gmail.com%3e
> > > >
> > > > [2]
> > > >
> > http://incubator.apache.org/harmony/subcomponents/classlibrary/agreements.html
> > > >
> > > >
> > > > 2006/8/9, Ilya Okomin (JIRA) <ji...@apache.org>:
> > > > > [classlib][beans]Harmony does not throw IllegalArgumentException for
> > > > java.beans.PropertyEditorSupport.setAsText() while RI does.
> > > > >
> > > >
> > --------------------------------------------------------------------------------------------------------------------------------
> > > > >
> > > > >                 Key: HARMONY-1113
> > > > >                 URL:
> > http://issues.apache.org/jira/browse/HARMONY-1113
> > > > >             Project: Harmony
> > > > >          Issue Type: Bug
> > > > >          Components: Classlib
> > > > >            Reporter: Ilya Okomin
> > > > >            Priority: Minor
> > > > >         Attachments: PropertyEditorSupport.patch,
> > > > PropertyEditorSupportTest.patch
> > > > >
> > > > > Harmony does not throw IllegalArgumentException for
> > > > java.beans.PropertyEditorSupport.setAsText(String) when parameter is
> > > > invalid
> > > > > while RI throws IllegalArgumentException.
> > > > > Java 1.5.0 spec says:"May raise java.lang.IllegalArgumentExceptionif
> > > > either the String is badly formatted or if this kind of property can't
> > be
> > > > expressed as text."
> > > > > =============test.java==============
> > > > > import java.beans.PropertyEditorSupport;
> > > > >
> > > > > public class test {
> > > > >
> > > > >    public static void main(String args[]) {
> > > > >        PropertyEditorSupport undefPropertyEditorSupport = new
> > > > > PropertyEditorSupport();
> > > > >        try {
> > > > >            System.err.print("value is null: ");
> > > > >            undefPropertyEditorSupport.setAsText("string");
> > > > >            System.err.println("failed: IllegalArgumentException
> > > > expected, but
> > > > > nothing was thrown!\n");
> > > > >        } catch (IllegalArgumentException eE) {
> > > > >            System.err.println("success!");
> > > > >            eE.printStackTrace();
> > > > >        }
> > > > >
> > > > >        PropertyEditorSupport defPropertyEditorSupport = new
> > > > > PropertyEditorSupport();
> > > > >        try {
> > > > >            defPropertyEditorSupport.setValue(new Object());
> > > > >
> > > > >            System.err.print("value is Object: ");
> > > > >            defPropertyEditorSupport.setAsText("string");
> > > > >            System.err.println("failed: IllegalArgumentException
> > > > expected, but
> > > > > nothing was thrown!\n");
> > > > >        } catch (IllegalArgumentException eE) {
> > > > >            System.err.println("success!");
> > > > >            eE.printStackTrace();
> > > > >        }
> > > > >
> > > > >        defPropertyEditorSupport = new PropertyEditorSupport();
> > > > >        try {
> > > > >            defPropertyEditorSupport.setValue(new String());
> > > > >            System.err.print("value is String: ");
> > > > >            defPropertyEditorSupport.setAsText("string");
> > > > >            System.err.println("success!");
> > > > >        } catch (IllegalArgumentException eE) {
> > > > >            System.err.println("failed!");
> > > > >            eE.printStackTrace();
> > > > >        }
> > > > >
> > > > >    }
> > > > >
> > > > > }
> > > > > ===========================================
> > > > > Output:
> > > > >
> > > > > Harmony:
> > > > > java version "1.5.0"
> > > > > pre-alpha : not complete or compatible
> > > > > svn = r424571, (Jul 22 2006), Windows/ia32/msvc 1310, release build
> > > > > http://incubator.apache.org/harmony
> > > > >
> > > > > value is null: failed: IllegalArgumentException expected, but
> > nothing
> > > > was
> > > > > thrown!
> > > > >
> > > > > value is Object: failed: IllegalArgumentException expected, but
> > nothing
> > > > was
> > > > > thrown!
> > > > >
> > > > > value is String: success!
> > > > >
> > > > > RI:
> > > > > java version "1.5.0"
> > > > > Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> > > > > BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32,
> > > > R25.0.0-75,
> > > > > GC: System optimized over throughput (initial strategy
> > singleparpar))
> > > > >
> > > > > value is null: success!
> > > > > java.lang.IllegalArgumentException: string
> > > > >        at
> > > > > java.beans.PropertyEditorSupport.setAsText(
> > PropertyEditorSupport.java
> > > > :166)
> > > > >        at bugzilla.Test9433.main(Test9433.java:11)
> > > > > value is Object: success!
> > > > > java.lang.IllegalArgumentException: string
> > > > >        at
> > > > > java.beans.PropertyEditorSupport.setAsText(
> > PropertyEditorSupport.java
> > > > :166)
> > > > >        at bugzilla.Test9433.main(Test9433.java:23)
> > > > > value is String: success!
> > > > >
> > > > > For this reason, suggested solution is to check in setAsText()
> > method if
> > > > the
> > > > > value is instanse of String, in case of true - setValue, otherwise -
> > > > throw an
> > > > > IAE following the spec, "...this kind of property can't be expressed
> > as
> > > > text".
> > > > >
> > > > > Suggested patch and regression test can be found in the attach
> > > > >



-- 
Alexei Zakharov,
Intel Middleware Product Division

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Re: [jira] Created: (HARMONY-1113) [classlib][beans]Harmony does not throw IllegalArgumentException for java.beans.PropertyEditorSupport.setAsText() while RI does.

Posted by Ilya Okomin <il...@gmail.com>.
On 8/14/06, Alexei Zakharov <al...@gmail.com> wrote:
>
> Hi Ilya,
>
> FYI there is the existing class
> org.apache.harmony.beans.tests.java.beans.PropertyEditorSupportTest
> that contains all tests for PropertyEditorSupport. IMHO it would be
> better if you embed your tests into this class. BTW, you may also take
> a look at existent
> testSetAsText
> method since it seems it does the same job.


Thanks for suggested solution, I've already done it before read your message
:-)

Hmmm..you right, existing one test testSetAsText is the same as
test_setAsTextNull.
Actually existing testSetAsText test doesn't cover the problem, according to
the documentation setAsText method behavior depends on the object state
(rather newValue field type), thus we have to take into account the type of
the newValue before setAsText call, if it is instanse of String or not. I've
created tests for these cases. Thus test_setAsTextNull is redundant but
other two test cases have to be added.

Regards,
> Alexei
>
> P.S. thanks for the patch :)


Always welcome!

 Thanks,
Ilya.

2006/8/14, Ilya Okomin <il...@gmail.com>:
> > Hello, Mikhail!
> >
> > Provided test case can work from classpath of course. It's my mistake,
> > thanks for noticed it. I'll prepare updated test case' patch with
> correct
> > packaging and taking into account exceptions handling recommendation
> ASAP.
> >
> > Thanks,
> > Ilya.
> >
> >
> > On 8/14/06, Mikhail Loenko <ml...@gmail.com> wrote:
> > >
> > > Hi Ilya
> > >
> > > Is it significant that the test code is in bootclasspath, or it can
> > > work from classpath?
> > >
> > > There were some discussions around the tests that might be
> interesting,
> > > please look at [1].
> > >
> > > Please look at the section
> > > Utilize JUnit's assert/fail methods and exception handling for clean
> test
> > > code
> > >
> > > This also might be useful [2]
> > >
> > > Thanks,
> > > Mikhail
> > >
> > > [1]
> > >
> http://mail-archives.apache.org/mod_mbox/incubator-harmony-dev/200603.mbox/%3c442B7857.7040002@gmail.com%3e
> > >
> > > [2]
> > >
> http://incubator.apache.org/harmony/subcomponents/classlibrary/agreements.html
> > >
> > >
> > > 2006/8/9, Ilya Okomin (JIRA) <ji...@apache.org>:
> > > > [classlib][beans]Harmony does not throw IllegalArgumentException for
> > > java.beans.PropertyEditorSupport.setAsText() while RI does.
> > > >
> > >
> --------------------------------------------------------------------------------------------------------------------------------
> > > >
> > > >                 Key: HARMONY-1113
> > > >                 URL:
> http://issues.apache.org/jira/browse/HARMONY-1113
> > > >             Project: Harmony
> > > >          Issue Type: Bug
> > > >          Components: Classlib
> > > >            Reporter: Ilya Okomin
> > > >            Priority: Minor
> > > >         Attachments: PropertyEditorSupport.patch,
> > > PropertyEditorSupportTest.patch
> > > >
> > > > Harmony does not throw IllegalArgumentException for
> > > java.beans.PropertyEditorSupport.setAsText(String) when parameter is
> > > invalid
> > > > while RI throws IllegalArgumentException.
> > > > Java 1.5.0 spec says:"May raise java.lang.IllegalArgumentExceptionif
> > > either the String is badly formatted or if this kind of property can't
> be
> > > expressed as text."
> > > > =============test.java==============
> > > > import java.beans.PropertyEditorSupport;
> > > >
> > > > public class test {
> > > >
> > > >    public static void main(String args[]) {
> > > >        PropertyEditorSupport undefPropertyEditorSupport = new
> > > > PropertyEditorSupport();
> > > >        try {
> > > >            System.err.print("value is null: ");
> > > >            undefPropertyEditorSupport.setAsText("string");
> > > >            System.err.println("failed: IllegalArgumentException
> > > expected, but
> > > > nothing was thrown!\n");
> > > >        } catch (IllegalArgumentException eE) {
> > > >            System.err.println("success!");
> > > >            eE.printStackTrace();
> > > >        }
> > > >
> > > >        PropertyEditorSupport defPropertyEditorSupport = new
> > > > PropertyEditorSupport();
> > > >        try {
> > > >            defPropertyEditorSupport.setValue(new Object());
> > > >
> > > >            System.err.print("value is Object: ");
> > > >            defPropertyEditorSupport.setAsText("string");
> > > >            System.err.println("failed: IllegalArgumentException
> > > expected, but
> > > > nothing was thrown!\n");
> > > >        } catch (IllegalArgumentException eE) {
> > > >            System.err.println("success!");
> > > >            eE.printStackTrace();
> > > >        }
> > > >
> > > >        defPropertyEditorSupport = new PropertyEditorSupport();
> > > >        try {
> > > >            defPropertyEditorSupport.setValue(new String());
> > > >            System.err.print("value is String: ");
> > > >            defPropertyEditorSupport.setAsText("string");
> > > >            System.err.println("success!");
> > > >        } catch (IllegalArgumentException eE) {
> > > >            System.err.println("failed!");
> > > >            eE.printStackTrace();
> > > >        }
> > > >
> > > >    }
> > > >
> > > > }
> > > > ===========================================
> > > > Output:
> > > >
> > > > Harmony:
> > > > java version "1.5.0"
> > > > pre-alpha : not complete or compatible
> > > > svn = r424571, (Jul 22 2006), Windows/ia32/msvc 1310, release build
> > > > http://incubator.apache.org/harmony
> > > >
> > > > value is null: failed: IllegalArgumentException expected, but
> nothing
> > > was
> > > > thrown!
> > > >
> > > > value is Object: failed: IllegalArgumentException expected, but
> nothing
> > > was
> > > > thrown!
> > > >
> > > > value is String: success!
> > > >
> > > > RI:
> > > > java version "1.5.0"
> > > > Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> > > > BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32,
> > > R25.0.0-75,
> > > > GC: System optimized over throughput (initial strategy
> singleparpar))
> > > >
> > > > value is null: success!
> > > > java.lang.IllegalArgumentException: string
> > > >        at
> > > > java.beans.PropertyEditorSupport.setAsText(
> PropertyEditorSupport.java
> > > :166)
> > > >        at bugzilla.Test9433.main(Test9433.java:11)
> > > > value is Object: success!
> > > > java.lang.IllegalArgumentException: string
> > > >        at
> > > > java.beans.PropertyEditorSupport.setAsText(
> PropertyEditorSupport.java
> > > :166)
> > > >        at bugzilla.Test9433.main(Test9433.java:23)
> > > > value is String: success!
> > > >
> > > > For this reason, suggested solution is to check in setAsText()
> method if
> > > the
> > > > value is instanse of String, in case of true - setValue, otherwise -
> > > throw an
> > > > IAE following the spec, "...this kind of property can't be expressed
> as
> > > text".
> > > >
> > > > Suggested patch and regression test can be found in the attach
> > > >
>
> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> For additional commands, e-mail: harmony-dev-help@incubator.apache.org
>
>


-- 
--
Ilya Okomin
Intel Middleware Products Division

Re: [jira] Created: (HARMONY-1113) [classlib][beans]Harmony does not throw IllegalArgumentException for java.beans.PropertyEditorSupport.setAsText() while RI does.

Posted by Alexei Zakharov <al...@gmail.com>.
Hi Ilya,

FYI there is the existing class
org.apache.harmony.beans.tests.java.beans.PropertyEditorSupportTest
that contains all tests for PropertyEditorSupport. IMHO it would be
better if you embed your tests into this class. BTW, you may also take
a look at existent
testSetAsText
method since it seems it does the same job.

Regards,
Alexei

P.S. thanks for the patch :)


2006/8/14, Ilya Okomin <il...@gmail.com>:
> Hello, Mikhail!
>
> Provided test case can work from classpath of course. It's my mistake,
> thanks for noticed it. I'll prepare updated test case' patch with correct
> packaging and taking into account exceptions handling recommendation ASAP.
>
> Thanks,
> Ilya.
>
>
> On 8/14/06, Mikhail Loenko <ml...@gmail.com> wrote:
> >
> > Hi Ilya
> >
> > Is it significant that the test code is in bootclasspath, or it can
> > work from classpath?
> >
> > There were some discussions around the tests that might be interesting,
> > please look at [1].
> >
> > Please look at the section
> > Utilize JUnit's assert/fail methods and exception handling for clean test
> > code
> >
> > This also might be useful [2]
> >
> > Thanks,
> > Mikhail
> >
> > [1]
> > http://mail-archives.apache.org/mod_mbox/incubator-harmony-dev/200603.mbox/%3c442B7857.7040002@gmail.com%3e
> >
> > [2]
> > http://incubator.apache.org/harmony/subcomponents/classlibrary/agreements.html
> >
> >
> > 2006/8/9, Ilya Okomin (JIRA) <ji...@apache.org>:
> > > [classlib][beans]Harmony does not throw IllegalArgumentException for
> > java.beans.PropertyEditorSupport.setAsText() while RI does.
> > >
> > --------------------------------------------------------------------------------------------------------------------------------
> > >
> > >                 Key: HARMONY-1113
> > >                 URL: http://issues.apache.org/jira/browse/HARMONY-1113
> > >             Project: Harmony
> > >          Issue Type: Bug
> > >          Components: Classlib
> > >            Reporter: Ilya Okomin
> > >            Priority: Minor
> > >         Attachments: PropertyEditorSupport.patch,
> > PropertyEditorSupportTest.patch
> > >
> > > Harmony does not throw IllegalArgumentException for
> > java.beans.PropertyEditorSupport.setAsText(String) when parameter is
> > invalid
> > > while RI throws IllegalArgumentException.
> > > Java 1.5.0 spec says:"May raise java.lang.IllegalArgumentException if
> > either the String is badly formatted or if this kind of property can't be
> > expressed as text."
> > > =============test.java==============
> > > import java.beans.PropertyEditorSupport;
> > >
> > > public class test {
> > >
> > >    public static void main(String args[]) {
> > >        PropertyEditorSupport undefPropertyEditorSupport = new
> > > PropertyEditorSupport();
> > >        try {
> > >            System.err.print("value is null: ");
> > >            undefPropertyEditorSupport.setAsText("string");
> > >            System.err.println("failed: IllegalArgumentException
> > expected, but
> > > nothing was thrown!\n");
> > >        } catch (IllegalArgumentException eE) {
> > >            System.err.println("success!");
> > >            eE.printStackTrace();
> > >        }
> > >
> > >        PropertyEditorSupport defPropertyEditorSupport = new
> > > PropertyEditorSupport();
> > >        try {
> > >            defPropertyEditorSupport.setValue(new Object());
> > >
> > >            System.err.print("value is Object: ");
> > >            defPropertyEditorSupport.setAsText("string");
> > >            System.err.println("failed: IllegalArgumentException
> > expected, but
> > > nothing was thrown!\n");
> > >        } catch (IllegalArgumentException eE) {
> > >            System.err.println("success!");
> > >            eE.printStackTrace();
> > >        }
> > >
> > >        defPropertyEditorSupport = new PropertyEditorSupport();
> > >        try {
> > >            defPropertyEditorSupport.setValue(new String());
> > >            System.err.print("value is String: ");
> > >            defPropertyEditorSupport.setAsText("string");
> > >            System.err.println("success!");
> > >        } catch (IllegalArgumentException eE) {
> > >            System.err.println("failed!");
> > >            eE.printStackTrace();
> > >        }
> > >
> > >    }
> > >
> > > }
> > > ===========================================
> > > Output:
> > >
> > > Harmony:
> > > java version "1.5.0"
> > > pre-alpha : not complete or compatible
> > > svn = r424571, (Jul 22 2006), Windows/ia32/msvc 1310, release build
> > > http://incubator.apache.org/harmony
> > >
> > > value is null: failed: IllegalArgumentException expected, but nothing
> > was
> > > thrown!
> > >
> > > value is Object: failed: IllegalArgumentException expected, but nothing
> > was
> > > thrown!
> > >
> > > value is String: success!
> > >
> > > RI:
> > > java version "1.5.0"
> > > Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> > > BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32,
> > R25.0.0-75,
> > > GC: System optimized over throughput (initial strategy singleparpar))
> > >
> > > value is null: success!
> > > java.lang.IllegalArgumentException: string
> > >        at
> > > java.beans.PropertyEditorSupport.setAsText(PropertyEditorSupport.java
> > :166)
> > >        at bugzilla.Test9433.main(Test9433.java:11)
> > > value is Object: success!
> > > java.lang.IllegalArgumentException: string
> > >        at
> > > java.beans.PropertyEditorSupport.setAsText(PropertyEditorSupport.java
> > :166)
> > >        at bugzilla.Test9433.main(Test9433.java:23)
> > > value is String: success!
> > >
> > > For this reason, suggested solution is to check in setAsText() method if
> > the
> > > value is instanse of String, in case of true - setValue, otherwise -
> > throw an
> > > IAE following the spec, "...this kind of property can't be expressed as
> > text".
> > >
> > > Suggested patch and regression test can be found in the attach
> > >

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Re: [jira] Created: (HARMONY-1113) [classlib][beans]Harmony does not throw IllegalArgumentException for java.beans.PropertyEditorSupport.setAsText() while RI does.

Posted by Ilya Okomin <il...@gmail.com>.
Hello, Mikhail!

Provided test case can work from classpath of course. It's my mistake,
thanks for noticed it. I'll prepare updated test case' patch with correct
packaging and taking into account exceptions handling recommendation ASAP.

Thanks,
Ilya.


On 8/14/06, Mikhail Loenko <ml...@gmail.com> wrote:
>
> Hi Ilya
>
> Is it significant that the test code is in bootclasspath, or it can
> work from classpath?
>
> There were some discussions around the tests that might be interesting,
> please look at [1].
>
> Please look at the section
> Utilize JUnit's assert/fail methods and exception handling for clean test
> code
>
> This also might be useful [2]
>
> Thanks,
> Mikhail
>
> [1]
> http://mail-archives.apache.org/mod_mbox/incubator-harmony-dev/200603.mbox/%3c442B7857.7040002@gmail.com%3e
>
> [2]
> http://incubator.apache.org/harmony/subcomponents/classlibrary/agreements.html
>
>
> 2006/8/9, Ilya Okomin (JIRA) <ji...@apache.org>:
> > [classlib][beans]Harmony does not throw IllegalArgumentException for
> java.beans.PropertyEditorSupport.setAsText() while RI does.
> >
> --------------------------------------------------------------------------------------------------------------------------------
> >
> >                 Key: HARMONY-1113
> >                 URL: http://issues.apache.org/jira/browse/HARMONY-1113
> >             Project: Harmony
> >          Issue Type: Bug
> >          Components: Classlib
> >            Reporter: Ilya Okomin
> >            Priority: Minor
> >         Attachments: PropertyEditorSupport.patch,
> PropertyEditorSupportTest.patch
> >
> > Harmony does not throw IllegalArgumentException for
> java.beans.PropertyEditorSupport.setAsText(String) when parameter is
> invalid
> > while RI throws IllegalArgumentException.
> > Java 1.5.0 spec says:"May raise java.lang.IllegalArgumentException if
> either the String is badly formatted or if this kind of property can't be
> expressed as text."
> > =============test.java==============
> > import java.beans.PropertyEditorSupport;
> >
> > public class test {
> >
> >    public static void main(String args[]) {
> >        PropertyEditorSupport undefPropertyEditorSupport = new
> > PropertyEditorSupport();
> >        try {
> >            System.err.print("value is null: ");
> >            undefPropertyEditorSupport.setAsText("string");
> >            System.err.println("failed: IllegalArgumentException
> expected, but
> > nothing was thrown!\n");
> >        } catch (IllegalArgumentException eE) {
> >            System.err.println("success!");
> >            eE.printStackTrace();
> >        }
> >
> >        PropertyEditorSupport defPropertyEditorSupport = new
> > PropertyEditorSupport();
> >        try {
> >            defPropertyEditorSupport.setValue(new Object());
> >
> >            System.err.print("value is Object: ");
> >            defPropertyEditorSupport.setAsText("string");
> >            System.err.println("failed: IllegalArgumentException
> expected, but
> > nothing was thrown!\n");
> >        } catch (IllegalArgumentException eE) {
> >            System.err.println("success!");
> >            eE.printStackTrace();
> >        }
> >
> >        defPropertyEditorSupport = new PropertyEditorSupport();
> >        try {
> >            defPropertyEditorSupport.setValue(new String());
> >            System.err.print("value is String: ");
> >            defPropertyEditorSupport.setAsText("string");
> >            System.err.println("success!");
> >        } catch (IllegalArgumentException eE) {
> >            System.err.println("failed!");
> >            eE.printStackTrace();
> >        }
> >
> >    }
> >
> > }
> > ===========================================
> > Output:
> >
> > Harmony:
> > java version "1.5.0"
> > pre-alpha : not complete or compatible
> > svn = r424571, (Jul 22 2006), Windows/ia32/msvc 1310, release build
> > http://incubator.apache.org/harmony
> >
> > value is null: failed: IllegalArgumentException expected, but nothing
> was
> > thrown!
> >
> > value is Object: failed: IllegalArgumentException expected, but nothing
> was
> > thrown!
> >
> > value is String: success!
> >
> > RI:
> > java version "1.5.0"
> > Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> > BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32,
> R25.0.0-75,
> > GC: System optimized over throughput (initial strategy singleparpar))
> >
> > value is null: success!
> > java.lang.IllegalArgumentException: string
> >        at
> > java.beans.PropertyEditorSupport.setAsText(PropertyEditorSupport.java
> :166)
> >        at bugzilla.Test9433.main(Test9433.java:11)
> > value is Object: success!
> > java.lang.IllegalArgumentException: string
> >        at
> > java.beans.PropertyEditorSupport.setAsText(PropertyEditorSupport.java
> :166)
> >        at bugzilla.Test9433.main(Test9433.java:23)
> > value is String: success!
> >
> > For this reason, suggested solution is to check in setAsText() method if
> the
> > value is instanse of String, in case of true - setValue, otherwise -
> throw an
> > IAE following the spec, "...this kind of property can't be expressed as
> text".
> >
> > Suggested patch and regression test can be found in the attach
> >
> >
> > --
> > 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
> >
> >
> >
>
> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> For additional commands, e-mail: harmony-dev-help@incubator.apache.org
>
>


-- 
--
Ilya Okomin
Intel Middleware Products Division

Re: [jira] Created: (HARMONY-1113) [classlib][beans]Harmony does not throw IllegalArgumentException for java.beans.PropertyEditorSupport.setAsText() while RI does.

Posted by Stepan Mishura <st...@gmail.com>.
BTW, don't forget to grant license to ASF.

Thanks,
Stepan.


On 8/14/06, Mikhail Loenko wrote:
>
> Hi Ilya
>
> Is it significant that the test code is in bootclasspath, or it can
> work from classpath?
>
> There were some discussions around the tests that might be interesting,
> please look at [1].
>
> Please look at the section
> Utilize JUnit's assert/fail methods and exception handling for clean test
> code
>
> This also might be useful [2]
>
> Thanks,
> Mikhail
>
> [1]
> http://mail-archives.apache.org/mod_mbox/incubator-harmony-dev/200603.mbox/%3c442B7857.7040002@gmail.com%3e
>
> [2]
> http://incubator.apache.org/harmony/subcomponents/classlibrary/agreements.html
>
>
> 2006/8/9, Ilya Okomin (JIRA) <ji...@apache.org>:
> > [classlib][beans]Harmony does not throw IllegalArgumentException for
> java.beans.PropertyEditorSupport.setAsText() while RI does.
> >
> --------------------------------------------------------------------------------------------------------------------------------
> >
> >                 Key: HARMONY-1113
> >                 URL: http://issues.apache.org/jira/browse/HARMONY-1113
> >             Project: Harmony
> >          Issue Type: Bug
> >          Components: Classlib
> >            Reporter: Ilya Okomin
> >            Priority: Minor
> >         Attachments: PropertyEditorSupport.patch,
> PropertyEditorSupportTest.patch
> >
> > Harmony does not throw IllegalArgumentException for
> java.beans.PropertyEditorSupport.setAsText(String) when parameter is
> invalid
> > while RI throws IllegalArgumentException.
> > Java 1.5.0 spec says:"May raise java.lang.IllegalArgumentException if
> either the String is badly formatted or if this kind of property can't be
> expressed as text."
> > =============test.java==============
> > import java.beans.PropertyEditorSupport;
> >
> > public class test {
> >
> >    public static void main(String args[]) {
> >        PropertyEditorSupport undefPropertyEditorSupport = new
> > PropertyEditorSupport();
> >        try {
> >            System.err.print("value is null: ");
> >            undefPropertyEditorSupport.setAsText("string");
> >            System.err.println("failed: IllegalArgumentException
> expected, but
> > nothing was thrown!\n");
> >        } catch (IllegalArgumentException eE) {
> >            System.err.println("success!");
> >            eE.printStackTrace();
> >        }
> >
> >        PropertyEditorSupport defPropertyEditorSupport = new
> > PropertyEditorSupport();
> >        try {
> >            defPropertyEditorSupport.setValue(new Object());
> >
> >            System.err.print("value is Object: ");
> >            defPropertyEditorSupport.setAsText("string");
> >            System.err.println("failed: IllegalArgumentException
> expected, but
> > nothing was thrown!\n");
> >        } catch (IllegalArgumentException eE) {
> >            System.err.println("success!");
> >            eE.printStackTrace();
> >        }
> >
> >        defPropertyEditorSupport = new PropertyEditorSupport();
> >        try {
> >            defPropertyEditorSupport.setValue(new String());
> >            System.err.print("value is String: ");
> >            defPropertyEditorSupport.setAsText("string");
> >            System.err.println("success!");
> >        } catch (IllegalArgumentException eE) {
> >            System.err.println("failed!");
> >            eE.printStackTrace();
> >        }
> >
> >    }
> >
> > }
> > ===========================================
> > Output:
> >
> > Harmony:
> > java version "1.5.0"
> > pre-alpha : not complete or compatible
> > svn = r424571, (Jul 22 2006), Windows/ia32/msvc 1310, release build
> > http://incubator.apache.org/harmony
> >
> > value is null: failed: IllegalArgumentException expected, but nothing
> was
> > thrown!
> >
> > value is Object: failed: IllegalArgumentException expected, but nothing
> was
> > thrown!
> >
> > value is String: success!
> >
> > RI:
> > java version "1.5.0"
> > Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
> > BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32,
> R25.0.0-75,
> > GC: System optimized over throughput (initial strategy singleparpar))
> >
> > value is null: success!
> > java.lang.IllegalArgumentException: string
> >        at
> > java.beans.PropertyEditorSupport.setAsText(PropertyEditorSupport.java
> :166)
> >        at bugzilla.Test9433.main(Test9433.java:11)
> > value is Object: success!
> > java.lang.IllegalArgumentException: string
> >        at
> > java.beans.PropertyEditorSupport.setAsText(PropertyEditorSupport.java
> :166)
> >        at bugzilla.Test9433.main(Test9433.java:23)
> > value is String: success!
> >
> > For this reason, suggested solution is to check in setAsText() method if
> the
> > value is instanse of String, in case of true - setValue, otherwise -
> throw an
> > IAE following the spec, "...this kind of property can't be expressed as
> text".
> >
> > Suggested patch and regression test can be found in the attach
> >
> >
> > --
> > 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
> >
> >
> >
>
> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> For additional commands, e-mail: harmony-dev-help@incubator.apache.org
>
>


-- 
Thanks,
Stepan Mishura
Intel Middleware Products Division

------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org