Modified: 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFRichTextString.java
URL: 
http://svn.apache.org/viewvc/poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFRichTextString.java?rev=1625828&r1=1625827&r2=1625828&view=diff
==============================================================================
--- 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFRichTextString.java
 (original)
+++ 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFRichTextString.java
 Wed Sep 17 21:12:36 2014
@@ -308,22 +308,22 @@ public final class TestXSSFRichTextStrin
 
         str = new XSSFRichTextString("Incorrect\nLine-Breaking");
         str.applyFont(0, 8, font);
-        t1 = str.getCTRst().getRList().get(0).xgetT();
-        t2 = str.getCTRst().getRList().get(1).xgetT();
+        t1 = str.getCTRst().getRArray(0).xgetT();
+        t2 = str.getCTRst().getRArray(1).xgetT();
         assertEquals("<xml-fragment>Incorrec</xml-fragment>", t1.xmlText());
         assertEquals("<xml-fragment>t\nLine-Breaking</xml-fragment>", 
t2.xmlText());
 
         str = new XSSFRichTextString("Incorrect\nLine-Breaking");
         str.applyFont(0, 9, font);
-        t1 = str.getCTRst().getRList().get(0).xgetT();
-        t2 = str.getCTRst().getRList().get(1).xgetT();
+        t1 = str.getCTRst().getRArray(0).xgetT();
+        t2 = str.getCTRst().getRArray(1).xgetT();
         assertEquals("<xml-fragment>Incorrect</xml-fragment>", t1.xmlText());
         assertEquals("<xml-fragment 
xml:space=\"preserve\">\nLine-Breaking</xml-fragment>", t2.xmlText());
 
         str = new XSSFRichTextString("Incorrect\n Line-Breaking");
         str.applyFont(0, 9, font);
-        t1 = str.getCTRst().getRList().get(0).xgetT();
-        t2 = str.getCTRst().getRList().get(1).xgetT();
+        t1 = str.getCTRst().getRArray(0).xgetT();
+        t2 = str.getCTRst().getRArray(1).xgetT();
         assertEquals("<xml-fragment>Incorrect</xml-fragment>", t1.xmlText());
         assertEquals("<xml-fragment xml:space=\"preserve\">\n 
Line-Breaking</xml-fragment>", t2.xmlText());
 
@@ -333,15 +333,15 @@ public final class TestXSSFRichTextStrin
         assertEquals("<xml-fragment 
xml:space=\"preserve\">Tab\tseparated\n</xml-fragment>", t1.xmlText());
 
         str.applyFont(0, 3, font);
-        t1 = str.getCTRst().getRList().get(0).xgetT();
-        t2 = str.getCTRst().getRList().get(1).xgetT();
+        t1 = str.getCTRst().getRArray(0).xgetT();
+        t2 = str.getCTRst().getRArray(1).xgetT();
         assertEquals("<xml-fragment>Tab</xml-fragment>", t1.xmlText());
         assertEquals("<xml-fragment 
xml:space=\"preserve\">\tseparated\n</xml-fragment>", t2.xmlText());
 
         str = new XSSFRichTextString("Tab\tseparated\n");
         str.applyFont(0, 4, font);
-        t1 = str.getCTRst().getRList().get(0).xgetT();
-        t2 = str.getCTRst().getRList().get(1).xgetT();
+        t1 = str.getCTRst().getRArray(0).xgetT();
+        t2 = str.getCTRst().getRArray(1).xgetT();
         // YK: don't know why, but XmlBeans converts leading tab characters to 
spaces
         //assertEquals("<xml-fragment>Tab\t</xml-fragment>", t1.xmlText());
         assertEquals("<xml-fragment 
xml:space=\"preserve\">separated\n</xml-fragment>", t2.xmlText());
@@ -349,9 +349,9 @@ public final class TestXSSFRichTextStrin
         str = new XSSFRichTextString("\n\n\nNew Line\n\n");
         str.applyFont(0, 3, font);
         str.applyFont(11, 13, font);
-        t1 = str.getCTRst().getRList().get(0).xgetT();
-        t2 = str.getCTRst().getRList().get(1).xgetT();
-        t3 = str.getCTRst().getRList().get(2).xgetT();
+        t1 = str.getCTRst().getRArray(0).xgetT();
+        t2 = str.getCTRst().getRArray(1).xgetT();
+        t3 = str.getCTRst().getRArray(2).xgetT();
         // YK: don't know why, but XmlBeans converts leading tab characters to 
spaces
         assertEquals("<xml-fragment 
xml:space=\"preserve\">\n\n\n</xml-fragment>", t1.xmlText());
         assertEquals("<xml-fragment>New Line</xml-fragment>", t2.xmlText());

Modified: 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheet.java
URL: 
http://svn.apache.org/viewvc/poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheet.java?rev=1625828&r1=1625827&r2=1625828&view=diff
==============================================================================
--- 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheet.java
 (original)
+++ 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheet.java
 Wed Sep 17 21:12:36 2014
@@ -19,6 +19,8 @@ package org.apache.poi.xssf.usermodel;
 
 import static junit.framework.TestCase.assertNotNull;
 import static junit.framework.TestCase.assertTrue;
+import static org.apache.poi.xssf.XSSFTestDataSamples.openSampleWorkbook;
+import static org.apache.poi.xssf.XSSFTestDataSamples.writeOutAndReadBack;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertNotSame;
@@ -26,10 +28,14 @@ import static org.junit.Assert.assertNul
 import static org.junit.Assert.assertSame;
 import static org.junit.Assert.fail;
 
+import java.util.Arrays;
+import java.util.HashSet;
 import java.util.List;
+import java.util.Set;
 
 import org.apache.poi.hssf.HSSFTestDataSamples;
-import org.apache.poi.hssf.record.PasswordRecord;
+import org.apache.poi.poifs.crypt.CryptoFunctions;
+import org.apache.poi.poifs.crypt.HashAlgorithm;
 import org.apache.poi.ss.usermodel.AutoFilter;
 import org.apache.poi.ss.usermodel.BaseTestSheet;
 import org.apache.poi.ss.usermodel.Cell;
@@ -41,7 +47,6 @@ import org.apache.poi.ss.usermodel.Workb
 import org.apache.poi.ss.util.AreaReference;
 import org.apache.poi.ss.util.CellRangeAddress;
 import org.apache.poi.ss.util.CellReference;
-import org.apache.poi.util.HexDump;
 import org.apache.poi.xssf.SXSSFITestDataProvider;
 import org.apache.poi.xssf.XSSFITestDataProvider;
 import org.apache.poi.xssf.XSSFTestDataSamples;
@@ -293,6 +298,7 @@ public final class TestXSSFSheet extends
         CellRangeAddress region_1 = CellRangeAddress.valueOf("A1:B2");
         CellRangeAddress region_2 = CellRangeAddress.valueOf("C3:D4");
         CellRangeAddress region_3 = CellRangeAddress.valueOf("E5:F6");
+        CellRangeAddress region_4 = CellRangeAddress.valueOf("G7:H8");
         sheet.addMergedRegion(region_1);
         sheet.addMergedRegion(region_2);
         sheet.addMergedRegion(region_3);
@@ -306,6 +312,17 @@ public final class TestXSSFSheet extends
         assertEquals(0, sheet.getNumMergedRegions());
         assertNull(" CTMergeCells should be deleted after removing the last 
merged " +
                 "region on the sheet.", 
sheet.getCTWorksheet().getMergeCells());
+        sheet.addMergedRegion(region_1);
+        sheet.addMergedRegion(region_2);
+        sheet.addMergedRegion(region_3);
+        sheet.addMergedRegion(region_4);
+        // test invalid indexes OOBE
+        Set<Integer> rmIdx = new HashSet<Integer>(Arrays.asList(5,6));
+        sheet.removeMergedRegions(rmIdx);
+        rmIdx = new HashSet<Integer>(Arrays.asList(1,3));
+        sheet.removeMergedRegions(rmIdx);
+        assertEquals("A1:B2", 
ctWorksheet.getMergeCells().getMergeCellArray(0).getRef());
+        assertEquals("E5:F6", 
ctWorksheet.getMergeCells().getMergeCellArray(1).getRef());
     }
 
     @Test
