public void TestPopulateExisting() { XSSFWorkbook workbook = XSSFTestDataSamples.OpenSampleWorkbook(testFile); Assert.IsNotNull(workbook.GetStylesSource()); StylesTable st = workbook.GetStylesSource(); Assert.AreEqual(11, st.GetXfsSize()); Assert.AreEqual(1, st.GetStyleXfsSize()); Assert.AreEqual(8, st.GetNumberFormatSize()); int nf1 = st.PutNumberFormat("YYYY-mm-dd"); int nf2 = st.PutNumberFormat("YYYY-mm-DD"); Assert.AreEqual(nf1, st.PutNumberFormat("YYYY-mm-dd")); st = ((XSSFWorkbook)XSSFTestDataSamples.WriteOutAndReadBack(workbook)).GetStylesSource(); Assert.AreEqual(11, st.GetXfsSize()); Assert.AreEqual(1, st.GetStyleXfsSize()); Assert.AreEqual(10, st.GetNumberFormatSize()); Assert.AreEqual("YYYY-mm-dd", st.GetNumberFormatAt(nf1)); Assert.AreEqual(nf1, st.PutNumberFormat("YYYY-mm-dd")); Assert.AreEqual(nf2, st.PutNumberFormat("YYYY-mm-DD")); }
public void TestPopulateNew() { XSSFWorkbook wb = new XSSFWorkbook(); StylesTable st = wb.GetStylesSource(); Assert.IsNotNull(st.GetCTStylesheet()); Assert.AreEqual(1, st.GetXfsSize()); Assert.AreEqual(1, st.GetStyleXfsSize()); Assert.AreEqual(0, st.GetNumberFormatSize()); int nf1 = st.PutNumberFormat("yyyy-mm-dd"); int nf2 = st.PutNumberFormat("yyyy-mm-DD"); Assert.AreEqual(nf1, st.PutNumberFormat("yyyy-mm-dd")); st.PutStyle(new XSSFCellStyle(st)); // Save and re-load st = ((XSSFWorkbook)XSSFTestDataSamples.WriteOutAndReadBack(wb)).GetStylesSource(); Assert.IsNotNull(st.GetCTStylesheet()); Assert.AreEqual(2, st.GetXfsSize()); Assert.AreEqual(1, st.GetStyleXfsSize()); Assert.AreEqual(2, st.GetNumberFormatSize()); Assert.AreEqual("yyyy-mm-dd", st.GetNumberFormatAt(nf1)); Assert.AreEqual(nf1, st.PutNumberFormat("yyyy-mm-dd")); Assert.AreEqual(nf2, st.PutNumberFormat("yyyy-mm-DD")); }
public void decreaseUpperLimitBelowCurrentNumDataFormats() { XSSFWorkbook wb = new XSSFWorkbook(); try { StylesTable styles = wb.GetStylesSource(); styles.PutNumberFormat(customDataFormat); // Try decreasing the upper limit below the current number of formats try { styles.MaxNumberOfDataFormats = (0); Assert.Fail("Expected to raise InvalidOperationException"); } catch (InvalidOperationException e) { if (e.Message.StartsWith("Cannot set the maximum number of data formats less than the current quantity.")) { // expected } else { throw e; } } } finally { wb.Close(); } }
public void addDataFormatsBeyondUpperLimit() { XSSFWorkbook wb = new XSSFWorkbook(); try { StylesTable styles = wb.GetStylesSource(); styles.MaxNumberOfDataFormats = (0); // Try adding a format beyond the upper limit try { styles.PutNumberFormat("\"test \"0"); Assert.Fail("Expected to raise InvalidOperationException"); } catch (InvalidOperationException e) { if (e.Message.StartsWith("The maximum number of Data Formats was exceeded.")) { // expected } else { throw e; } } } finally { wb.Close(); } }