Пример #1
0
        public ISheet CloneSheet(int sheetNum)
        {
            this.ValidateSheetIndex(sheetNum);
            XSSFSheet sheet1 = this.sheets[sheetNum];
            XSSFSheet sheet2 = (XSSFSheet)this.CreateSheet(this.GetUniqueSheetName(sheet1.SheetName));

            try
            {
                MemoryStream memoryStream = new MemoryStream();
                sheet1.Write((Stream)memoryStream);
                sheet2.Read((Stream) new MemoryStream(memoryStream.ToArray()));
            }
            catch (IOException ex)
            {
                throw new POIXMLException("Failed to clone sheet", (Exception)ex);
            }
            CT_Worksheet ctWorksheet = sheet2.GetCTWorksheet();

            if (ctWorksheet.IsSetLegacyDrawing())
            {
                XSSFWorkbook.logger.Log(5, (object)"Cloning sheets with comments is not yet supported.");
                ctWorksheet.UnsetLegacyDrawing();
            }
            if (ctWorksheet.IsSetPageSetup())
            {
                XSSFWorkbook.logger.Log(5, (object)"Cloning sheets with page setup is not yet supported.");
                ctWorksheet.UnsetPageSetup();
            }
            sheet2.IsSelected = false;
            List <POIXMLDocumentPart> relations = sheet1.GetRelations();
            XSSFDrawing xssfDrawing             = (XSSFDrawing)null;

            foreach (POIXMLDocumentPart part in relations)
            {
                if (part is XSSFDrawing)
                {
                    xssfDrawing = (XSSFDrawing)part;
                }
                else
                {
                    PackageRelationship packageRelationship = part.GetPackageRelationship();
                    sheet2.GetPackagePart().AddRelationship(packageRelationship.TargetUri, packageRelationship.TargetMode.Value, packageRelationship.RelationshipType);
                    sheet2.AddRelation(packageRelationship.Id, part);
                }
            }
            if (xssfDrawing != null)
            {
                if (ctWorksheet.IsSetDrawing())
                {
                    ctWorksheet.UnsetDrawing();
                }
                (sheet2.CreateDrawingPatriarch() as XSSFDrawing).GetCTDrawing().Set(xssfDrawing.GetCTDrawing());
                foreach (POIXMLDocumentPart relation in (sheet1.CreateDrawingPatriarch() as XSSFDrawing).GetRelations())
                {
                    PackageRelationship packageRelationship = relation.GetPackageRelationship();
                    (sheet2.CreateDrawingPatriarch() as XSSFDrawing).GetPackagePart().AddRelationship(packageRelationship.TargetUri, packageRelationship.TargetMode.Value, packageRelationship.RelationshipType, packageRelationship.Id);
                }
            }
            return((ISheet)sheet2);
        }
Пример #2
0
        public void TestColumn()
        {
            CT_Worksheet worksheet = new CT_Worksheet();

            CT_Cols cols1 = worksheet.AddNewCols();
            CT_Col  col1  = cols1.AddNewCol();

            col1.min    = (1);
            col1.max    = (1);
            col1.width  = (88);
            col1.hidden = (true);
            CT_Col col2 = cols1.AddNewCol();

            col2.min = (2);
            col2.max = (3);
            CT_Cols cols2 = worksheet.AddNewCols();
            CT_Col  col4  = cols2.AddNewCol();

            col4.min = (3);
            col4.max = (6);

            // Remember - POI column 0 == OOXML column 1
            ColumnHelper helper = new ColumnHelper(worksheet);

            Assert.IsNotNull(helper.GetColumn(0, false));
            Assert.IsNotNull(helper.GetColumn(1, false));
            Assert.AreEqual(88.0, helper.GetColumn(0, false).width, 0.0);
            Assert.AreEqual(0.0, helper.GetColumn(1, false).width, 0.0);
            Assert.IsTrue(helper.GetColumn(0, false).hidden);
            Assert.IsFalse(helper.GetColumn(1, false).hidden);
            Assert.IsNull(helper.GetColumn(99, false));
            Assert.IsNotNull(helper.GetColumn(5, false));
        }
 public StreamsheetParser(TextWriter output, bool startAtPrelude)
 {
     _output          = output;
     _worksheet       = (CT_Worksheet)Root;
     _sectionsInOrder = new WriteDelegate[14]
     {
         WritePrelude,
         _worksheet.Write_sheetPr,
         _worksheet.Write_sheetViews,
         _worksheet.Write_sheetFormatPr,
         _worksheet.Write_cols,
         _worksheet.Write_sheetData,
         _worksheet.Write_mergeCells,
         _worksheet.Write_hyperlinks,
         _worksheet.Write_pageMargins,
         _worksheet.Write_pageSetup,
         _worksheet.Write_headerFooter,
         _worksheet.Write_drawing,
         _worksheet.Write_picture,
         WriteAfterword
     };
     _pendingCloseTag = null;
     if (startAtPrelude)
     {
         _currentSection = StreamSheetSection.Prelude;
         return;
     }
     TryMoveToSection(StreamSheetSection.SheetData, 1);
     _pendingCloseTag = CT_Worksheet.SheetDataElementName;
     new CT_SheetData().WriteOpenTag(_output, CT_Worksheet.SheetDataElementName, 1, Namespaces, root: false);
 }
