You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by jo...@apache.org on 2008/11/05 07:16:00 UTC
svn commit: r711515 -
/poi/trunk/src/testcases/org/apache/poi/hssf/record/TestUnicodeString.java
Author: josh
Date: Tue Nov 4 22:15:59 2008
New Revision: 711515
URL: http://svn.apache.org/viewvc?rev=711515&view=rev
Log:
Refactored test case
Modified:
poi/trunk/src/testcases/org/apache/poi/hssf/record/TestUnicodeString.java
Modified: poi/trunk/src/testcases/org/apache/poi/hssf/record/TestUnicodeString.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/record/TestUnicodeString.java?rev=711515&r1=711514&r2=711515&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/record/TestUnicodeString.java (original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/record/TestUnicodeString.java Tue Nov 4 22:15:59 2008
@@ -15,11 +15,8 @@
limitations under the License.
==================================================================== */
-
package org.apache.poi.hssf.record;
-import org.apache.poi.util.HexRead;
-
import junit.framework.TestCase;
/**
@@ -30,18 +27,20 @@
public final class TestUnicodeString extends TestCase {
+ private static void confirmSize(int expectedSize, UnicodeString s) {
+ UnicodeString.UnicodeRecordStats stats = new UnicodeString.UnicodeRecordStats();
+ s.getRecordSize(stats);
+ assertEquals(expectedSize, stats.recordSize);
+ }
+
public void testSmallStringSize() {
//Test a basic string
UnicodeString s = makeUnicodeString("Test");
- UnicodeString.UnicodeRecordStats stats = new UnicodeString.UnicodeRecordStats();
- s.getRecordSize(stats);
- assertEquals(7, stats.recordSize);
+ confirmSize(7, s);
//Test a small string that is uncompressed
s.setOptionFlags((byte)0x01);
- stats = new UnicodeString.UnicodeRecordStats();
- s.getRecordSize(stats);
- assertEquals(11, stats.recordSize);
+ confirmSize(11, s);
//Test a compressed small string that has rich text formatting
s.setOptionFlags((byte)0x8);
@@ -49,45 +48,33 @@
s.addFormatRun(r);
UnicodeString.FormatRun r2 = new UnicodeString.FormatRun((short)2,(short)2);
s.addFormatRun(r2);
- stats = new UnicodeString.UnicodeRecordStats();
- s.getRecordSize(stats);
- assertEquals(17, stats.recordSize);
+ confirmSize(17, s);
//Test a uncompressed small string that has rich text formatting
s.setOptionFlags((byte)0x9);
- stats = new UnicodeString.UnicodeRecordStats();
- s.getRecordSize(stats);
- assertEquals(21, stats.recordSize);
+ confirmSize(21, s);
//Test a compressed small string that has rich text and extended text
s.setOptionFlags((byte)0xC);
s.setExtendedRst(new byte[]{(byte)0x1,(byte)0x2,(byte)0x3,(byte)0x4,(byte)0x5});
- stats = new UnicodeString.UnicodeRecordStats();
- s.getRecordSize(stats);
- assertEquals(26, stats.recordSize);
+ confirmSize(26, s);
//Test a uncompressed small string that has rich text and extended text
s.setOptionFlags((byte)0xD);
- stats = new UnicodeString.UnicodeRecordStats();
- s.getRecordSize(stats);
- assertEquals(30, stats.recordSize);
+ confirmSize(30, s);
}
public void testPerfectStringSize() {
//Test a basic string
UnicodeString s = makeUnicodeString(SSTRecord.MAX_RECORD_SIZE-2-1);
- UnicodeString.UnicodeRecordStats stats = new UnicodeString.UnicodeRecordStats();
- s.getRecordSize(stats);
- assertEquals(SSTRecord.MAX_RECORD_SIZE, stats.recordSize);
+ confirmSize(SSTRecord.MAX_RECORD_SIZE, s);
//Test an uncompressed string
//Note that we can only ever get to a maximim size of 8227 since an uncompressed
//string is writing double bytes.
s = makeUnicodeString((SSTRecord.MAX_RECORD_SIZE-2-1)/2);
s.setOptionFlags((byte)0x1);
- stats = new UnicodeString.UnicodeRecordStats();
- s.getRecordSize(stats);
- assertEquals(SSTRecord.MAX_RECORD_SIZE-1, stats.recordSize);
+ confirmSize(SSTRecord.MAX_RECORD_SIZE-1, s);
}
public void testPerfectRichStringSize() {
@@ -95,10 +82,8 @@
UnicodeString s = makeUnicodeString(SSTRecord.MAX_RECORD_SIZE-2-1-8-2);
s.addFormatRun(new UnicodeString.FormatRun((short)1,(short)0));
s.addFormatRun(new UnicodeString.FormatRun((short)2,(short)1));
- UnicodeString.UnicodeRecordStats stats = new UnicodeString.UnicodeRecordStats();
s.setOptionFlags((byte)0x8);
- s.getRecordSize(stats);
- assertEquals(SSTRecord.MAX_RECORD_SIZE, stats.recordSize);
+ confirmSize(SSTRecord.MAX_RECORD_SIZE, s);
//Test an uncompressed rich text string
//Note that we can only ever get to a maximim size of 8227 since an uncompressed
@@ -107,17 +92,13 @@
s.addFormatRun(new UnicodeString.FormatRun((short)1,(short)0));
s.addFormatRun(new UnicodeString.FormatRun((short)2,(short)1));
s.setOptionFlags((byte)0x9);
- stats = new UnicodeString.UnicodeRecordStats();
- s.getRecordSize(stats);
- assertEquals(SSTRecord.MAX_RECORD_SIZE-1, stats.recordSize);
+ confirmSize(SSTRecord.MAX_RECORD_SIZE-1, s);
}
public void testContinuedStringSize() {
//Test a basic string
UnicodeString s = makeUnicodeString(SSTRecord.MAX_RECORD_SIZE-2-1+20);
- UnicodeString.UnicodeRecordStats stats = new UnicodeString.UnicodeRecordStats();
- s.getRecordSize(stats);
- assertEquals(SSTRecord.MAX_RECORD_SIZE+4+1+20, stats.recordSize);
+ confirmSize(SSTRecord.MAX_RECORD_SIZE+4+1+20, s);
}
/** Tests that a string size calculation that fits neatly in two records, the second being a continue*/
@@ -131,14 +112,10 @@
//Continue Record additional byte overhead
strSize -= 1;
UnicodeString s = makeUnicodeString(strSize);
- UnicodeString.UnicodeRecordStats stats = new UnicodeString.UnicodeRecordStats();
- s.getRecordSize(stats);
- assertEquals(SSTRecord.MAX_RECORD_SIZE*2, stats.recordSize);
+ confirmSize(SSTRecord.MAX_RECORD_SIZE*2, s);
}
-
-
private static UnicodeString makeUnicodeString( String s )
{
UnicodeString st = new UnicodeString(s);
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org