@@ -335,6 +352,7 @@ public final class TestXSSFSheet extends
 
 
     @Test
+    @SuppressWarnings("deprecation")
     public void groupUngroupColumn() {
         XSSFWorkbook workbook = new XSSFWorkbook();
         XSSFSheet sheet = workbook.createSheet();
@@ -344,36 +362,36 @@ public final class TestXSSFSheet extends
         sheet.groupColumn(10, 11);
         CTCols cols = sheet.getCTWorksheet().getColsArray(0);
         assertEquals(2, cols.sizeOfColArray());
-        List<CTCol> colArray = cols.getColList();
+        CTCol[] colArray = cols.getColArray();
         assertNotNull(colArray);
-        assertEquals(2 + 1, colArray.get(0).getMin()); // 1 based
-        assertEquals(7 + 1, colArray.get(0).getMax()); // 1 based
-        assertEquals(1, colArray.get(0).getOutlineLevel());
+        assertEquals(2 + 1, colArray[0].getMin()); // 1 based
+        assertEquals(7 + 1, colArray[0].getMax()); // 1 based
+        assertEquals(1, colArray[0].getOutlineLevel());
 
         //two level
         sheet.groupColumn(1, 2);
         cols = sheet.getCTWorksheet().getColsArray(0);
         assertEquals(4, cols.sizeOfColArray());
-        colArray = cols.getColList();
-        assertEquals(2, colArray.get(1).getOutlineLevel());
+        colArray = cols.getColArray();
+        assertEquals(2, colArray[1].getOutlineLevel());
 
         //three level
         sheet.groupColumn(6, 8);
         sheet.groupColumn(2, 3);
         cols = sheet.getCTWorksheet().getColsArray(0);
         assertEquals(7, cols.sizeOfColArray());
-        colArray = cols.getColList();
-        assertEquals(3, colArray.get(1).getOutlineLevel());
+        colArray = cols.getColArray();
+        assertEquals(3, colArray[1].getOutlineLevel());
         assertEquals(3, 
sheet.getCTWorksheet().getSheetFormatPr().getOutlineLevelCol());
 
         sheet.ungroupColumn(8, 10);
-        colArray = cols.getColList();
+        colArray = cols.getColArray();
         //assertEquals(3, colArray[1].getOutlineLevel());
 
         sheet.ungroupColumn(4, 6);
         sheet.ungroupColumn(2, 2);
-        colArray = cols.getColList();
-        assertEquals(4, colArray.size());
+        colArray = cols.getColArray();
+        assertEquals(4, colArray.length);
         assertEquals(2, 
sheet.getCTWorksheet().getSheetFormatPr().getOutlineLevelCol());
     }
 
@@ -758,9 +776,8 @@ public final class TestXSSFSheet extends
         XSSFSheet xs = sheet;
         CTWorksheet cts = xs.getCTWorksheet();
 