Пример #4
0
 public StreamsheetParser(TextWriter output, bool startAtPrelude)
 {
     this._output          = output;
     this._worksheet       = (CT_Worksheet)this.Root;
     this._sectionsInOrder = new WriteDelegate[14]
     {
         this.WritePrelude,
         this._worksheet.Write_sheetPr,
         this._worksheet.Write_sheetViews,
         this._worksheet.Write_sheetFormatPr,
         this._worksheet.Write_cols,
         this._worksheet.Write_sheetData,
         this._worksheet.Write_mergeCells,
         this._worksheet.Write_hyperlinks,
         this._worksheet.Write_pageMargins,
         this._worksheet.Write_pageSetup,
         this._worksheet.Write_headerFooter,
         this._worksheet.Write_drawing,
         this._worksheet.Write_picture,
         this.WriteAfterword
     };
     this._pendingCloseTag = null;
     if (startAtPrelude)
     {
         this._currentSection = StreamSheetSection.Prelude;
     }
     else
     {
         this.TryMoveToSection(StreamSheetSection.SheetData, 1);
         this._pendingCloseTag = CT_Worksheet.SheetDataElementName;
         new CT_SheetData().WriteOpenTag(this._output, CT_Worksheet.SheetDataElementName, 1, this.Namespaces, false);
     }
 }
Пример #5
0
        /**
         * Adds a copy of HSSFConditionalFormatting object to the sheet
         * <p>This method could be used to copy HSSFConditionalFormatting object
         * from one sheet to another. For example:
         * <pre>
         * HSSFConditionalFormatting cf = sheet.GetConditionalFormattingAt(index);
         * newSheet.AddConditionalFormatting(cf);
         * </pre>
         *
         * @param cf HSSFConditionalFormatting object
         * @return index of the new Conditional Formatting object
         */
        public int AddConditionalFormatting(IConditionalFormatting cf)
        {
            XSSFConditionalFormatting xcf = (XSSFConditionalFormatting)cf;
            CT_Worksheet sh = _sheet.GetCTWorksheet();

            sh.AddNewConditionalFormatting().Set(xcf.GetCTConditionalFormatting());//this is already copied in Set -> .Copy()); ommitted
            return(sh.SizeOfConditionalFormattingArray() - 1);
        }
        public int AddConditionalFormatting(IConditionalFormatting cf)
        {
            XSSFConditionalFormatting conditionalFormatting = (XSSFConditionalFormatting)cf;
            CT_Worksheet ctWorksheet = this._sheet.GetCTWorksheet();

            ctWorksheet.AddNewConditionalFormatting().Set(conditionalFormatting.GetCTConditionalFormatting());
            return(ctWorksheet.SizeOfConditionalFormattingArray() - 1);
        }
