aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/ooxml/testcases/org/apache/poi/xssf/model/TestThemesTable.java37
-rwxr-xr-xtest-data/spreadsheet/Themes2.xlsbin24064 -> 23552 bytes
-rw-r--r--test-data/spreadsheet/Themes2.xlsxbin9775 -> 9719 bytes
3 files changed, 17 insertions, 20 deletions
diff --git a/src/ooxml/testcases/org/apache/poi/xssf/model/TestThemesTable.java b/src/ooxml/testcases/org/apache/poi/xssf/model/TestThemesTable.java
index d572aa623e..e322f098f2 100644
--- a/src/ooxml/testcases/org/apache/poi/xssf/model/TestThemesTable.java
+++ b/src/ooxml/testcases/org/apache/poi/xssf/model/TestThemesTable.java
@@ -150,7 +150,6 @@ public class TestThemesTable {
* Column C = Explicit Colour Foreground
* Column E = Explicit Colour Background, Black Foreground
* Column G = Conditional Formatting Backgrounds
- * (Row 4 = White by Lt2)
*/
@Test
public void themedAndNonThemedColours() {
@@ -158,26 +157,23 @@ public class TestThemesTable {
XSSFSheet sheet = wb.getSheetAt(0);
XSSFCellStyle style;
XSSFColor color;
+ XSSFCell cell;
- String[] names = {"Black","White","Grey","Blue","Red","Green"};
- int[] themes = {1,0,2,3,4,5};
- assertEquals(names.length, themes.length);
+ String[] names = {"White","Black","Grey","Dark Blue","Blue","Red","Green"};
+ assertEquals(7, names.length);
// Check the non-CF colours in Columns A, B, C and E
- for (int rn=2; rn<8; rn++) {
- int idx = rn-2;
+ for (int rn=1; rn<8; rn++) {
+ int idx = rn-1;
XSSFRow row = sheet.getRow(rn);
assertNotNull("Missing row " + rn, row);
- // Theme cells aren't quite in the same order...
+ // Theme cells come first
XSSFCell themeCell = row.getCell(0);
- if (idx == 1) themeCell = sheet.getRow(idx).getCell(0);
- if (idx >= 2) themeCell = sheet.getRow(idx+1).getCell(0);
+ ThemeElement themeElem = ThemeElement.byId(idx);
+ assertCellContents(themeElem.name, themeCell);
// Sanity check names
- int themeIdx = themes[idx];
- ThemeElement themeElem = ThemeElement.byId(themeIdx);
- assertCellContents(themeElem.name, themeCell);
assertCellContents(names[idx], row.getCell(1));
assertCellContents(names[idx], row.getCell(2));
assertCellContents(names[idx], row.getCell(4));
@@ -187,16 +183,17 @@ public class TestThemesTable {
style = themeCell.getCellStyle();
color = style.getFont().getXSSFColor();
assertEquals(true, color.isThemed());
- assertEquals(themeIdx, color.getTheme());
- assertEquals(rgbExpected[themeIdx], Hex.encodeHexString(color.getRGB()));
+ assertEquals(idx, color.getTheme());
+ assertEquals(rgbExpected[idx], Hex.encodeHexString(color.getRGB()));
// B: Theme Based, Foreground
- style = row.getCell(1).getCellStyle();
+ cell = row.getCell(1);
+ style = cell.getCellStyle();
color = style.getFont().getXSSFColor();
- // TODO Fix this!
- if (idx < 2) {
- assertEquals(true, color.isThemed());
- assertEquals(themeIdx, color.getTheme());
- assertEquals(rgbExpected[themeIdx], Hex.encodeHexString(color.getRGB()));
+ assertEquals(true, color.isThemed());
+ // TODO Fix the grey theme color in Column B
+ if (idx != 2) {
+ assertEquals(idx, color.getTheme());
+ assertEquals(rgbExpected[idx], Hex.encodeHexString(color.getRGB()));
}
}
diff --git a/test-data/spreadsheet/Themes2.xls b/test-data/spreadsheet/Themes2.xls
index 7d36cab560..ce7606b407 100755
--- a/test-data/spreadsheet/Themes2.xls
+++ b/test-data/spreadsheet/Themes2.xls
Binary files differ
diff --git a/test-data/spreadsheet/Themes2.xlsx b/test-data/spreadsheet/Themes2.xlsx
index 62e027f2b0..ffccaf3f33 100644
--- a/test-data/spreadsheet/Themes2.xlsx
+++ b/test-data/spreadsheet/Themes2.xlsx
Binary files differ