-        List<CTCols> cols_s = cts.getColsList();
-        assertEquals(1, cols_s.size());
-        CTCols cols = cols_s.get(0);
+        assertEquals(1, cts.sizeOfColsArray());
+        CTCols cols = cts.getColsArray(0);
         assertEquals(1, cols.sizeOfColArray());
         CTCol col = cols.getColArray(0);
 
@@ -773,9 +790,8 @@ public final class TestXSSFSheet extends
         // Now set another
         sheet.setColumnWidth(3, 33 * 256);
 
-        cols_s = cts.getColsList();
-        assertEquals(1, cols_s.size());
-        cols = cols_s.get(0);
+        assertEquals(1, cts.sizeOfColsArray());
+        cols = cts.getColsArray(0);
         assertEquals(2, cols.sizeOfColArray());
 
         col = cols.getColArray(0);
@@ -960,6 +976,7 @@ public final class TestXSSFSheet extends
      * but CTRows are kept in ascending order
      */
     @Test
+    @SuppressWarnings("deprecation")
     public void createRow() {
         XSSFWorkbook workbook = new XSSFWorkbook();
         XSSFSheet sheet = workbook.createSheet();
@@ -983,27 +1000,27 @@ public final class TestXSSFSheet extends
         row3.createCell(5);
 
 
-        List<CTRow> xrow = sheetData.getRowList();
-        assertEquals(3, xrow.size());
+        CTRow[] xrow = sheetData.getRowArray();
+        assertEquals(3, xrow.length);
 
         //rows are sorted: {0, 1, 2}
-        assertEquals(4, xrow.get(0).sizeOfCArray());
-        assertEquals(1, xrow.get(0).getR());
-        assertTrue(xrow.get(0).equals(row3.getCTRow()));
-
-        assertEquals(3, xrow.get(1).sizeOfCArray());
-        assertEquals(2, xrow.get(1).getR());
-        assertTrue(xrow.get(1).equals(row2.getCTRow()));
-
-        assertEquals(2, xrow.get(2).sizeOfCArray());
-        assertEquals(3, xrow.get(2).getR());
-        assertTrue(xrow.get(2).equals(row1.getCTRow()));
-
-        List<CTCell> xcell = xrow.get(0).getCList();
-        assertEquals("D1", xcell.get(0).getR());
-        assertEquals("A1", xcell.get(1).getR());
-        assertEquals("C1", xcell.get(2).getR());
-        assertEquals("F1", xcell.get(3).getR());
+        assertEquals(4, xrow[0].sizeOfCArray());
+        assertEquals(1, xrow[0].getR());
+        assertTrue(xrow[0].equals(row3.getCTRow()));
+
+        assertEquals(3, xrow[1].sizeOfCArray());
+        assertEquals(2, xrow[1].getR());
+        assertTrue(xrow[1].equals(row2.getCTRow()));
+
+        assertEquals(2, xrow[2].sizeOfCArray());
+        assertEquals(3, xrow[2].getR());
+        assertTrue(xrow[2].equals(row1.getCTRow()));
+
+        CTCell[] xcell = xrow[0].getCArray();
+        assertEquals("D1", xcell[0].getR());
+        assertEquals("A1", xcell[1].getR());
+        assertEquals("C1", xcell[2].getR());
+        assertEquals("F1", xcell[3].getR());
 
         //re-creating a row does NOT add extra data to the parent
         row2 = sheet.createRow(1);
@@ -1015,25 +1032,25 @@ public final class TestXSSFSheet extends
         workbook = XSSFTestDataSamples.writeOutAndReadBack(workbook);
         sheet = workbook.getSheetAt(0);
         wsh = sheet.getCTWorksheet();
-        xrow = sheetData.getRowList();
-        assertEquals(3, xrow.size());
+        xrow = sheetData.getRowArray();
+        assertEquals(3, xrow.length);
 
         //rows are sorted: {0, 1, 2}
-        assertEquals(4, xrow.get(0).sizeOfCArray());
-        assertEquals(1, xrow.get(0).getR());
+        assertEquals(4, xrow[0].sizeOfCArray());
+        assertEquals(1, xrow[0].getR());
         //cells are now sorted
-        xcell = xrow.get(0).getCList();
-        assertEquals("A1", xcell.get(0).getR());
-        assertEquals("C1", xcell.get(1).getR());
-        assertEquals("D1", xcell.get(2).getR());
-        assertEquals("F1", xcell.get(3).getR());
+        xcell = xrow[0].getCArray();
+        assertEquals("A1", xcell[0].getR());
+        assertEquals("C1", xcell[1].getR());
+        assertEquals("D1", xcell[2].getR());
+        assertEquals("F1", xcell[3].getR());
 
 
-        assertEquals(0, xrow.get(1).sizeOfCArray());
-        assertEquals(2, xrow.get(1).getR());
+        assertEquals(0, xrow[1].sizeOfCArray());
+        assertEquals(2, xrow[1].getR());
 
-        assertEquals(2, xrow.get(2).sizeOfCArray());
-        assertEquals(3, xrow.get(2).getR());
+        assertEquals(2, xrow[2].sizeOfCArray());
+        assertEquals(3, xrow[2].getR());
 
     }
 
@@ -1068,13 +1085,27 @@ public final class TestXSSFSheet extends
         assertTrue("sheet protection should be on", pr.isSetSheet());
         assertTrue("object protection should be on", pr.isSetObjects());
         assertTrue("scenario protection should be on", pr.isSetScenarios());