Пример #7
0
        public void TestAddCleanColIntoCols()
        {
            CT_Worksheet worksheet = new CT_Worksheet();
            ColumnHelper helper    = new ColumnHelper(worksheet);

            CT_Cols cols1 = new CT_Cols();
            CT_Col  col1  = cols1.AddNewCol();

            col1.min    = (1);
            col1.max    = (1);
            col1.width  = (88);
            col1.hidden = (true);
            CT_Col col2 = cols1.AddNewCol();

            col2.min = (2);
            col2.max = (3);
            CT_Col col3 = cols1.AddNewCol();

            col3.min = (13);
            col3.max = (16750);
            Assert.AreEqual(3, cols1.sizeOfColArray());
            CT_Col col4 = cols1.AddNewCol();

            col4.min = (8);
            col4.max = (9);
            Assert.AreEqual(4, cols1.sizeOfColArray());

            // No overlap
            helper.addCleanColIntoCols(cols1, createCol(4, 5));
            Assert.AreEqual(5, cols1.sizeOfColArray());

            // Overlaps with 8 - 9 (overlap and after replacements required)
            CT_Col col6 = createCol(8, 11);

            col6.hidden = (true);
            helper.AddCleanColIntoCols(cols1, col6);
            Assert.AreEqual(6, cols1.sizeOfColArray());

            // Overlaps with 8 - 9 (before and overlap replacements required)
            CT_Col col7 = createCol(6, 8);

            col7.width = (17.0);
            helper.AddCleanColIntoCols(cols1, col7);
            Assert.AreEqual(8, cols1.sizeOfColArray());

            // Overlaps with 13 - 16750 (before, overlap and after replacements required)
            helper.addCleanColIntoCols(cols1, createCol(20, 30));
            Assert.AreEqual(10, cols1.sizeOfColArray());

            // Overlaps with 20 - 30 (before, overlap and after replacements required)
            helper.addCleanColIntoCols(cols1, createCol(25, 27));

            // TODO - assert something interesting
            Assert.AreEqual(12, cols1.col.Count);
            Assert.AreEqual(1u, cols1.GetColArray(0).min);
            Assert.AreEqual(16750u, cols1.GetColArray(11).max);
        }
Пример #8
0
 public XSSFPrintSetup(CT_Worksheet worksheet)
 {
     this.ctWorksheet = worksheet;
     this.pageSetup   = !this.ctWorksheet.IsSetPageSetup() ? this.ctWorksheet.AddNewPageSetup() : this.ctWorksheet.pageSetup;
     if (this.ctWorksheet.IsSetPageMargins())
     {
         this.pageMargins = this.ctWorksheet.pageMargins;
     }
     else
     {
         this.pageMargins = this.ctWorksheet.AddNewPageMargins();
     }
 }
Пример #9
0
        public void TestSetGetUsePage()
        {
            CT_Worksheet worksheet = new CT_Worksheet();
            CT_PageSetup pSetup    = worksheet.AddNewPageSetup();

            pSetup.useFirstPageNumber = (false);
            XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet);

            Assert.AreEqual(false, printSetup.UsePage);

            printSetup.UsePage = (true);
            Assert.AreEqual(true, pSetup.useFirstPageNumber);
        }
Пример #10
0
        public void TestSetGetNotes()
        {
            CT_Worksheet worksheet = new CT_Worksheet();
            CT_PageSetup pSetup    = worksheet.AddNewPageSetup();

            pSetup.cellComments = ST_CellComments.none;
            XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet);

            Assert.AreEqual(false, printSetup.Notes);

            printSetup.Notes = true;
            Assert.AreEqual(PrintCellComments.AS_DISPLAYED.Value, (int)pSetup.cellComments);
        }
Пример #11
0
        public void TestSetGetDraft()
        {
            CT_Worksheet worksheet = new CT_Worksheet();
            CT_PageSetup pSetup    = worksheet.AddNewPageSetup();

            pSetup.draft = (false);
            XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet);

            Assert.AreEqual(false, printSetup.Draft);

            printSetup.Draft = (true);
            Assert.AreEqual(true, pSetup.draft);
        }
Пример #12
0
        public void TestSetGetNoColor()
        {
            CT_Worksheet worksheet = new CT_Worksheet();
            CT_PageSetup pSetup    = worksheet.AddNewPageSetup();

            pSetup.blackAndWhite = (false);
            XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet);

            Assert.AreEqual(false, printSetup.NoColor);

            printSetup.NoColor = true;
            Assert.AreEqual(true, pSetup.blackAndWhite);
        }
