public void TestBug56957CloseWorkbook() { FileInfo file = TempFile.CreateTempFile("TestBug56957_", ".xlsx"); //String dateExp = "Sun Nov 09 00:00:00 CET 2014"; DateTime dateExp = LocaleUtil.GetLocaleCalendar(2014, 11, 9); IWorkbook workbook = null; try { // as the file is written to, we make a copy before actually working on it FileHelper.CopyFile(HSSFTestDataSamples.GetSampleFile("56957.xlsx"), file); Assert.IsTrue(file.Exists); // read-only mode works! workbook = WorkbookFactory.Create(OPCPackage.Open(file, PackageAccess.READ)); DateTime dateAct = workbook.GetSheetAt(0).GetRow(0).GetCell(0, MissingCellPolicy.CREATE_NULL_AS_BLANK).DateCellValue; Assert.AreEqual(dateExp, dateAct); workbook.Close(); workbook = null; workbook = WorkbookFactory.Create(OPCPackage.Open(file, PackageAccess.READ)); dateAct = workbook.GetSheetAt(0).GetRow(0).GetCell(0, MissingCellPolicy.CREATE_NULL_AS_BLANK).DateCellValue; Assert.AreEqual(dateExp, dateAct); workbook.Close(); workbook = null; // now check read/write mode workbook = WorkbookFactory.Create(OPCPackage.Open(file, PackageAccess.READ_WRITE)); dateAct = workbook.GetSheetAt(0).GetRow(0).GetCell(0, MissingCellPolicy.CREATE_NULL_AS_BLANK).DateCellValue; Assert.AreEqual(dateExp, dateAct); workbook.Close(); workbook = null; workbook = WorkbookFactory.Create(OPCPackage.Open(file, PackageAccess.READ_WRITE)); dateAct = workbook.GetSheetAt(0).GetRow(0).GetCell(0, MissingCellPolicy.CREATE_NULL_AS_BLANK).DateCellValue; Assert.AreEqual(dateExp, dateAct); workbook.Close(); workbook = null; } finally { if (workbook != null) { workbook.Close(); } Assert.IsTrue(file.Exists); file.Delete(); file.Refresh(); Assert.IsTrue(!file.Exists); } }
public void TestFromFile() { foreach (String ver in new String[] { "4", "5", "95" }) { String filename = "testEXCEL_" + ver + ".xls"; FileInfo f = HSSFTestDataSamples.GetSampleFile(filename); OldExcelExtractor extractor = new OldExcelExtractor(f); String text = extractor.Text; Assert.IsNotNull(text); Assert.IsTrue(text.Length > 100); } }
public void TestUserFile() { Biff8EncryptionKey.CurrentUserPassword = (/*setter*/ "abc"); NPOIFSFileSystem fs = new NPOIFSFileSystem(HSSFTestDataSamples.GetSampleFile("xor-encryption-abc.xls"), true); IWorkbook hwb = new HSSFWorkbook(fs.Root, true); ISheet sh = hwb.GetSheetAt(0); Assert.AreEqual(1.0, sh.GetRow(0).GetCell(0).NumericCellValue, 0.0); Assert.AreEqual(2.0, sh.GetRow(1).GetCell(0).NumericCellValue, 0.0); Assert.AreEqual(3.0, sh.GetRow(2).GetCell(0).NumericCellValue, 0.0); fs.Close(); }
public void TestDirectoryNode() { FileInfo file = HSSFTestDataSamples.GetSampleFile("FormulaRefs.xls"); NPOIFSFileSystem fs = new NPOIFSFileSystem(file); try { OldExcelExtractor extractor = new OldExcelExtractor(fs.Root); extractor.Close(); } finally { fs.Close(); } }
public void TestInputStreamNPOIHeader() { FileInfo file = HSSFTestDataSamples.GetSampleFile("FormulaRefs.xls"); Stream stream = file.OpenRead(); try { OldExcelExtractor extractor = new OldExcelExtractor(stream); extractor.Close(); } finally { stream.Close(); } }
public void TestCreateReadOnly() { IWorkbook wb; // POIFS -> hssf wb = WorkbookFactory.Create(HSSFTestDataSamples.GetSampleFile(xls).FullName, null, true); Assert.IsNotNull(wb); Assert.IsTrue(wb is HSSFWorkbook); AssertCloseDoesNotModifyFile(xls, wb); // Package -> xssf wb = WorkbookFactory.Create(HSSFTestDataSamples.GetSampleFile(xlsx).FullName, null, true); Assert.IsNotNull(wb); Assert.IsTrue(wb is XSSFWorkbook); AssertCloseDoesNotModifyFile(xlsx, wb); }
public void TestInputStream() { FileInfo file = HSSFTestDataSamples.GetSampleFile("testEXCEL_3.xls"); Stream stream = file.OpenRead(); try { OldExcelExtractor extractor = new OldExcelExtractor(stream); String text = extractor.Text; Assert.IsNotNull(text); extractor.Close(); } finally { stream.Close(); } }
private static OldExcelExtractor CreateExtractor(String sampleFileName) { FileInfo file = HSSFTestDataSamples.GetSampleFile(sampleFileName); return(new OldExcelExtractor(file)); }
public static FileInfo GetSampleFile(String sampleFileName) { return(HSSFTestDataSamples.GetSampleFile(sampleFileName)); }
public void TestCreateWithPasswordFromFile() { IWorkbook wb; // Unprotected, no password given, opens normally wb = WorkbookFactory.Create( HSSFTestDataSamples.GetSampleFile(xls).FullName, null ); Assert.IsNotNull(wb); Assert.IsTrue(wb is HSSFWorkbook); AssertCloseDoesNotModifyFile(xls, wb); wb = WorkbookFactory.Create( HSSFTestDataSamples.GetSampleFile(xlsx).FullName, null ); Assert.IsNotNull(wb); Assert.IsTrue(wb is XSSFWorkbook); AssertCloseDoesNotModifyFile(xlsx, wb); // Unprotected, wrong password, opens normally wb = WorkbookFactory.Create( HSSFTestDataSamples.GetSampleFile(xls).FullName, "wrong" ); Assert.IsNotNull(wb); Assert.IsTrue(wb is HSSFWorkbook); AssertCloseDoesNotModifyFile(xls, wb); wb = WorkbookFactory.Create( HSSFTestDataSamples.GetSampleFile(xlsx).FullName, "wrong" ); Assert.IsNotNull(wb); Assert.IsTrue(wb is XSSFWorkbook); AssertCloseDoesNotModifyFile(xlsx, wb); // Protected, correct password, opens fine wb = WorkbookFactory.Create( HSSFTestDataSamples.GetSampleFile(xls_prot[0]).FullName, xls_prot[1] ); Assert.IsNotNull(wb); Assert.IsTrue(wb is HSSFWorkbook); AssertCloseDoesNotModifyFile(xls, wb); wb = WorkbookFactory.Create( HSSFTestDataSamples.GetSampleFile(xlsx_prot[0]).FullName, xlsx_prot[1] ); Assert.IsNotNull(wb); Assert.IsTrue(wb is XSSFWorkbook); Assert.IsTrue(wb.NumberOfSheets > 0); Assert.IsNotNull(wb.GetSheetAt(0)); Assert.IsNotNull(wb.GetSheetAt(0).GetRow(0)); AssertCloseDoesNotModifyFile(xlsx, wb); // Protected, wrong password, throws Exception try { wb = WorkbookFactory.Create( HSSFTestDataSamples.GetSampleFile(xls_prot[0]).FullName, "wrong" ); AssertCloseDoesNotModifyFile(xls_prot[0], wb); Assert.Fail("Shouldn't be able to open with the wrong password"); } catch (EncryptedDocumentException) { // expected here } try { wb = WorkbookFactory.Create( HSSFTestDataSamples.GetSampleFile(xlsx_prot[0]).FullName, "wrong" ); AssertCloseDoesNotModifyFile(xlsx_prot[0], wb); Assert.Fail("Shouldn't be able to open with the wrong password"); } catch (EncryptedDocumentException) { // expected here } }