-        String hash = 
String.valueOf(HexDump.shortToHex(PasswordRecord.hashPassword(password))).substring(2);
-        assertEquals("well known value for top secret hash should be "+ hash, 
hash, pr.xgetPassword().getStringValue());
+        int hashVal = CryptoFunctions.createXorVerifier1(password);
+        int actualVal = 
Integer.parseInt(pr.xgetPassword().getStringValue(),16);
+        assertEquals("well known value for top secret hash should match", 
hashVal, actualVal);
 
         sheet.protectSheet(null);
         assertNull("protectSheet(null) should unset CTSheetProtection", 
sheet.getCTWorksheet().getSheetProtection());
     }
 
+    @Test
+    public void protectSheet_lowlevel_2013() {
+        String password = "test";
+        XSSFWorkbook wb = new XSSFWorkbook();
+        XSSFSheet xs = wb.createSheet();
+        xs.setSheetPassword(password, HashAlgorithm.sha384);
+        wb = writeOutAndReadBack(wb);
+        assertTrue(wb.getSheetAt(0).validateSheetPassword(password));
+        
+        wb = openSampleWorkbook("workbookProtection-sheet_password-2013.xlsx");
+        assertTrue(wb.getSheetAt(0).validateSheetPassword("pwd"));
+    }
+    
 
     @Test
     public void bug49966() {

Modified: 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheetShiftRows.java
URL: 
http://svn.apache.org/viewvc/poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheetShiftRows.java?rev=1625828&r1=1625827&r2=1625828&view=diff
==============================================================================
--- 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheetShiftRows.java
 (original)
+++ 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheetShiftRows.java
 Wed Sep 17 21:12:36 2014
@@ -25,9 +25,11 @@ import org.apache.poi.ss.usermodel.Comme
 import org.apache.poi.ss.usermodel.Row;
 import org.apache.poi.ss.usermodel.Sheet;
 import org.apache.poi.ss.usermodel.Workbook;
+import org.apache.poi.ss.util.CellRangeAddress;
 import org.apache.poi.ss.util.CellUtil;
 import org.apache.poi.xssf.XSSFITestDataProvider;
 import org.apache.poi.xssf.XSSFTestDataSamples;
+import org.junit.Test;
 
 /**
  * @author Yegor Kozlov
@@ -187,4 +189,14 @@ public final class TestXSSFSheetShiftRow
         assertEquals("Amdocs", comment.getAuthor());
         assertEquals("Amdocs:\ntest\n", comment.getString().getString());
        }
+
+       @Test
+       public void testBug55280() {
+        Workbook w = new XSSFWorkbook();
+        Sheet s = w.createSheet();
+        for (int row = 0; row < 5000; ++row)
+            s.addMergedRegion(new CellRangeAddress(row, row, 0, 3));
+
+        s.shiftRows(0, 4999, 1);        // takes a long time...
+       }
 }

Modified: 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFTable.java
URL: 
http://svn.apache.org/viewvc/poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFTable.java?rev=1625828&r1=1625827&r2=1625828&view=diff
==============================================================================
--- 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFTable.java
 (original)
+++ 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFTable.java
 Wed Sep 17 21:12:36 2014
@@ -17,13 +17,8 @@
 
 package org.apache.poi.xssf.usermodel;
 
-import org.apache.poi.ss.usermodel.Cell;
-import org.apache.poi.xssf.XSSFTestDataSamples;
-import org.apache.poi.xssf.streaming.SXSSFWorkbook;
-import org.apache.poi.util.TempFile;
-import org.junit.Test;
-import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTTable;
-import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTTableColumn;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
 
 import java.io.File;
 import java.io.FileInputStream;
@@ -32,8 +27,13 @@ import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
+import org.apache.poi.ss.usermodel.Cell;
+import org.apache.poi.util.TempFile;
+import org.apache.poi.xssf.XSSFTestDataSamples;
+import org.apache.poi.xssf.streaming.SXSSFWorkbook;
+import org.junit.Test;
+import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTTable;
+import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTTableColumn;
 
 public final class TestXSSFTable {
 
@@ -41,6 +41,7 @@ public final class TestXSSFTable {
     }
 
     @Test
+    @SuppressWarnings("deprecation")
     public void bug56274() throws IOException {
         // read sample file
         XSSFWorkbook inputWorkbook = 
XSSFTestDataSamples.openSampleWorkbook("56274.xlsx");
@@ -60,13 +61,13 @@ public final class TestXSSFTable {
         // re-read the saved file and make sure headers in the xml are in the 
original order
         inputWorkbook = new org.apache.poi.xssf.usermodel.XSSFWorkbook(new 
FileInputStream(outputFile));
         CTTable ctTable = 
inputWorkbook.getSheetAt(0).getTables().get(0).getCTTable();
-        List<CTTableColumn> ctTableColumnList = 
ctTable.getTableColumns().getTableColumnList();
+        CTTableColumn[] ctTableColumnArray = 
ctTable.getTableColumns().getTableColumnArray();
 
         assertEquals("number of headers in xml table should match number of 
header cells in worksheet",
-                headers.size(), ctTableColumnList.size());
+                headers.size(), ctTableColumnArray.length);
         for (int i = 0; i < headers.size(); i++) {
             assertEquals("header name in xml table should match number of 
header cells in worksheet",
-                    headers.get(i), ctTableColumnList.get(i).getName());
+                    headers.get(i), ctTableColumnArray[i].getName());
         }
         assertTrue(outputFile.delete());
     }

Modified: 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFWorkbook.java
URL: 
http://svn.apache.org/viewvc/poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFWorkbook.java?rev=1625828&r1=1625827&r2=1625828&view=diff
==============================================================================
--- 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFWorkbook.java
 (original)
+++ 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFWorkbook.java
 Wed Sep 17 21:12:36 2014
@@ -704,7 +704,7 @@ public final class TestXSSFWorkbook exte
         CTPivotCache pivotCache = wb.addPivotCache("0");
         //Ensures that pivotCaches is initiated
         assertTrue(ctWb.isSetPivotCaches());
-        assertSame(pivotCache, 
ctWb.getPivotCaches().getPivotCacheList().get(0));
+        assertSame(pivotCache, ctWb.getPivotCaches().getPivotCacheArray(0));
         assertEquals("0", pivotCache.getId());
     }
 

Modified: 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/extensions/TestXSSFCellFill.java
URL: 
http://svn.apache.org/viewvc/poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/extensions/TestXSSFCellFill.java?rev=1625828&r1=1625827&r2=1625828&view=diff
==============================================================================
--- 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/extensions/TestXSSFCellFill.java
 (original)
+++ 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/extensions/TestXSSFCellFill.java
 Wed Sep 17 21:12:36 2014
@@ -31,34 +31,34 @@ import junit.framework.TestCase;
 
 
 public class TestXSSFCellFill extends TestCase {
-       
-       public void testGetFillBackgroundColor() {
-               CTFill ctFill = CTFill.Factory.newInstance();
-               XSSFCellFill cellFill = new XSSFCellFill(ctFill);
-               CTPatternFill ctPatternFill = ctFill.addNewPatternFill();
-               CTColor bgColor = ctPatternFill.addNewBgColor();
-               assertNotNull(cellFill.getFillBackgroundColor());
-               bgColor.setIndexed(2);
-               assertEquals(2, cellFill.getFillBackgroundColor().getIndexed());
-       }
-       
-       public void testGetFillForegroundColor() {
-               CTFill ctFill = CTFill.Factory.newInstance();
-               XSSFCellFill cellFill = new XSSFCellFill(ctFill);
-               CTPatternFill ctPatternFill = ctFill.addNewPatternFill();
-               CTColor fgColor = ctPatternFill.addNewFgColor();
-               assertNotNull(cellFill.getFillForegroundColor());
-               fgColor.setIndexed(8);
-               assertEquals(8, cellFill.getFillForegroundColor().getIndexed());
-       }
-       
-       public void testGetSetPatternType() {
-               CTFill ctFill = CTFill.Factory.newInstance();
-               XSSFCellFill cellFill = new XSSFCellFill(ctFill);
-               CTPatternFill ctPatternFill = ctFill.addNewPatternFill();
-               ctPatternFill.setPatternType(STPatternType.SOLID);
-               //assertEquals(FillPatternType.SOLID_FOREGROUND.ordinal(), 
cellFill.getPatternType().ordinal());
-       }
+
+    public void testGetFillBackgroundColor() {
+        CTFill ctFill = CTFill.Factory.newInstance();
+        XSSFCellFill cellFill = new XSSFCellFill(ctFill);
+        CTPatternFill ctPatternFill = ctFill.addNewPatternFill();
+        CTColor bgColor = ctPatternFill.addNewBgColor();
+        assertNotNull(cellFill.getFillBackgroundColor());
+        bgColor.setIndexed(2);
+        assertEquals(2, cellFill.getFillBackgroundColor().getIndexed());
+    }
+
+    public void testGetFillForegroundColor() {
+        CTFill ctFill = CTFill.Factory.newInstance();
+        XSSFCellFill cellFill = new XSSFCellFill(ctFill);
+        CTPatternFill ctPatternFill = ctFill.addNewPatternFill();
+        CTColor fgColor = ctPatternFill.addNewFgColor();
+        assertNotNull(cellFill.getFillForegroundColor());
+        fgColor.setIndexed(8);
+        assertEquals(8, cellFill.getFillForegroundColor().getIndexed());
+    }
+
+    public void testGetSetPatternType() {
+        CTFill ctFill = CTFill.Factory.newInstance();
+        XSSFCellFill cellFill = new XSSFCellFill(ctFill);
+        CTPatternFill ctPatternFill = ctFill.addNewPatternFill();
+        ctPatternFill.setPatternType(STPatternType.SOLID);
+        //assertEquals(FillPatternType.SOLID_FOREGROUND.ordinal(), 
cellFill.getPatternType().ordinal());
+    }
 
     public void testGetNotModifies() {
         CTFill ctFill = CTFill.Factory.newInstance();
@@ -75,11 +75,16 @@ public class TestXSSFCellFill extends Te
         XSSFColor foregroundColor = 
cellWithThemeColor.getCellStyle().getFillForegroundXSSFColor();
         byte[] rgb = foregroundColor.getRgb();
         byte[] rgbWithTint = foregroundColor.getRgbWithTint();
-        assertEquals(rgb[0],-18);
-        assertEquals(rgb[1],-20);
-        assertEquals(rgb[2],-31);
-        assertEquals(rgbWithTint[0],-12);
-        assertEquals(rgbWithTint[1],-13);
-        assertEquals(rgbWithTint[2],-20);
+        // Dk2
+        assertEquals(rgb[0],31);
+        assertEquals(rgb[1],73);
+        assertEquals(rgb[2],125);
+        // Dk2, lighter 40% (tint is about 0.39998)
+        // 31 * (1.0 - 0.39998) + (255 - 255 * (1.0 - 0.39998)) = 120.59552 => 
120 (byte)
+        // 73 * (1.0 - 0.39998) + (255 - 255 * (1.0 - 0.39998)) = 145.79636 => 
-111 (byte)
+        // 125 * (1.0 - 0.39998) + (255 - 255 * (1.0 - 0.39998)) = 176.99740 
=> -80 (byte)
+        assertEquals(rgbWithTint[0],120);
+        assertEquals(rgbWithTint[1],-111);
+        assertEquals(rgbWithTint[2],-80);
     }
 }

Modified: 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/helpers/TestColumnHelper.java
URL: 
http://svn.apache.org/viewvc/poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/helpers/TestColumnHelper.java?rev=1625828&r1=1625827&r2=1625828&view=diff
==============================================================================
--- 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/helpers/TestColumnHelper.java
 (original)
+++ 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/usermodel/helpers/TestColumnHelper.java
 Wed Sep 17 21:12:36 2014
@@ -186,7 +186,7 @@ public final class TestColumnHelper exte
         helper.addCleanColIntoCols(cols1, col9);
 
         // TODO - assert something interesting
-        assertEquals(12, cols1.getColList().size());
+        assertEquals(12, cols1.sizeOfColArray());
         assertEquals(1, cols1.getColArray(0).getMin());
         assertEquals(16750, cols1.getColArray(11).getMax());
     }

Modified: 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/util/TestCTColComparator.java
URL: 
http://svn.apache.org/viewvc/poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/util/TestCTColComparator.java?rev=1625828&r1=1625827&r2=1625828&view=diff
==============================================================================
--- 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/util/TestCTColComparator.java
 (original)
+++ 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xssf/util/TestCTColComparator.java
 Wed Sep 17 21:12:36 2014
@@ -27,39 +27,37 @@ import org.openxmlformats.schemas.spread
 public final class TestCTColComparator extends TestCase {
 
     public void testCompare() {
-        CTColComparator comparator = new CTColComparator();
         CTCol o1 = CTCol.Factory.newInstance();
         o1.setMin(1);
         o1.setMax(10);
         CTCol o2 = CTCol.Factory.newInstance();
         o2.setMin(11);
         o2.setMax(12);
-        assertEquals(-1, comparator.compare(o1, o2));
+        assertEquals(-1, CTColComparator.BY_MIN_MAX.compare(o1, o2));
         CTCol o3 = CTCol.Factory.newInstance();
         o3.setMin(5);
         o3.setMax(8);
         CTCol o4 = CTCol.Factory.newInstance();
         o4.setMin(5);
         o4.setMax(80);
-        assertEquals(-1, comparator.compare(o3, o4));
+        assertEquals(-1, CTColComparator.BY_MIN_MAX.compare(o3, o4));
     }
 
     public void testArraysSort() {
-        CTColComparator comparator = new CTColComparator();
         CTCol o1 = CTCol.Factory.newInstance();
         o1.setMin(1);
         o1.setMax(10);
         CTCol o2 = CTCol.Factory.newInstance();
         o2.setMin(11);
         o2.setMax(12);
-        assertEquals(-1, comparator.compare(o1, o2));
+        assertEquals(-1, CTColComparator.BY_MIN_MAX.compare(o1, o2));
         CTCol o3 = CTCol.Factory.newInstance();
         o3.setMin(5);
         o3.setMax(80);
         CTCol o4 = CTCol.Factory.newInstance();
         o4.setMin(5);
         o4.setMax(8);
-        assertEquals(1, comparator.compare(o3, o4));
+        assertEquals(1, CTColComparator.BY_MIN_MAX.compare(o3, o4));
         CTCol[] cols = new CTCol[4];
         cols[0] = o1;
         cols[1] = o2;
@@ -67,7 +65,7 @@ public final class TestCTColComparator e
         cols[3] = o4;
         assertEquals(80, cols[2].getMax());
         assertEquals(8, cols[3].getMax());
-        Arrays.sort(cols, comparator);
+        Arrays.sort(cols, CTColComparator.BY_MIN_MAX);
         assertEquals(12, cols[3].getMax());
         assertEquals(8, cols[1].getMax());
         assertEquals(80, cols[2].getMax());

Modified: 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFDocument.java
URL: 
http://svn.apache.org/viewvc/poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFDocument.java?rev=1625828&r1=1625827&r2=1625828&view=diff
==============================================================================
--- 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFDocument.java
 (original)
+++ 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFDocument.java
 Wed Sep 17 21:12:36 2014
@@ -19,6 +19,7 @@ package org.apache.poi.xwpf.usermodel;
 
 import java.io.IOException;
 import java.io.OutputStream;
+import java.util.Arrays;
 import java.util.List;
 
 import junit.framework.TestCase;
@@ -32,7 +33,6 @@ import org.apache.poi.openxml4j.opc.Pack
 import org.apache.poi.openxml4j.opc.PackageRelationship;
 import org.apache.poi.openxml4j.opc.PackagingURIHelper;
 import org.apache.poi.openxml4j.opc.TargetMode;
-import org.apache.poi.util.ArrayUtil;
 import org.apache.poi.xwpf.XWPFTestDataSamples;
 import org.apache.xmlbeans.XmlCursor;
 import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTP;
@@ -234,7 +234,7 @@ public final class TestXWPFDocument exte
         OutputStream os = newImagePart.getOutputStream();
         os.write(nature1);
            os.close();
-           XWPFHeader xwpfHeader = doc.getHeaderList().get(0);
+           XWPFHeader xwpfHeader = doc.getHeaderArray(0);
            PackageRelationship relationship = 
xwpfHeader.getPackagePart().addRelationship(partName, TargetMode.INTERNAL, 
jpgRelation.getRelation());
            XWPFPictureData newPicData = new 
XWPFPictureData(newImagePart,relationship);
            /* new part is now ready to rumble */
@@ -307,7 +307,7 @@ public final class TestXWPFDocument exte
            String id1 = doc.addPictureData(newPic, Document.PICTURE_TYPE_JPEG);
            assertEquals(2,doc.getAllPackagePictures().size());
            /* copy data, to avoid instance-equality */
-           byte[] newPicCopy = ArrayUtil.copyOf(newPic, newPic.length);
+           byte[] newPicCopy = Arrays.copyOf(newPic, newPic.length);
            String id2 = doc.addPictureData(newPicCopy, 
Document.PICTURE_TYPE_JPEG);
            assertEquals(id1,id2);
            doc.getPackage().revert();
@@ -317,13 +317,13 @@ public final class TestXWPFDocument exte
            XWPFDocument doc = 
XWPFTestDataSamples.openSampleDocument("issue_51265_2.docx");
            assertEquals(1,doc.getAllPictures().size());
            assertEquals(1,doc.getAllPackagePictures().size());
-           assertEquals(1,doc.getHeaderList().get(0).getAllPictures().size());
+           assertEquals(1,doc.getHeaderArray(0).getAllPictures().size());
            doc.getPackage().revert();
        }
        
        public void testPictureHandlingComplex() throws IOException, 