Пример #13
0
        public void TestSetGetValidSettings()
        {
            CT_Worksheet worksheet = new CT_Worksheet();
            CT_PageSetup pSetup    = worksheet.AddNewPageSetup();

            pSetup.usePrinterDefaults = (false);
            XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet);

            Assert.AreEqual(false, printSetup.ValidSettings);

            printSetup.ValidSettings = (true);
            Assert.AreEqual(true, pSetup.usePrinterDefaults);
        }
Пример #14
0
        public void TestSetGetScale()
        {
            CT_Worksheet worksheet = new CT_Worksheet();
            CT_PageSetup pSetup    = worksheet.AddNewPageSetup();

            pSetup.scale = (uint)9;
            XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet);

            Assert.AreEqual(9, printSetup.Scale);

            printSetup.Scale = ((short)100);
            Assert.AreEqual((uint)100, pSetup.scale);
        }
Пример #15
0
        public void TestSetGetCopies()
        {
            CT_Worksheet worksheet = new CT_Worksheet();
            CT_PageSetup pSetup    = worksheet.AddNewPageSetup();

            pSetup.copies = (9);
            XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet);

            Assert.AreEqual(9, printSetup.Copies);

            printSetup.Copies = (short)15;
            Assert.AreEqual((uint)15, pSetup.copies);
        }
Пример #16
0
        public void TestSetGetLeftToRight()
        {
            CT_Worksheet worksheet = new CT_Worksheet();
            CT_PageSetup pSetup    = worksheet.AddNewPageSetup();

            pSetup.pageOrder = (ST_PageOrder.downThenOver);
            XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet);

            Assert.AreEqual(false, printSetup.LeftToRight);

            printSetup.LeftToRight = (true);
            Assert.AreEqual(PageOrder.OVER_THEN_DOWN.Value, (int)pSetup.pageOrder);
        }
Пример #17
0
        public void TestSetGetPageStart()
        {
            CT_Worksheet worksheet = new CT_Worksheet();
            CT_PageSetup pSetup    = worksheet.AddNewPageSetup();

            pSetup.firstPageNumber = 9;
            XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet);

            Assert.AreEqual(9, printSetup.PageStart);

            printSetup.PageStart = ((short)1);
            Assert.AreEqual((uint)1, pSetup.firstPageNumber);
        }
Пример #18
0
        public void SerializeEmptyWorksheetDocumentTest()
        {
            CT_Worksheet worksheet = new CT_Worksheet();

            StringWriter stream = new StringWriter();

            WorksheetDocument_Accessor.serializer.Serialize(stream, worksheet, WorksheetDocument_Accessor.namespaces);
            string expected = @"<?xml version=""1.0"" encoding=""utf-16""?>
<worksheet xmlns:r=""http://schemas.openxmlformats.org/officeDocument/2006/relationships"" xmlns=""http://schemas.openxmlformats.org/spreadsheetml/2006/main"">
  <sheetData />
</worksheet>";

            Assert.AreEqual(expected, stream.ToString());
        }
Пример #19
0
        public void TestSetGetPaperSize()
        {
            CT_Worksheet worksheet = new CT_Worksheet();
            CT_PageSetup pSetup    = worksheet.AddNewPageSetup();

            pSetup.paperSize = (9);
            XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet);

            Assert.AreEqual(PaperSize.A4, printSetup.GetPaperSizeEnum());
            Assert.AreEqual(9, printSetup.PaperSize);

            printSetup.SetPaperSize(PaperSize.A3);
            Assert.AreEqual((uint)8, pSetup.paperSize);
        }
Пример #20
0
        /**
         * Creates and adds a hidden column and then a best fit column with the given min/max pairs.
         * Suitable for testing handling of overlap.
         */
        private CT_Cols createHiddenAndBestFitColsWithHelper(int hiddenMin, int hiddenMax, int bestFitMin, int bestFitMax)
        {
            CT_Worksheet worksheet = new CT_Worksheet();
            ColumnHelper helper    = new ColumnHelper(worksheet);
            CT_Cols      cols      = worksheet.GetColsArray(0);
            CT_Col       hidden    = createCol(hiddenMin, hiddenMax);

            hidden.hidden = (true);
            helper.addCleanColIntoCols(cols, hidden);
            CT_Col bestFit = createCol(bestFitMin, bestFitMax);

            bestFit.bestFit = (true);
            helper.addCleanColIntoCols(cols, bestFit);
            return(cols);
        }
