harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nathan Beyer (JIRA)" <j...@apache.org>
Subject [jira] Resolved: (HARMONY-989) [classlib][sound] Some improvements/fix bugs in classes ShortMessage, MidiMessage, MetaMessage
Date Sun, 30 Jul 2006 20:14:14 GMT
     [ http://issues.apache.org/jira/browse/HARMONY-989?page=all ]

Nathan Beyer resolved HARMONY-989.

    Resolution: Fixed

Applied a modified version of the path at r426930. Please verify it.

Additionally, please consider reworking the test cases to correctly use the JUnit assert methods's
parameters. The first parameter should be the expected value and the second parameter should
be the test value. Also, you don't need to test behaviors that are outside of these APIs.
For example, testing that an array access that's out of bounds throws an exception. That's
something to test in the array tests, which are likely to happen in the VM code. All you need
to test here is that an array of a certain size is returned.

> [classlib][sound] Some improvements/fix bugs in classes ShortMessage, MidiMessage, MetaMessage
> ----------------------------------------------------------------------------------------------
>                 Key: HARMONY-989
>                 URL: http://issues.apache.org/jira/browse/HARMONY-989
>             Project: Harmony
>          Issue Type: Improvement
>          Components: Classlib
>            Reporter: Evgeny S. Sidorenko
>         Assigned To: Nathan Beyer
>         Attachments: update.classes.patch.txt, update.tests.patch.txt
> I found new situation when this classes behave as not RI.
> I had the next test code (for example, I use MetaMessage here, but it is applicable for
other classes):
> import javax.sound.midi.MetaMessage;
> import javax.sound.midi.InvalidMidiDataException;
> import junit.framework.TestCase;
> public class MetaMessageTest extends TestCase {
>  static class MetaMessage1 extends MetaMessage {
>          MetaMessage1(byte[] data) {
>              super(data);
>          }
>      }
>  byte[] bt = new byte[] {1, 2, 3, 4};
>  MetaMessage1 meta = new MetaMessage(bt);
>  assertEquals(1, meta.getMessage()[0]);
>  ...
>  assertEquals(4, meta.getMessage()[3]);
>  bt[0] = 10;
>  ...
>  bt[3] = 40;
>  assertEquals(10, meta.getMessage()[0]);
>  ...
>  assertEquals(40, meta.getMessage()[3]);
> }
> I.e. when I change array 'bt', condition of class meta was changed in the RI! But in
my old implementation condition doesn't changed. So, this patch, update.classes.patch.txt,
correct this problem.
> And patch update.tests.patch.txt add this situation to the tests.

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


View raw message