InvalidFormatException {
            XWPFDocument doc = 
XWPFTestDataSamples.openSampleDocument("issue_51265_3.docx");
-           XWPFHeader xwpfHeader = doc.getHeaderList().get(0);
+           XWPFHeader xwpfHeader = doc.getHeaderArray(0);
 
            assertEquals(3,doc.getAllPictures().size());
         assertEquals(3,xwpfHeader.getAllPictures().size());

Modified: 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFParagraph.java
URL: 
http://svn.apache.org/viewvc/poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFParagraph.java?rev=1625828&r1=1625827&r2=1625828&view=diff
==============================================================================
--- 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFParagraph.java
 (original)
+++ 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFParagraph.java
 Wed Sep 17 21:12:36 2014
@@ -24,6 +24,9 @@ import java.util.List;
 import junit.framework.TestCase;
 
 import org.apache.poi.xwpf.XWPFTestDataSamples;
+import org.openxmlformats.schemas.drawingml.x2006.picture.CTPicture;
+import org.openxmlformats.schemas.drawingml.x2006.picture.PicDocument;
+import org.openxmlformats.schemas.drawingml.x2006.picture.impl.PicDocumentImpl;
 import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTBookmark;
 import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTBorder;
 import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTInd;
@@ -39,9 +42,6 @@ import org.openxmlformats.schemas.wordpr
 import 
org.openxmlformats.schemas.wordprocessingml.x2006.main.STLineSpacingRule;
 import org.openxmlformats.schemas.wordprocessingml.x2006.main.STOnOff;
 import org.openxmlformats.schemas.wordprocessingml.x2006.main.STTextAlignment;
-import        org.openxmlformats.schemas.drawingml.x2006.picture.CTPicture;
-import org.openxmlformats.schemas.drawingml.x2006.picture.PicDocument;
-import org.openxmlformats.schemas.drawingml.x2006.picture.impl.PicDocumentImpl;
 
 /**
  * Tests for XWPF Paragraphs
@@ -62,7 +62,7 @@ public final class TestXWPFParagraph ext
         assertEquals(1, ps.size());
         XWPFParagraph p = ps.get(0);
 
-        assertEquals(5, p.getCTP().getRList().size());
+        assertEquals(5, p.getCTP().sizeOfRArray());
         assertEquals("First header column!\tMid header\tRight header!", p
                 .getText());
     }
@@ -234,6 +234,7 @@ public final class TestXWPFParagraph ext
         assertEquals(STOnOff.TRUE, ppr.getPageBreakBefore().getVal());
     }
 
+    @SuppressWarnings("deprecation")
     public void testBookmarks() throws IOException {
         XWPFDocument doc = 
XWPFTestDataSamples.openSampleDocument("bookmarks.docx");
         XWPFParagraph paragraph = doc.getParagraphs().get(0);
@@ -242,7 +243,7 @@ public final class TestXWPFParagraph ext
         assertEquals(0, paragraph.getCTP().sizeOfBookmarkEndArray());
         CTBookmark ctBookmark = paragraph.getCTP().getBookmarkStartArray(0);
         assertEquals("poi", ctBookmark.getName());
-        for(CTBookmark bookmark : paragraph.getCTP().getBookmarkStartList()) {
+        for(CTBookmark bookmark : paragraph.getCTP().getBookmarkStartArray()) {
            assertEquals("poi", bookmark.getName());
         }
     }

Modified: 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFRun.java
URL: 
http://svn.apache.org/viewvc/poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFRun.java?rev=1625828&r1=1625827&r2=1625828&view=diff
==============================================================================
--- 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFRun.java
 (original)
+++ 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFRun.java
 Wed Sep 17 21:12:36 2014
@@ -180,7 +180,7 @@ public class TestXWPFRun extends TestCas
         run.addCarriageReturn();
         run.setText("T2");
         run.addCarriageReturn();
-        assertEquals(3, run.getCTR().getCrList().size());
+        assertEquals(3, run.getCTR().sizeOfCrArray());
         
         assertEquals("T1\n\nT2\n", run.toString());
     }
@@ -200,8 +200,8 @@ public class TestXWPFRun extends TestCas
         run.setText("T2");
         run.addTab();
         run.setText("T3");
-        assertEquals(1, run.getCTR().getCrList().size());
-        assertEquals(1, run.getCTR().getTabList().size());
+        assertEquals(1, run.getCTR().sizeOfCrArray());
+        assertEquals(1, run.getCTR().sizeOfTabArray());
         
         assertEquals("T1\nT2\tT3", run.toString());
     }

Modified: 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFStyles.java
URL: 
http://svn.apache.org/viewvc/poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFStyles.java?rev=1625828&r1=1625827&r2=1625828&view=diff
==============================================================================
--- 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFStyles.java
 (original)
+++ 
poi/branches/xml_signature/src/ooxml/testcases/org/apache/poi/xwpf/usermodel/TestXWPFStyles.java
 Wed Sep 17 21:12:36 2014
@@ -116,6 +116,6 @@ public class TestXWPFStyles extends Test
         ex.setName("ex1");
         XWPFLatentStyles ls = new XWPFLatentStyles(latentStyles);
         assertEquals(true, ls.isLatentStyle("ex1"));
-
+        assertEquals(false, ls.isLatentStyle("notex1"));
     }
 }

Modified: 
poi/branches/xml_signature/src/scratchpad/src/org/apache/poi/hwpf/model/NilPICFAndBinData.java
URL: 
http://svn.apache.org/viewvc/poi/branches/xml_signature/src/scratchpad/src/org/apache/poi/hwpf/model/NilPICFAndBinData.java?rev=1625828&r1=1625827&r2=1625828&view=diff
==============================================================================
--- 
poi/branches/xml_signature/src/scratchpad/src/org/apache/poi/hwpf/model/NilPICFAndBinData.java
 (original)
+++ 
poi/branches/xml_signature/src/scratchpad/src/org/apache/poi/hwpf/model/NilPICFAndBinData.java
 Wed Sep 17 21:12:36 2014
@@ -16,11 +16,12 @@
 ==================================================================== */
 package org.apache.poi.hwpf.model;
 
-import org.apache.poi.util.ArrayUtil;
 import org.apache.poi.util.LittleEndian;
 import org.apache.poi.util.POILogFactory;
 import org.apache.poi.util.POILogger;
 
+import java.util.Arrays;
+
 public class NilPICFAndBinData
 {
 
@@ -52,8 +53,8 @@ public class NilPICFAndBinData
 
         // skip the 62 ignored bytes
         int binaryLength = lcb - cbHeader;
-        this._binData = ArrayUtil.copyOfRange( data, offset + cbHeader,
-                offset + cbHeader + binaryLength );
+        this._binData = Arrays.copyOfRange(data, offset + cbHeader,
+                offset + cbHeader + binaryLength);
     }
 
     public byte[] getBinData()

Modified: 
poi/branches/xml_signature/src/scratchpad/src/org/apache/poi/hwpf/model/PlfLfo.java
URL: 
http://svn.apache.org/viewvc/poi/branches/xml_signature/src/scratchpad/src/org/apache/poi/hwpf/model/PlfLfo.java?rev=1625828&r1=1625827&r2=1625828&view=diff
==============================================================================
--- 
poi/branches/xml_signature/src/scratchpad/src/org/apache/poi/hwpf/model/PlfLfo.java
 (original)
+++ 
poi/branches/xml_signature/src/scratchpad/src/org/apache/poi/hwpf/model/PlfLfo.java
 Wed Sep 17 21:12:36 2014
@@ -23,7 +23,6 @@ import java.util.Arrays;
 import java.util.NoSuchElementException;
 
 import org.apache.poi.hwpf.model.io.HWPFOutputStream;
-import org.apache.poi.util.ArrayUtil;
 import org.apache.poi.util.LittleEndian;
 import org.apache.poi.util.POILogFactory;
 import org.apache.poi.util.POILogger;
@@ -118,10 +117,10 @@ public class PlfLfo
     {
         final int newLfoMac = _lfoMac + 1;
 
-        _rgLfo = ArrayUtil.copyOf( _rgLfo, new LFO[newLfoMac] );
+        _rgLfo = Arrays.copyOf(_rgLfo, newLfoMac);
         _rgLfo[_lfoMac + 1] = lfo;
 
-        _rgLfoData = ArrayUtil.copyOf( _rgLfoData, new LFOData[_lfoMac + 1] );
+        _rgLfoData = Arrays.copyOf(_rgLfoData, newLfoMac);
         _rgLfoData[_lfoMac + 1] = lfoData;
 
         this._lfoMac = newLfoMac;

Modified: 
poi/branches/xml_signature/src/scratchpad/src/org/apache/poi/hwpf/model/Sttb.java
URL: 
http://svn.apache.org/viewvc/poi/branches/xml_signature/src/scratchpad/src/org/apache/poi/hwpf/model/Sttb.java?rev=1625828&r1=1625827&r2=1625828&view=diff
==============================================================================
--- 
poi/branches/xml_signature/src/scratchpad/src/org/apache/poi/hwpf/model/Sttb.java
 (original)
+++ 
poi/branches/xml_signature/src/scratchpad/src/org/apache/poi/hwpf/model/Sttb.java
 Wed Sep 17 21:12:36 2014
@@ -16,10 +16,11 @@
 ==================================================================== */
 package org.apache.poi.hwpf.model;
 
-import org.apache.poi.util.ArrayUtil;
 import org.apache.poi.util.LittleEndian;
 import org.apache.poi.util.StringUtil;
 
+import java.util.Arrays;
+
 /**
  * The STTB is a string table that is made up of a header that is followed by 
an
  * array of elements. The cData value specifies the number of elements that are
@@ -64,7 +65,7 @@ public class Sttb
     {
         this._cDataLength = cDataLength;
 
-        this._data = ArrayUtil.copyOf( data, new String[data.length] );
+        this._data = Arrays.copyOf(data, data.length);
 
         this._cbExtra = 0;
         this._extraData = null;



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to