Пример #21
0
        public void TestSetGetOrientation()
        {
            CT_Worksheet worksheet = new CT_Worksheet();
            CT_PageSetup pSetup    = worksheet.AddNewPageSetup();

            pSetup.orientation = (ST_Orientation.portrait);
            XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet);

            Assert.AreEqual(PrintOrientation.PORTRAIT, printSetup.Orientation);
            Assert.AreEqual(false, printSetup.Landscape);
            Assert.AreEqual(false, printSetup.NoOrientation);

            printSetup.Orientation = (PrintOrientation.LANDSCAPE);
            Assert.AreEqual((int)pSetup.orientation, printSetup.Orientation.Value);
            Assert.AreEqual(true, printSetup.Landscape);
            Assert.AreEqual(false, printSetup.NoOrientation);
        }
Пример #22
0
        public void TestSetGetHVResolution()
        {
            CT_Worksheet worksheet = new CT_Worksheet();
            CT_PageSetup pSetup    = worksheet.AddNewPageSetup();

            pSetup.horizontalDpi = (120);
            pSetup.verticalDpi   = (100);
            XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet);

            Assert.AreEqual(120, printSetup.HResolution);
            Assert.AreEqual(100, printSetup.VResolution);

            printSetup.HResolution = ((short)150);
            printSetup.VResolution = ((short)130);
            Assert.AreEqual((uint)150, pSetup.horizontalDpi);
            Assert.AreEqual((uint)130, pSetup.verticalDpi);
        }
Пример #23
0
        public void TestSetGetHeaderFooterMargin()
        {
            CT_Worksheet   worksheet = new CT_Worksheet();
            CT_PageMargins pMargins  = worksheet.AddNewPageMargins();

            pMargins.header = (1.5);
            pMargins.footer = (2);
            XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet);

            Assert.AreEqual(1.5, printSetup.HeaderMargin, 0.0);
            Assert.AreEqual(2.0, printSetup.FooterMargin, 0.0);

            printSetup.HeaderMargin = (5);
            printSetup.FooterMargin = (3.5);
            Assert.AreEqual(5.0, pMargins.header, 0.0);
            Assert.AreEqual(3.5, pMargins.footer, 0.0);
        }
Пример #24
0
        public void TestSetGetFitWidthHeight()
        {
            CT_Worksheet worksheet = new CT_Worksheet();
            CT_PageSetup pSetup    = worksheet.AddNewPageSetup();

            pSetup.fitToWidth  = (50);
            pSetup.fitToHeight = (99);
            XSSFPrintSetup printSetup = new XSSFPrintSetup(worksheet);

            Assert.AreEqual(50, printSetup.FitWidth);
            Assert.AreEqual(99, printSetup.FitHeight);

            printSetup.FitWidth  = ((short)66);
            printSetup.FitHeight = ((short)80);
            Assert.AreEqual((uint)66, pSetup.fitToWidth);
            Assert.AreEqual((uint)80, pSetup.fitToHeight);
        }
Пример #25
0
        private static int countColumns(CT_Worksheet worksheet)
        {
            int count;

            count = 0;
            for (int i = 0; i < worksheet.sizeOfColsArray(); i++)
            {
                for (int y = 0; y < worksheet.GetColsArray(i).sizeOfColArray(); y++)
                {
                    for (long k = worksheet.GetColsArray(i).GetColArray(y).min; k <= worksheet
                         .GetColsArray(i).GetColArray(y).max; k++)
                    {
                        count++;
                    }
                }
            }
            return(count);
        }
 public XMLPageSetupModel(CT_Worksheet sheet, XMLWorksheetModel sheetModel)
 {
     if (sheet == null || sheetModel == null)
     {
         throw new FatalException();
     }
     _sheet      = sheet;
     _sheetModel = sheetModel;
     _interface  = new PageSetup(this);
     if (_sheet.PageMargins == null)
     {
         SetDefaultMargins();
     }
     if (_sheet.PageSetup == null)
     {
         SetDefaultPageSetup();
     }
     SetupUseZoom();
 }
Пример #27
0
        public void TestCloneCol()
        {
            CT_Worksheet worksheet = new CT_Worksheet();
            ColumnHelper helper    = new ColumnHelper(worksheet);

            CT_Cols cols = new CT_Cols();
            CT_Col  col  = new CT_Col();

            col.min    = (2);
            col.max    = (8);
            col.hidden = (true);
            col.width  = (13.4);
            CT_Col newCol = helper.CloneCol(cols, col);

            Assert.AreEqual(2u, newCol.min);
            Assert.AreEqual(8u, newCol.max);
            Assert.IsTrue(newCol.hidden);
            Assert.AreEqual(13.4, newCol.width, 0.0);
        }
Пример #28
0
        public void TestBug57423()
        {
            XSSFWorkbook workbook  = new XSSFWorkbook();
            XSSFSheet    sheet     = (XSSFSheet)workbook.CreateSheet();
            CT_Worksheet wsh       = sheet.GetCTWorksheet();
            CT_SheetData sheetData = wsh.sheetData;

            XSSFRow row1 = (XSSFRow)sheet.CreateRow(0);

            row1.CreateCell(0).SetCellValue("a");

            XSSFRow row2 = (XSSFRow)sheet.CreateRow(1);

            row2.CreateCell(0).SetCellValue("b");

            XSSFRow row3 = (XSSFRow)sheet.CreateRow(2);

            row3.CreateCell(0).SetCellValue("c");

            sheet.ShiftRows(0, 1, 3); //move "a" and "b" 3 rows down
            //      Before:    After:
            //         A        A
            // 1       a        <empty>
            // 2       b        <empty>
            // 3       c        c
            // 4                a
            // 5                b

            List <CT_Row> xrow = sheetData.row;

            Assert.AreEqual(3, xrow.Count);

            // Rows are sorted: [3, 4, 5]
            Assert.AreEqual(3u, xrow[0].r);
            Assert.IsTrue(xrow[0].Equals(row3.GetCTRow()));

            Assert.AreEqual(4u, xrow[1].r);
            Assert.IsTrue(xrow[1].Equals(row1.GetCTRow()));

            Assert.AreEqual(5u, xrow[2].r);
            Assert.IsTrue(xrow[2].Equals(row2.GetCTRow()));
        }
Пример #29
0
 public XMLPageSetupModel(CT_Worksheet sheet, XMLWorksheetModel sheetModel)
 {
     if (sheet != null && sheetModel != null)
     {
         this._sheet      = sheet;
         this._sheetModel = sheetModel;
         this._interface  = new PageSetup(this);
         if (this._sheet.PageMargins == null)
         {
             this.SetDefaultMargins();
         }
         if (this._sheet.PageSetup == null)
         {
             this.SetDefaultPageSetup();
         }
         this.SetupUseZoom();
         return;
     }
     throw new FatalException();
 }
Пример #30
0
        public void TestCleanColumns()
        {
            CT_Worksheet worksheet = new CT_Worksheet();

            CT_Cols cols1 = worksheet.AddNewCols();
            CT_Col  col1  = cols1.AddNewCol();

            col1.min    = (1);
            col1.max    = (1);
            col1.width  = (88);
            col1.hidden = (true);
            CT_Col col2 = cols1.AddNewCol();

            col2.min = (2);
            col2.max = (3);
            CT_Cols cols2 = worksheet.AddNewCols();
            CT_Col  col4  = cols2.AddNewCol();

            col4.min = (13);
            col4.max = (16384);

            // Test cleaning cols
            Assert.AreEqual(2, worksheet.sizeOfColsArray());
            int count = countColumns(worksheet);

            Assert.AreEqual(16375, count);
            // Clean columns and Test a clean worksheet
            ColumnHelper helper = new ColumnHelper(worksheet);

            Assert.AreEqual(1, worksheet.sizeOfColsArray());
            count = countColumns(worksheet);
            Assert.AreEqual(16375, count);
            // Remember - POI column 0 == OOXML column 1
            Assert.AreEqual(88.0, helper.GetColumn(0, false).width, 0.0);
            Assert.IsTrue(helper.GetColumn(0, false).hidden);
            Assert.AreEqual(0.0, helper.GetColumn(1, false).width, 0.0);
            Assert.IsFalse(helper.GetColumn(1, false).hidden);
        }