rubyXL 3.4.18 → 3.4.25
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile +8 -8
- data/Gemfile.lock +37 -30
- data/README.rdoc +18 -9
- data/Rakefile +24 -25
- data/VERSION +1 -1
- data/lib/rubyXL/cell.rb +2 -4
- data/lib/rubyXL/convenience_methods/cell.rb +35 -31
- data/lib/rubyXL/convenience_methods/color.rb +3 -7
- data/lib/rubyXL/convenience_methods/workbook.rb +9 -4
- data/lib/rubyXL/convenience_methods/worksheet.rb +3 -4
- data/lib/rubyXL/objects/border.rb +0 -3
- data/lib/rubyXL/objects/calculation_chain.rb +2 -2
- data/lib/rubyXL/objects/cell_style.rb +1 -3
- data/lib/rubyXL/objects/chartsheet.rb +5 -9
- data/lib/rubyXL/objects/color.rb +1 -3
- data/lib/rubyXL/objects/column_range.rb +0 -3
- data/lib/rubyXL/objects/comments.rb +1 -4
- data/lib/rubyXL/objects/connection.rb +11 -11
- data/lib/rubyXL/objects/container_nodes.rb +1 -5
- data/lib/rubyXL/objects/content_types.rb +3 -6
- data/lib/rubyXL/objects/data_validation.rb +0 -2
- data/lib/rubyXL/objects/document_properties.rb +9 -13
- data/lib/rubyXL/objects/extensions.rb +0 -2
- data/lib/rubyXL/objects/external_links.rb +4 -6
- data/lib/rubyXL/objects/fill.rb +2 -5
- data/lib/rubyXL/objects/filters.rb +5 -7
- data/lib/rubyXL/objects/font.rb +2 -4
- data/lib/rubyXL/objects/formula.rb +3 -5
- data/lib/rubyXL/objects/ooxml_object.rb +13 -18
- data/lib/rubyXL/objects/query_table.rb +3 -3
- data/lib/rubyXL/objects/reference.rb +6 -8
- data/lib/rubyXL/objects/relationships.rb +5 -10
- data/lib/rubyXL/objects/root.rb +0 -2
- data/lib/rubyXL/objects/shared_strings.rb +3 -6
- data/lib/rubyXL/objects/sheet_common.rb +1 -3
- data/lib/rubyXL/objects/sheet_data.rb +4 -7
- data/lib/rubyXL/objects/simple_types.rb +3 -1
- data/lib/rubyXL/objects/storage.rb +51 -51
- data/lib/rubyXL/objects/stylesheet.rb +8 -15
- data/lib/rubyXL/objects/text.rb +5 -7
- data/lib/rubyXL/objects/theme.rb +4 -7
- data/lib/rubyXL/objects/workbook.rb +25 -27
- data/lib/rubyXL/objects/worksheet.rb +26 -22
- data/lib/rubyXL/parser.rb +1 -3
- data/lib/rubyXL/worksheet.rb +83 -84
- data/lib/rubyXL.rb +0 -1
- data/rdoc/README_rdoc.html +29 -24
- data/rdoc/RubyXL/AExtension.html +2 -2
- data/rdoc/RubyXL/AExtensionStorageArea.html +2 -2
- data/rdoc/RubyXL/ActiveX.html +4 -4
- data/rdoc/RubyXL/ActiveXBinary.html +2 -2
- data/rdoc/RubyXL/AdjustHandleList.html +2 -2
- data/rdoc/RubyXL/Alignment.html +2 -2
- data/rdoc/RubyXL/AlternateContent.html +2 -2
- data/rdoc/RubyXL/Authors.html +2 -2
- data/rdoc/RubyXL/AutoFilter.html +2 -2
- data/rdoc/RubyXL/AutoFilterColumn.html +2 -2
- data/rdoc/RubyXL/BinaryImageFile.html +2 -2
- data/rdoc/RubyXL/BodyProperties.html +2 -2
- data/rdoc/RubyXL/BooleanNode.html +2 -2
- data/rdoc/RubyXL/BooleanValue.html +2 -2
- data/rdoc/RubyXL/Border.html +6 -6
- data/rdoc/RubyXL/BorderEdge.html +4 -4
- data/rdoc/RubyXL/Borders.html +3 -3
- data/rdoc/RubyXL/Break.html +2 -2
- data/rdoc/RubyXL/BreakList.html +2 -2
- data/rdoc/RubyXL/CT_AdjPoint2D.html +2 -2
- data/rdoc/RubyXL/CT_AlphaBiLevelEffect.html +2 -2
- data/rdoc/RubyXL/CT_AlphaModulateEffect.html +2 -2
- data/rdoc/RubyXL/CT_AlphaModulateFixedEffect.html +2 -2
- data/rdoc/RubyXL/CT_AlphaOutsetEffect.html +2 -2
- data/rdoc/RubyXL/CT_AlphaReplaceEffect.html +2 -2
- data/rdoc/RubyXL/CT_Backdrop.html +2 -2
- data/rdoc/RubyXL/CT_Bevel.html +2 -2
- data/rdoc/RubyXL/CT_BiLevelEffect.html +2 -2
- data/rdoc/RubyXL/CT_BlendEffect.html +2 -2
- data/rdoc/RubyXL/CT_Blip.html +2 -2
- data/rdoc/RubyXL/CT_BlipFillProperties.html +2 -2
- data/rdoc/RubyXL/CT_BlurEffect.html +2 -2
- data/rdoc/RubyXL/CT_Camera.html +2 -2
- data/rdoc/RubyXL/CT_Color.html +2 -2
- data/rdoc/RubyXL/CT_ColorChangeEffect.html +2 -2
- data/rdoc/RubyXL/CT_ColorMapping.html +2 -2
- data/rdoc/RubyXL/CT_ColorScheme.html +2 -2
- data/rdoc/RubyXL/CT_ColorSchemeAndMapping.html +2 -2
- data/rdoc/RubyXL/CT_ConnectionSite.html +2 -2
- data/rdoc/RubyXL/CT_ConnectionSiteList.html +2 -2
- data/rdoc/RubyXL/CT_DashStop.html +2 -2
- data/rdoc/RubyXL/CT_DashStopList.html +2 -2
- data/rdoc/RubyXL/CT_DefaultShapeDefinition.html +2 -2
- data/rdoc/RubyXL/CT_DuotoneEffect.html +2 -2
- data/rdoc/RubyXL/CT_EffectContainer.html +2 -2
- data/rdoc/RubyXL/CT_EffectList.html +2 -2
- data/rdoc/RubyXL/CT_EffectReference.html +2 -2
- data/rdoc/RubyXL/CT_EffectStyleItem.html +2 -2
- data/rdoc/RubyXL/CT_EffectStyleList.html +2 -2
- data/rdoc/RubyXL/CT_EmbeddedWAVAudioFile.html +2 -2
- data/rdoc/RubyXL/CT_FillEffect.html +2 -2
- data/rdoc/RubyXL/CT_FillOverlayEffect.html +2 -2
- data/rdoc/RubyXL/CT_FillStyleList.html +2 -2
- data/rdoc/RubyXL/CT_FlatText.html +2 -2
- data/rdoc/RubyXL/CT_FontCollection.html +2 -2
- data/rdoc/RubyXL/CT_FontReference.html +2 -2
- data/rdoc/RubyXL/CT_GeomGuideList.html +2 -2
- data/rdoc/RubyXL/CT_GlowEffect.html +2 -2
- data/rdoc/RubyXL/CT_GradientFillProperties.html +2 -2
- data/rdoc/RubyXL/CT_GradientStop.html +2 -2
- data/rdoc/RubyXL/CT_GradientStopList.html +2 -2
- data/rdoc/RubyXL/CT_HSLEffect.html +2 -2
- data/rdoc/RubyXL/CT_HslColor.html +2 -2
- data/rdoc/RubyXL/CT_Hyperlink.html +2 -2
- data/rdoc/RubyXL/CT_InnerShadowEffect.html +2 -2
- data/rdoc/RubyXL/CT_LightRig.html +2 -2
- data/rdoc/RubyXL/CT_LineEndProperties.html +2 -2
- data/rdoc/RubyXL/CT_LineJoinMiterProperties.html +2 -2
- data/rdoc/RubyXL/CT_LineProperties.html +2 -2
- data/rdoc/RubyXL/CT_LineStyleList.html +2 -2
- data/rdoc/RubyXL/CT_LinearShadeProperties.html +2 -2
- data/rdoc/RubyXL/CT_LuminanceEffect.html +2 -2
- data/rdoc/RubyXL/CT_ObjectStyleDefaults.html +2 -2
- data/rdoc/RubyXL/CT_OuterShadowEffect.html +2 -2
- data/rdoc/RubyXL/CT_Path2D.html +2 -2
- data/rdoc/RubyXL/CT_Path2DArcTo.html +2 -2
- data/rdoc/RubyXL/CT_Path2DCubicBezierTo.html +2 -2
- data/rdoc/RubyXL/CT_Path2DList.html +2 -2
- data/rdoc/RubyXL/CT_Path2DQuadBezierTo.html +2 -2
- data/rdoc/RubyXL/CT_Path2DTo.html +2 -2
- data/rdoc/RubyXL/CT_PathShadeProperties.html +2 -2
- data/rdoc/RubyXL/CT_PatternFillProperties.html +2 -2
- data/rdoc/RubyXL/CT_Point3D.html +2 -2
- data/rdoc/RubyXL/CT_PolarAdjustHandle.html +2 -2
- data/rdoc/RubyXL/CT_PresetColor.html +2 -2
- data/rdoc/RubyXL/CT_PresetLineDashProperties.html +2 -2
- data/rdoc/RubyXL/CT_PresetShadowEffect.html +2 -2
- data/rdoc/RubyXL/CT_PresetTextShape.html +2 -2
- data/rdoc/RubyXL/CT_ReflectionEffect.html +2 -2
- data/rdoc/RubyXL/CT_RelativeOffsetEffect.html +2 -2
- data/rdoc/RubyXL/CT_RelativeRect.html +2 -2
- data/rdoc/RubyXL/CT_SRgbColor.html +2 -2
- data/rdoc/RubyXL/CT_ScRgbColor.html +2 -2
- data/rdoc/RubyXL/CT_Scene3D.html +2 -2
- data/rdoc/RubyXL/CT_SchemeColor.html +2 -2
- data/rdoc/RubyXL/CT_Shape3D.html +2 -2
- data/rdoc/RubyXL/CT_ShapeStyle.html +2 -2
- data/rdoc/RubyXL/CT_SoftEdgesEffect.html +2 -2
- data/rdoc/RubyXL/CT_SphereCoords.html +2 -2
- data/rdoc/RubyXL/CT_StretchInfoProperties.html +2 -2
- data/rdoc/RubyXL/CT_StyleMatrix.html +2 -2
- data/rdoc/RubyXL/CT_StyleMatrixReference.html +2 -2
- data/rdoc/RubyXL/CT_SupplementalFont.html +2 -2
- data/rdoc/RubyXL/CT_SystemColor.html +2 -2
- data/rdoc/RubyXL/CT_TextAutonumberBullet.html +2 -2
- data/rdoc/RubyXL/CT_TextBlipBullet.html +2 -2
- data/rdoc/RubyXL/CT_TextCharBullet.html +2 -2
- data/rdoc/RubyXL/CT_TextCharacterProperties.html +2 -2
- data/rdoc/RubyXL/CT_TextFont.html +2 -2
- data/rdoc/RubyXL/CT_TextListStyle.html +2 -2
- data/rdoc/RubyXL/CT_TextNormalAutofit.html +2 -2
- data/rdoc/RubyXL/CT_TextParagraphProperties.html +2 -2
- data/rdoc/RubyXL/CT_TextSpacing.html +2 -2
- data/rdoc/RubyXL/CT_TextTabStop.html +2 -2
- data/rdoc/RubyXL/CT_TextTabStopList.html +2 -2
- data/rdoc/RubyXL/CT_TileInfoProperties.html +2 -2
- data/rdoc/RubyXL/CT_TintEffect.html +2 -2
- data/rdoc/RubyXL/CT_Transform2D.html +2 -2
- data/rdoc/RubyXL/CT_TransformEffect.html +2 -2
- data/rdoc/RubyXL/CT_Vector3D.html +2 -2
- data/rdoc/RubyXL/CT_XYAdjustHandle.html +2 -2
- data/rdoc/RubyXL/CalculationChain.html +2 -2
- data/rdoc/RubyXL/CalculationChainCell.html +2 -2
- data/rdoc/RubyXL/CalculationProperties.html +2 -2
- data/rdoc/RubyXL/Cell.html +17 -17
- data/rdoc/RubyXL/CellConvenienceMethods.html +105 -51
- data/rdoc/RubyXL/CellExt.html +2 -2
- data/rdoc/RubyXL/CellSmartTag.html +2 -2
- data/rdoc/RubyXL/CellSmartTagProperty.html +2 -2
- data/rdoc/RubyXL/CellSmartTags.html +2 -2
- data/rdoc/RubyXL/CellStyle.html +2 -2
- data/rdoc/RubyXL/CellStyleXFs.html +3 -3
- data/rdoc/RubyXL/CellStyles.html +3 -3
- data/rdoc/RubyXL/CellValue.html +3 -3
- data/rdoc/RubyXL/CellWatch.html +2 -2
- data/rdoc/RubyXL/CellWatches.html +2 -2
- data/rdoc/RubyXL/CellXFs.html +4 -6
- data/rdoc/RubyXL/ChartColorsFile.html +2 -2
- data/rdoc/RubyXL/ChartFile.html +3 -3
- data/rdoc/RubyXL/ChartStyleFile.html +2 -2
- data/rdoc/RubyXL/ChartUserShapesFile.html +2 -2
- data/rdoc/RubyXL/Chartsheet.html +3 -3
- data/rdoc/RubyXL/ChartsheetPageSetup.html +2 -2
- data/rdoc/RubyXL/ChartsheetProperties.html +2 -2
- data/rdoc/RubyXL/ChartsheetProtection.html +2 -2
- data/rdoc/RubyXL/ChartsheetView.html +2 -2
- data/rdoc/RubyXL/ChartsheetViews.html +2 -2
- data/rdoc/RubyXL/Color.html +4 -4
- data/rdoc/RubyXL/ColorConvenienceClasses/HlsColor.html +4 -4
- data/rdoc/RubyXL/ColorConvenienceClasses/RgbColor.html +8 -8
- data/rdoc/RubyXL/ColorConvenienceClasses.html +2 -2
- data/rdoc/RubyXL/ColorConvenienceMethods.html +3 -3
- data/rdoc/RubyXL/ColorFilter.html +2 -2
- data/rdoc/RubyXL/ColorScale.html +2 -2
- data/rdoc/RubyXL/ColorSet.html +2 -2
- data/rdoc/RubyXL/Colors.html +2 -2
- data/rdoc/RubyXL/ColumnRange.html +5 -5
- data/rdoc/RubyXL/ColumnRanges.html +6 -6
- data/rdoc/RubyXL/Comment.html +2 -2
- data/rdoc/RubyXL/CommentList.html +2 -2
- data/rdoc/RubyXL/CommentsFile.html +3 -3
- data/rdoc/RubyXL/ConditionalFormatValue.html +2 -2
- data/rdoc/RubyXL/ConditionalFormatting.html +2 -2
- data/rdoc/RubyXL/ConditionalFormattingRule.html +2 -2
- data/rdoc/RubyXL/Connection.html +2 -2
- data/rdoc/RubyXL/ConnectionTable.html +2 -2
- data/rdoc/RubyXL/ConnectionTables.html +2 -2
- data/rdoc/RubyXL/ConnectionTextField.html +2 -2
- data/rdoc/RubyXL/ConnectionTextFields.html +2 -2
- data/rdoc/RubyXL/Connections.html +2 -2
- data/rdoc/RubyXL/ContentTypeDefault.html +2 -2
- data/rdoc/RubyXL/ContentTypeOverride.html +2 -2
- data/rdoc/RubyXL/ContentTypes.html +6 -6
- data/rdoc/RubyXL/ControlPropertiesFile.html +2 -2
- data/rdoc/RubyXL/CorePropertiesFile.html +11 -11
- data/rdoc/RubyXL/CustomColor.html +2 -2
- data/rdoc/RubyXL/CustomColorList.html +2 -2
- data/rdoc/RubyXL/CustomFilter.html +2 -2
- data/rdoc/RubyXL/CustomFilters.html +2 -2
- data/rdoc/RubyXL/CustomGeometry.html +2 -2
- data/rdoc/RubyXL/CustomProperties.html +2 -2
- data/rdoc/RubyXL/CustomPropertiesFile.html +2 -2
- data/rdoc/RubyXL/CustomProperty.html +2 -2
- data/rdoc/RubyXL/CustomPropertyFile.html +2 -2
- data/rdoc/RubyXL/CustomSheetView.html +2 -2
- data/rdoc/RubyXL/CustomSheetViews.html +2 -2
- data/rdoc/RubyXL/CustomWorkbookView.html +2 -2
- data/rdoc/RubyXL/CustomWorkbookViews.html +2 -2
- data/rdoc/RubyXL/CustomXMLFile.html +2 -2
- data/rdoc/RubyXL/DXF.html +2 -2
- data/rdoc/RubyXL/DXFs.html +2 -2
- data/rdoc/RubyXL/DataBar.html +2 -2
- data/rdoc/RubyXL/DataConsolidate.html +2 -2
- data/rdoc/RubyXL/DataConsolidationReference.html +2 -2
- data/rdoc/RubyXL/DataConsolidationReferences.html +2 -2
- data/rdoc/RubyXL/DataType.html +2 -2
- data/rdoc/RubyXL/DataValidation.html +2 -2
- data/rdoc/RubyXL/DataValidations.html +2 -2
- data/rdoc/RubyXL/DateGroupItem.html +2 -2
- data/rdoc/RubyXL/DefinedName.html +2 -2
- data/rdoc/RubyXL/DefinedNameExt.html +2 -2
- data/rdoc/RubyXL/DefinedNames.html +2 -2
- data/rdoc/RubyXL/DefinedNamesExt.html +2 -2
- data/rdoc/RubyXL/DocumentPropertiesFile.html +4 -4
- data/rdoc/RubyXL/DrawingFile.html +3 -3
- data/rdoc/RubyXL/DynamicFilter.html +2 -2
- data/rdoc/RubyXL/EmbeddedControl.html +2 -2
- data/rdoc/RubyXL/EmbeddedControls.html +2 -2
- data/rdoc/RubyXL/Extension.html +2 -2
- data/rdoc/RubyXL/ExtensionStorageArea.html +2 -2
- data/rdoc/RubyXL/Extents.html +2 -2
- data/rdoc/RubyXL/ExternalBook.html +2 -2
- data/rdoc/RubyXL/ExternalLinksFile.html +3 -3
- data/rdoc/RubyXL/ExternalReference.html +2 -2
- data/rdoc/RubyXL/ExternalReferences.html +2 -2
- data/rdoc/RubyXL/ExtraColorSchemeList.html +2 -2
- data/rdoc/RubyXL/FieldItem.html +2 -2
- data/rdoc/RubyXL/FileRecoveryProperties.html +2 -2
- data/rdoc/RubyXL/FileSharing.html +2 -2
- data/rdoc/RubyXL/FileVersion.html +2 -2
- data/rdoc/RubyXL/Fill.html +3 -3
- data/rdoc/RubyXL/Fills.html +3 -3
- data/rdoc/RubyXL/FilterContainer.html +2 -2
- data/rdoc/RubyXL/FloatNode.html +2 -2
- data/rdoc/RubyXL/FloatValue.html +2 -2
- data/rdoc/RubyXL/Font.html +5 -5
- data/rdoc/RubyXL/FontConvenienceMethods.html +3 -3
- data/rdoc/RubyXL/FontScheme.html +2 -2
- data/rdoc/RubyXL/Fonts.html +3 -3
- data/rdoc/RubyXL/Formula.html +2 -2
- data/rdoc/RubyXL/FunctionGroup.html +2 -2
- data/rdoc/RubyXL/FunctionGroups.html +2 -2
- data/rdoc/RubyXL/GenericStorageObject.html +5 -5
- data/rdoc/RubyXL/GradientFill.html +2 -2
- data/rdoc/RubyXL/HeaderFooterSettings.html +2 -2
- data/rdoc/RubyXL/Hyperlink.html +2 -2
- data/rdoc/RubyXL/HyperlinkRelFile.html +2 -2
- data/rdoc/RubyXL/Hyperlinks.html +2 -2
- data/rdoc/RubyXL/IconFilter.html +2 -2
- data/rdoc/RubyXL/IconSet.html +2 -2
- data/rdoc/RubyXL/IgnoredError.html +2 -2
- data/rdoc/RubyXL/IgnoredErrors.html +2 -2
- data/rdoc/RubyXL/IndexedColors.html +2 -2
- data/rdoc/RubyXL/InputCells.html +2 -2
- data/rdoc/RubyXL/IntegerNode.html +2 -2
- data/rdoc/RubyXL/IntegerValue.html +2 -2
- data/rdoc/RubyXL/LegacyCell.html +3 -3
- data/rdoc/RubyXL/LegacyWorksheet.html +3 -3
- data/rdoc/RubyXL/MRUColors.html +2 -2
- data/rdoc/RubyXL/MacrosFile.html +2 -2
- data/rdoc/RubyXL/MergedCell.html +2 -2
- data/rdoc/RubyXL/MergedCells.html +2 -2
- data/rdoc/RubyXL/NumFmt.html +2 -2
- data/rdoc/RubyXL/NumberFormat.html +4 -4
- data/rdoc/RubyXL/NumberFormats.html +3 -3
- data/rdoc/RubyXL/OLEObject.html +2 -2
- data/rdoc/RubyXL/OLEObjectFile.html +2 -2
- data/rdoc/RubyXL/OLEObjects.html +2 -2
- data/rdoc/RubyXL/OLESize.html +2 -2
- data/rdoc/RubyXL/OOXMLContainerObject.html +8 -8
- data/rdoc/RubyXL/OOXMLIgnored.html +4 -4
- data/rdoc/RubyXL/OOXMLObject.html +3 -3
- data/rdoc/RubyXL/OOXMLObjectClassMethods.html +18 -18
- data/rdoc/RubyXL/OOXMLObjectInstanceMethods.html +14 -14
- data/rdoc/RubyXL/OOXMLRelationshipsFile.html +16 -16
- data/rdoc/RubyXL/OOXMLTopLevelObject.html +8 -8
- data/rdoc/RubyXL/OdbcOleDbProperties.html +2 -2
- data/rdoc/RubyXL/Offset.html +2 -2
- data/rdoc/RubyXL/OlapProperties.html +2 -2
- data/rdoc/RubyXL/OleItem.html +2 -2
- data/rdoc/RubyXL/OleItems.html +2 -2
- data/rdoc/RubyXL/OleLink.html +2 -2
- data/rdoc/RubyXL/OutlineProperties.html +2 -2
- data/rdoc/RubyXL/PageMargins.html +2 -2
- data/rdoc/RubyXL/PageSetup.html +2 -2
- data/rdoc/RubyXL/PageSetupProperties.html +2 -2
- data/rdoc/RubyXL/Pane.html +2 -2
- data/rdoc/RubyXL/Parser.html +5 -5
- data/rdoc/RubyXL/PatternFill.html +2 -2
- data/rdoc/RubyXL/PhoneticProperties.html +2 -2
- data/rdoc/RubyXL/PhoneticRun.html +2 -2
- data/rdoc/RubyXL/PivotArea.html +2 -2
- data/rdoc/RubyXL/PivotCache.html +2 -2
- data/rdoc/RubyXL/PivotCacheDefinitionFile.html +2 -2
- data/rdoc/RubyXL/PivotCacheRecordsFile.html +2 -2
- data/rdoc/RubyXL/PivotCaches.html +2 -2
- data/rdoc/RubyXL/PivotReference.html +2 -2
- data/rdoc/RubyXL/PivotReferences.html +2 -2
- data/rdoc/RubyXL/PivotTableFile.html +2 -2
- data/rdoc/RubyXL/PivotTableSelection.html +2 -2
- data/rdoc/RubyXL/PresetGeometry.html +2 -2
- data/rdoc/RubyXL/PrintOptions.html +2 -2
- data/rdoc/RubyXL/PrinterSettingsFile.html +2 -2
- data/rdoc/RubyXL/ProtectedRange.html +2 -2
- data/rdoc/RubyXL/ProtectedRanges.html +2 -2
- data/rdoc/RubyXL/Protection.html +2 -2
- data/rdoc/RubyXL/QueryParameter.html +2 -2
- data/rdoc/RubyXL/QueryParameters.html +2 -2
- data/rdoc/RubyXL/QueryTable.html +2 -2
- data/rdoc/RubyXL/QueryTableDeletedField.html +2 -2
- data/rdoc/RubyXL/QueryTableDeletedFields.html +2 -2
- data/rdoc/RubyXL/QueryTableField.html +2 -2
- data/rdoc/RubyXL/QueryTableFields.html +2 -2
- data/rdoc/RubyXL/QueryTableRefresh.html +2 -2
- data/rdoc/RubyXL/RID.html +2 -2
- data/rdoc/RubyXL/RawOOXML.html +4 -4
- data/rdoc/RubyXL/Reference.html +36 -17
- data/rdoc/RubyXL/Relationship.html +2 -2
- data/rdoc/RubyXL/RelationshipSupport/ClassMehods.html +3 -3
- data/rdoc/RubyXL/RelationshipSupport.html +8 -8
- data/rdoc/RubyXL/RevisionPointer.html +2 -2
- data/rdoc/RubyXL/RichText.html +5 -4
- data/rdoc/RubyXL/RichTextRun.html +3 -3
- data/rdoc/RubyXL/Row.html +11 -11
- data/rdoc/RubyXL/RowExt.html +2 -2
- data/rdoc/RubyXL/RunProperties.html +2 -2
- data/rdoc/RubyXL/Scenario.html +2 -2
- data/rdoc/RubyXL/Scenarios.html +2 -2
- data/rdoc/RubyXL/Selection.html +3 -3
- data/rdoc/RubyXL/ShapeGuide.html +2 -2
- data/rdoc/RubyXL/ShapeTextRectangle.html +2 -2
- data/rdoc/RubyXL/SharedStringsTable.html +9 -9
- data/rdoc/RubyXL/Sheet.html +2 -2
- data/rdoc/RubyXL/SheetCalculationProperties.html +2 -2
- data/rdoc/RubyXL/SheetData.html +4 -4
- data/rdoc/RubyXL/SheetDataExt.html +2 -2
- data/rdoc/RubyXL/SheetDataSet.html +2 -2
- data/rdoc/RubyXL/SheetMetadata.html +108 -0
- data/rdoc/RubyXL/SheetName.html +2 -2
- data/rdoc/RubyXL/SheetNames.html +2 -2
- data/rdoc/RubyXL/Sheets.html +2 -2
- data/rdoc/RubyXL/SlicerCacheFile.html +2 -2
- data/rdoc/RubyXL/SlicerFile.html +2 -2
- data/rdoc/RubyXL/SmartTagProperties.html +2 -2
- data/rdoc/RubyXL/SmartTagType.html +2 -2
- data/rdoc/RubyXL/SmartTagTypes.html +2 -2
- data/rdoc/RubyXL/SmartTags.html +2 -2
- data/rdoc/RubyXL/SortCondition.html +2 -2
- data/rdoc/RubyXL/SortState.html +2 -2
- data/rdoc/RubyXL/Sqref.html +4 -4
- data/rdoc/RubyXL/Stop.html +2 -2
- data/rdoc/RubyXL/StringNode.html +2 -2
- data/rdoc/RubyXL/StringNodeW3C.html +4 -4
- data/rdoc/RubyXL/StringValue.html +2 -2
- data/rdoc/RubyXL/Stylesheet.html +7 -7
- data/rdoc/RubyXL/TableFile.html +2 -2
- data/rdoc/RubyXL/TableParts.html +2 -2
- data/rdoc/RubyXL/TableStyle.html +2 -2
- data/rdoc/RubyXL/TableStyles.html +2 -2
- data/rdoc/RubyXL/Text.html +6 -6
- data/rdoc/RubyXL/TextImportSettings.html +2 -2
- data/rdoc/RubyXL/Theme.html +5 -5
- data/rdoc/RubyXL/ThemeElements.html +2 -2
- data/rdoc/RubyXL/ThumbnailFile.html +2 -2
- data/rdoc/RubyXL/Top10.html +2 -2
- data/rdoc/RubyXL/VMLDrawingFile.html +3 -3
- data/rdoc/RubyXL/Variant.html +2 -2
- data/rdoc/RubyXL/Vector.html +3 -3
- data/rdoc/RubyXL/VectorValue.html +2 -2
- data/rdoc/RubyXL/VisualProperties.html +2 -2
- data/rdoc/RubyXL/WebPublishObject.html +2 -2
- data/rdoc/RubyXL/WebPublishObjects.html +2 -2
- data/rdoc/RubyXL/WebPublishingItem.html +2 -2
- data/rdoc/RubyXL/WebPublishingItems.html +2 -2
- data/rdoc/RubyXL/WebPublishingProperties.html +2 -2
- data/rdoc/RubyXL/WebQueryProperties.html +2 -2
- data/rdoc/RubyXL/Workbook.html +9 -6
- data/rdoc/RubyXL/WorkbookConvenienceMethods.html +65 -21
- data/rdoc/RubyXL/WorkbookProperties.html +2 -2
- data/rdoc/RubyXL/WorkbookProtection.html +2 -2
- data/rdoc/RubyXL/WorkbookRoot.html +7 -7
- data/rdoc/RubyXL/WorkbookView.html +2 -2
- data/rdoc/RubyXL/WorkbookViews.html +2 -2
- data/rdoc/RubyXL/Worksheet.html +32 -8
- data/rdoc/RubyXL/WorksheetConvenienceMethods.html +75 -75
- data/rdoc/RubyXL/WorksheetDimensions.html +2 -2
- data/rdoc/RubyXL/WorksheetFormatProperties.html +2 -2
- data/rdoc/RubyXL/WorksheetProperties.html +2 -2
- data/rdoc/RubyXL/WorksheetProtection.html +2 -2
- data/rdoc/RubyXL/WorksheetView.html +2 -2
- data/rdoc/RubyXL/WorksheetViews.html +2 -2
- data/rdoc/RubyXL/XF.html +2 -2
- data/rdoc/RubyXL.html +4 -2
- data/rdoc/created.rid +44 -44
- data/rdoc/fonts/SourceCodePro-Bold.ttf +0 -0
- data/rdoc/fonts/SourceCodePro-Regular.ttf +0 -0
- data/rdoc/index.html +4 -3
- data/rdoc/js/navigation.js.gz +0 -0
- data/rdoc/js/search_index.js +1 -1
- data/rdoc/js/search_index.js.gz +0 -0
- data/rdoc/js/searcher.js.gz +0 -0
- data/rdoc/table_of_contents.html +37 -3
- data/rubyXL.gemspec +5 -4
- data/spec/lib/cell_spec.rb +14 -7
- data/spec/lib/color_spec.rb +1 -1
- data/spec/lib/parser_spec.rb +24 -27
- data/spec/lib/reference_spec.rb +9 -3
- data/spec/lib/rgb_color_spec.rb +14 -3
- data/spec/lib/stylesheet_spec.rb +8 -11
- data/spec/lib/text_spec.rb +1 -5
- data/spec/lib/workbook_spec.rb +14 -4
- data/spec/lib/worksheet_spec.rb +577 -535
- data/spec/spec_helper.rb +2 -0
- data/test/test_parse_write.rb +3 -3
- metadata +4 -3
data/rdoc/js/search_index.js.gz
CHANGED
Binary file
|
data/rdoc/js/searcher.js.gz
CHANGED
Binary file
|
data/rdoc/table_of_contents.html
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
<head>
|
5
5
|
<meta charset="UTF-8">
|
6
6
|
|
7
|
-
<title>Table of Contents - rubyXL 3.4.
|
7
|
+
<title>Table of Contents - rubyXL 3.4.25</title>
|
8
8
|
|
9
9
|
<script type="text/javascript">
|
10
10
|
var rdoc_rel_prefix = "./";
|
@@ -23,7 +23,7 @@
|
|
23
23
|
|
24
24
|
<body id="top" class="table-of-contents">
|
25
25
|
<main role="main">
|
26
|
-
<h1 class="class">Table of Contents - rubyXL 3.4.
|
26
|
+
<h1 class="class">Table of Contents - rubyXL 3.4.25</h1>
|
27
27
|
|
28
28
|
<h2 id="pages">Pages</h2>
|
29
29
|
<ul>
|
@@ -66,6 +66,7 @@
|
|
66
66
|
<li><a href="README_rdoc.html#label-Insert+Cell">Insert Cell</a>
|
67
67
|
<li><a href="README_rdoc.html#label-Delete+Cell">Delete Cell</a>
|
68
68
|
<li><a href="README_rdoc.html#label-Modifying+Cell+Format">Modifying Cell Format</a>
|
69
|
+
<li><a href="README_rdoc.html#label-Add+hyperlink+to+a+Cell">Add hyperlink to a Cell</a>
|
69
70
|
<li><a href="README_rdoc.html#label-I-2FO">I/O</a>
|
70
71
|
<li><a href="README_rdoc.html#label-Miscellaneous">Miscellaneous</a>
|
71
72
|
<li><a href="README_rdoc.html#label-Suppress+warnings+about+malformed+input+files">Suppress warnings about malformed input files</a>
|
@@ -1063,6 +1064,9 @@
|
|
1063
1064
|
<li class="class">
|
1064
1065
|
<a href="RubyXL/SheetDataSet.html">RubyXL::SheetDataSet</a>
|
1065
1066
|
</li>
|
1067
|
+
<li class="class">
|
1068
|
+
<a href="RubyXL/SheetMetadata.html">RubyXL::SheetMetadata</a>
|
1069
|
+
</li>
|
1066
1070
|
<li class="class">
|
1067
1071
|
<a href="RubyXL/SheetName.html">RubyXL::SheetName</a>
|
1068
1072
|
</li>
|
@@ -1485,6 +1489,11 @@
|
|
1485
1489
|
—
|
1486
1490
|
<span class="container">RubyXL::LegacyWorksheet</span>
|
1487
1491
|
|
1492
|
+
<li class="method">
|
1493
|
+
<a href="RubyXL/CellConvenienceMethods.html#method-i-add_hyperlink">#add_hyperlink</a>
|
1494
|
+
—
|
1495
|
+
<span class="container">RubyXL::CellConvenienceMethods</span>
|
1496
|
+
|
1488
1497
|
<li class="method">
|
1489
1498
|
<a href="RubyXL/OOXMLRelationshipsFile.html#method-i-add_relationship">#add_relationship</a>
|
1490
1499
|
—
|
@@ -1635,6 +1644,11 @@
|
|
1635
1644
|
—
|
1636
1645
|
<span class="container">RubyXL::WorkbookConvenienceMethods</span>
|
1637
1646
|
|
1647
|
+
<li class="method">
|
1648
|
+
<a href="RubyXL/Worksheet.html#method-i-cell_at">#cell_at</a>
|
1649
|
+
—
|
1650
|
+
<span class="container">RubyXL::Worksheet</span>
|
1651
|
+
|
1638
1652
|
<li class="method">
|
1639
1653
|
<a href="RubyXL/WorkbookConvenienceMethods.html#method-i-cell_xfs">#cell_xfs</a>
|
1640
1654
|
—
|
@@ -1855,6 +1869,11 @@
|
|
1855
1869
|
—
|
1856
1870
|
<span class="container">RubyXL::WorksheetConvenienceMethods</span>
|
1857
1871
|
|
1872
|
+
<li class="method">
|
1873
|
+
<a href="RubyXL/CellConvenienceMethods.html#method-i-change_shrink_to_fit">#change_shrink_to_fit</a>
|
1874
|
+
—
|
1875
|
+
<span class="container">RubyXL::CellConvenienceMethods</span>
|
1876
|
+
|
1858
1877
|
<li class="method">
|
1859
1878
|
<a href="RubyXL/CellConvenienceMethods.html#method-i-change_text_indent">#change_text_indent</a>
|
1860
1879
|
—
|
@@ -2790,6 +2809,16 @@
|
|
2790
2809
|
—
|
2791
2810
|
<span class="container">RubyXL::CellConvenienceMethods</span>
|
2792
2811
|
|
2812
|
+
<li class="method">
|
2813
|
+
<a href="RubyXL/WorkbookConvenienceMethods.html#method-i-title">#title</a>
|
2814
|
+
—
|
2815
|
+
<span class="container">RubyXL::WorkbookConvenienceMethods</span>
|
2816
|
+
|
2817
|
+
<li class="method">
|
2818
|
+
<a href="RubyXL/WorkbookConvenienceMethods.html#method-i-title-3D">#title=</a>
|
2819
|
+
—
|
2820
|
+
<span class="container">RubyXL::WorkbookConvenienceMethods</span>
|
2821
|
+
|
2793
2822
|
<li class="method">
|
2794
2823
|
<a href="RubyXL/ColorConvenienceClasses/RgbColor.html#method-i-to_hls">#to_hls</a>
|
2795
2824
|
—
|
@@ -2835,6 +2864,11 @@
|
|
2835
2864
|
—
|
2836
2865
|
<span class="container">RubyXL::StringNodeW3C</span>
|
2837
2866
|
|
2867
|
+
<li class="method">
|
2868
|
+
<a href="RubyXL/Reference.html#method-i-valid-3F">#valid?</a>
|
2869
|
+
—
|
2870
|
+
<span class="container">RubyXL::Reference</span>
|
2871
|
+
|
2838
2872
|
<li class="method">
|
2839
2873
|
<a href="RubyXL/Cell.html#method-i-value">#value</a>
|
2840
2874
|
—
|
@@ -2970,7 +3004,7 @@
|
|
2970
3004
|
|
2971
3005
|
<footer id="validator-badges" role="contentinfo">
|
2972
3006
|
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
2973
|
-
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.
|
3007
|
+
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.4.0.
|
2974
3008
|
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
2975
3009
|
</footer>
|
2976
3010
|
|
data/rubyXL.gemspec
CHANGED
@@ -2,16 +2,16 @@
|
|
2
2
|
# DO NOT EDIT THIS FILE DIRECTLY
|
3
3
|
# Instead, edit Juwelier::Tasks in Rakefile, and run 'rake gemspec'
|
4
4
|
# -*- encoding: utf-8 -*-
|
5
|
-
# stub: rubyXL 3.4.
|
5
|
+
# stub: rubyXL 3.4.25 ruby lib
|
6
6
|
|
7
7
|
Gem::Specification.new do |s|
|
8
8
|
s.name = "rubyXL".freeze
|
9
|
-
s.version = "3.4.
|
9
|
+
s.version = "3.4.25"
|
10
10
|
|
11
11
|
s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
|
12
12
|
s.require_paths = ["lib".freeze]
|
13
13
|
s.authors = ["Vivek Bhagwat".freeze, "Wesha".freeze]
|
14
|
-
s.date = "
|
14
|
+
s.date = "2022-05-19"
|
15
15
|
s.description = "rubyXL is a gem which allows the parsing, creation, and manipulation of Microsoft Excel (.xlsx/.xlsm) Documents".freeze
|
16
16
|
s.email = "bhagwat.vivek@gmail.com".freeze
|
17
17
|
s.extra_rdoc_files = [
|
@@ -399,6 +399,7 @@ Gem::Specification.new do |s|
|
|
399
399
|
"rdoc/RubyXL/SheetData.html",
|
400
400
|
"rdoc/RubyXL/SheetDataExt.html",
|
401
401
|
"rdoc/RubyXL/SheetDataSet.html",
|
402
|
+
"rdoc/RubyXL/SheetMetadata.html",
|
402
403
|
"rdoc/RubyXL/SheetName.html",
|
403
404
|
"rdoc/RubyXL/SheetNames.html",
|
404
405
|
"rdoc/RubyXL/Sheets.html",
|
@@ -515,7 +516,7 @@ Gem::Specification.new do |s|
|
|
515
516
|
]
|
516
517
|
s.homepage = "http://github.com/gilt/rubyXL".freeze
|
517
518
|
s.licenses = ["MIT".freeze]
|
518
|
-
s.rubygems_version = "3.
|
519
|
+
s.rubygems_version = "3.3.12".freeze
|
519
520
|
s.summary = "rubyXL is a gem which allows the parsing, creation, and manipulation of Microsoft Excel (.xlsx/.xlsm) Documents".freeze
|
520
521
|
|
521
522
|
if s.respond_to? :specification_version then
|
data/spec/lib/cell_spec.rb
CHANGED
@@ -4,7 +4,6 @@ require 'rubyXL/convenience_methods/font'
|
|
4
4
|
require 'rubyXL/convenience_methods/cell'
|
5
5
|
|
6
6
|
describe RubyXL::Cell do
|
7
|
-
|
8
7
|
before do
|
9
8
|
@workbook = RubyXL::Workbook.new
|
10
9
|
@worksheet = @workbook.add_worksheet('Test Worksheet')
|
@@ -55,13 +54,13 @@ describe RubyXL::Cell do
|
|
55
54
|
# Due to rounding errors, we allow microsecond precision on Time.
|
56
55
|
expect(cell.value - tm.to_datetime).to be_within(1.0/86400e6).of(0)
|
57
56
|
|
58
|
-
expected_date =
|
57
|
+
expected_date = '2020-10-15T14:00:00Z'
|
59
58
|
expected_datetime = Time.parse(expected_date).utc
|
60
|
-
raw_value =
|
59
|
+
raw_value = '44119.583333333328' # Obtained from parsing a xlsx file with the expected date
|
61
60
|
cell = @worksheet.add_cell(r, c, Time.now) # Force a date cell type
|
62
61
|
cell.set_number_format('ddd mmm dd, yyyy HH:MM:SS')
|
63
62
|
cell.raw_value = raw_value
|
64
|
-
expect(cell.raw_value).to eq(raw_value),
|
63
|
+
expect(cell.raw_value).to eq(raw_value), 'Wrong raw value'
|
65
64
|
cell.set_number_format('ddd mmm dd, yyyy HH:MM:SS')
|
66
65
|
|
67
66
|
# We expect exactly the same date
|
@@ -190,7 +189,7 @@ describe RubyXL::Cell do
|
|
190
189
|
expect(@cell.text_indent).to eq(2)
|
191
190
|
end
|
192
191
|
|
193
|
-
it
|
192
|
+
it 'should not cause other cells with the same style to have text indent' do
|
194
193
|
another_cell = @worksheet[1][0]
|
195
194
|
another_cell.style_index = @cell.style_index
|
196
195
|
expect(another_cell.text_indent).to be_nil
|
@@ -285,7 +284,7 @@ describe RubyXL::Cell do
|
|
285
284
|
expect(cell.value).to eq('Hello')
|
286
285
|
end
|
287
286
|
|
288
|
-
it
|
287
|
+
it 'should properly handle numeric values' do
|
289
288
|
@cell.datatype = nil
|
290
289
|
@cell.raw_value = '1'
|
291
290
|
expect(@cell.value).to eq(1)
|
@@ -400,6 +399,15 @@ describe RubyXL::Cell do
|
|
400
399
|
expect(@cell.formula).to be_nil
|
401
400
|
end
|
402
401
|
|
402
|
+
it 'should cause cell value to match a time that is passed in' do
|
403
|
+
time = Time.parse('January 1, 2011')
|
404
|
+
@cell.change_contents(time)
|
405
|
+
expect(@cell).to receive(:is_date?).at_least(1).and_return(true)
|
406
|
+
expect(@cell.value).to eq(time.to_datetime)
|
407
|
+
expect(@cell.datatype).to be_nil
|
408
|
+
expect(@cell.formula).to be_nil
|
409
|
+
end
|
410
|
+
|
403
411
|
it 'should case cell value to match a Float that is passed in' do
|
404
412
|
number = 1.25
|
405
413
|
@cell.change_contents(number)
|
@@ -591,5 +599,4 @@ describe RubyXL::Cell do
|
|
591
599
|
expect(@cell.text_rotation).to eq(45)
|
592
600
|
end
|
593
601
|
end
|
594
|
-
|
595
602
|
end
|
data/spec/lib/color_spec.rb
CHANGED
@@ -8,7 +8,7 @@ describe RubyXL::Color do
|
|
8
8
|
end
|
9
9
|
|
10
10
|
it 'should cause an error if an invalid hex color code or one with a # is passed' do
|
11
|
-
expect {RubyXL::Color.validate_color('#G')}.to raise_error(RuntimeError)
|
11
|
+
expect { RubyXL::Color.validate_color('#G') }.to raise_error(RuntimeError)
|
12
12
|
end
|
13
13
|
end
|
14
14
|
end
|
data/spec/lib/parser_spec.rb
CHANGED
@@ -1,25 +1,25 @@
|
|
1
|
+
require 'English'
|
1
2
|
require 'spec_helper'
|
2
3
|
require 'tmpdir'
|
3
4
|
|
4
5
|
describe RubyXL::Parser do
|
5
|
-
|
6
6
|
before do
|
7
|
-
@test_sheet_name =
|
7
|
+
@test_sheet_name = 'This is a very long sheet name that should be trimmed to 31 characters for compatibility with MS Excel'
|
8
8
|
@workbook = RubyXL::Workbook.new
|
9
|
-
@workbook.add_worksheet(
|
9
|
+
@workbook.add_worksheet('Test Worksheet')
|
10
10
|
@time = Time.at(Time.now.to_i) # Excel only saves times with 1-second precision.
|
11
11
|
@time2 = @time + 123456
|
12
12
|
|
13
|
-
ws = @workbook.add_worksheet(
|
14
|
-
ws.add_cell(0, 0,
|
15
|
-
ws.add_cell(0, 1,
|
16
|
-
ws.add_cell(0, 2,
|
17
|
-
ws.add_cell(0, 3,
|
13
|
+
ws = @workbook.add_worksheet('Escape Test')
|
14
|
+
ws.add_cell(0, 0, '&')
|
15
|
+
ws.add_cell(0, 1, '<')
|
16
|
+
ws.add_cell(0, 2, '>')
|
17
|
+
ws.add_cell(0, 3, '')
|
18
18
|
|
19
|
-
ws.add_cell(1, 0,
|
20
|
-
ws.add_cell(1, 1,
|
21
|
-
ws.add_cell(1, 2,
|
22
|
-
ws.add_cell(1, 3,
|
19
|
+
ws.add_cell(1, 0, '&')#TODO#.datatype = RubyXL::Cell::SHARED_STRING
|
20
|
+
ws.add_cell(1, 1, '<')#TODO#.datatype = RubyXL::Cell::SHARED_STRING
|
21
|
+
ws.add_cell(1, 2, '>')#TODO#.datatype = RubyXL::Cell::SHARED_STRING
|
22
|
+
ws.add_cell(1, 3, '')
|
23
23
|
|
24
24
|
ws.add_cell(2, 0, 0)
|
25
25
|
ws.add_cell(2, 1, 12345)
|
@@ -35,13 +35,13 @@ describe RubyXL::Parser do
|
|
35
35
|
|
36
36
|
@workbook.add_worksheet(@test_sheet_name)
|
37
37
|
|
38
|
-
@workbook.creator =
|
39
|
-
@workbook.modifier =
|
38
|
+
@workbook.creator = 'test creator'
|
39
|
+
@workbook.modifier = 'test modifier'
|
40
40
|
@workbook.created_at = @time
|
41
41
|
@workbook.modified_at = @time2
|
42
42
|
|
43
43
|
@time_str = Time.now.to_s
|
44
|
-
@file = "rubyXL-#{
|
44
|
+
@file = "rubyXL-#{$PROCESS_ID}-#{DateTime.now.strftime('%Q')}.xlsx"
|
45
45
|
@workbook.write(@file)
|
46
46
|
end
|
47
47
|
|
@@ -58,7 +58,7 @@ describe RubyXL::Parser do
|
|
58
58
|
end
|
59
59
|
|
60
60
|
it 'should cause an error if an xlsx or xlsm workbook is not passed' do
|
61
|
-
expect {@workbook2 = RubyXL::Parser.parse(
|
61
|
+
expect { @workbook2 = RubyXL::Parser.parse('nonexistent_file.tmp') }.to raise_error(Zip::Error)
|
62
62
|
end
|
63
63
|
|
64
64
|
it 'should construct consistent number formats' do
|
@@ -69,19 +69,19 @@ describe RubyXL::Parser do
|
|
69
69
|
|
70
70
|
it 'should unescape HTML entities properly' do
|
71
71
|
@workbook2 = RubyXL::Parser.parse(@file)
|
72
|
-
expect(@workbook2[
|
73
|
-
expect(@workbook2[
|
74
|
-
expect(@workbook2[
|
72
|
+
expect(@workbook2['Escape Test'][0][0].value).to eq('&')
|
73
|
+
expect(@workbook2['Escape Test'][0][1].value).to eq('<')
|
74
|
+
expect(@workbook2['Escape Test'][0][2].value).to eq('>')
|
75
75
|
|
76
|
-
expect(@workbook2[
|
77
|
-
expect(@workbook2[
|
78
|
-
expect(@workbook2[
|
76
|
+
expect(@workbook2['Escape Test'][1][0].value).to eq('&')
|
77
|
+
expect(@workbook2['Escape Test'][1][1].value).to eq('<')
|
78
|
+
expect(@workbook2['Escape Test'][1][2].value).to eq('>')
|
79
79
|
end
|
80
80
|
|
81
81
|
it 'should parse Core properties correctly' do
|
82
82
|
@workbook2 = RubyXL::Parser.parse(@file)
|
83
|
-
expect(@workbook2.creator).to eq(
|
84
|
-
expect(@workbook2.modifier).to eq(
|
83
|
+
expect(@workbook2.creator).to eq('test creator')
|
84
|
+
expect(@workbook2.modifier).to eq('test modifier')
|
85
85
|
expect(@workbook2.created_at).to eq(@time)
|
86
86
|
expect(@workbook2.modified_at).to eq(@time2)
|
87
87
|
end
|
@@ -91,11 +91,9 @@ describe RubyXL::Parser do
|
|
91
91
|
expect(@workbook2[@test_sheet_name]).to be_nil
|
92
92
|
expect(@workbook2[@test_sheet_name[0..30]]).not_to be_nil
|
93
93
|
end
|
94
|
-
|
95
94
|
end
|
96
95
|
|
97
96
|
describe 'parse_buffer' do
|
98
|
-
|
99
97
|
it 'should parse string buffer correctly' do
|
100
98
|
buffer = File.read(@file)
|
101
99
|
expect(buffer).to be_instance_of(String)
|
@@ -109,7 +107,6 @@ describe RubyXL::Parser do
|
|
109
107
|
f = RubyXL::Parser.parse_buffer(io)
|
110
108
|
expect(f).to be_instance_of(RubyXL::Workbook)
|
111
109
|
end
|
112
|
-
|
113
110
|
end
|
114
111
|
|
115
112
|
after do
|
data/spec/lib/reference_spec.rb
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe RubyXL::Reference do
|
4
|
-
|
5
4
|
describe '.ind2ref + .ref2ind' do
|
6
5
|
it 'should correctly return the "Excel Style" description of cells when given a row/column number' do
|
7
6
|
expect(RubyXL::Reference.ind2ref(0, 26)).to eq('AA1')
|
@@ -20,9 +19,16 @@ describe RubyXL::Reference do
|
|
20
19
|
end
|
21
20
|
end
|
22
21
|
|
22
|
+
it 'valid? should be true on valid references' do
|
23
|
+
expect(RubyXL::Reference.new('C23').valid?).to be true
|
24
|
+
end
|
25
|
+
|
26
|
+
it 'valid? should be false on invalid references' do
|
27
|
+
expect(RubyXL::Reference.new('C2A').valid?).to be false
|
28
|
+
end
|
29
|
+
|
23
30
|
it 'should return [-1, -1] if the Excel index is not well-formed' do
|
24
31
|
expect(RubyXL::Reference.ref2ind('A1B')).to eq([-1, -1])
|
25
32
|
end
|
26
33
|
end
|
27
|
-
|
28
|
-
end
|
34
|
+
end
|
data/spec/lib/rgb_color_spec.rb
CHANGED
@@ -3,14 +3,25 @@ require 'rubyXL/convenience_methods/color'
|
|
3
3
|
|
4
4
|
describe RubyXL::RgbColor do
|
5
5
|
describe '.to_s' do
|
6
|
-
it 'should properly translate
|
6
|
+
it 'should properly translate RGB color to string' do
|
7
7
|
rgb_color = RubyXL::RgbColor.new
|
8
8
|
|
9
9
|
rgb_color.r = 1
|
10
10
|
rgb_color.g = 2
|
11
11
|
rgb_color.b = 255
|
12
12
|
|
13
|
-
expect(rgb_color.to_s).to eq(
|
13
|
+
expect(rgb_color.to_s).to eq('0102ff')
|
14
|
+
end
|
15
|
+
|
16
|
+
it 'should properly translate RGB color with alpha value to string' do
|
17
|
+
rgb_color = RubyXL::RgbColor.new
|
18
|
+
|
19
|
+
rgb_color.r = 11
|
20
|
+
rgb_color.g = 22
|
21
|
+
rgb_color.b = 33
|
22
|
+
rgb_color.a = 255
|
23
|
+
|
24
|
+
expect(rgb_color.to_s).to eq('0b1621ff')
|
14
25
|
end
|
15
26
|
end
|
16
|
-
end
|
27
|
+
end
|
data/spec/lib/stylesheet_spec.rb
CHANGED
@@ -1,28 +1,25 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe RubyXL::NumberFormat do
|
4
|
-
|
5
4
|
describe '.is_date_format?' do
|
6
5
|
it 'should return true if number format = dd// yy// mm' do
|
7
|
-
expect(RubyXL::NumberFormat.new(:num_fmt_id => 1, :format_code => 'dd// yy// mm').is_date_format?
|
8
|
-
end
|
6
|
+
expect(RubyXL::NumberFormat.new(:num_fmt_id => 1, :format_code => 'dd// yy// mm').is_date_format?).to eq(true)
|
7
|
+
end
|
9
8
|
|
10
9
|
it 'should return true if number format = DD// YY// MM (uppercase)' do
|
11
|
-
expect(RubyXL::NumberFormat.new(:num_fmt_id => 1, :format_code => 'DD// YY// MM').is_date_format?
|
12
|
-
end
|
10
|
+
expect(RubyXL::NumberFormat.new(:num_fmt_id => 1, :format_code => 'DD// YY// MM').is_date_format?).to eq(true)
|
11
|
+
end
|
13
12
|
|
14
13
|
it 'should return false if number format = @' do
|
15
|
-
expect(RubyXL::NumberFormat.new(:num_fmt_id => 1, :format_code => '@').is_date_format?
|
16
|
-
expect(RubyXL::NumberFormat.new(:num_fmt_id => 1, :format_code => 'general').is_date_format?
|
17
|
-
expect(RubyXL::NumberFormat.new(:num_fmt_id => 1, :format_code => '0.00e+00').is_date_format?
|
18
|
-
end
|
14
|
+
expect(RubyXL::NumberFormat.new(:num_fmt_id => 1, :format_code => '@').is_date_format?).to eq(false)
|
15
|
+
expect(RubyXL::NumberFormat.new(:num_fmt_id => 1, :format_code => 'general').is_date_format?).to eq(false)
|
16
|
+
expect(RubyXL::NumberFormat.new(:num_fmt_id => 1, :format_code => '0.00e+00').is_date_format?).to eq(false)
|
17
|
+
end
|
19
18
|
|
20
19
|
it 'should properly detect date formats amongst default ones' do
|
21
20
|
all_formats = RubyXL::NumberFormats::DEFAULT_NUMBER_FORMATS
|
22
21
|
id_list = all_formats.collect { |fmt| fmt.num_fmt_id if fmt.is_date_format? }.compact.sort
|
23
22
|
expect(id_list).to eq([14, 15, 16, 17, 18, 19, 20, 21, 22, 45, 46, 47])
|
24
23
|
end
|
25
|
-
|
26
24
|
end
|
27
|
-
|
28
25
|
end
|
data/spec/lib/text_spec.rb
CHANGED
@@ -1,15 +1,13 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe RubyXL::Text do
|
4
|
-
|
5
4
|
describe '.to_s' do
|
6
|
-
|
7
5
|
it 'should not crash processing UNICODE data' do
|
8
6
|
bytes = [ 114, 39, 95, 120, 48, 48, 56, 48, 95, 226, 132, 162, 115,
|
9
7
|
32, 103, 105, 114, 108, 102, 114, 105, 101, 110, 100,
|
10
8
|
39, 95, 120, 48, 48, 56, 48, 95, 226, 132, 162, 115, 32, 104, 111]
|
11
9
|
|
12
|
-
t = RubyXL::Text.new(:value => bytes.pack(
|
10
|
+
t = RubyXL::Text.new(:value => bytes.pack('c*').force_encoding('UTF-8'))
|
13
11
|
|
14
12
|
str = t.to_s
|
15
13
|
|
@@ -23,7 +21,5 @@ describe RubyXL::Text do
|
|
23
21
|
|
24
22
|
expect(xml).to eq("<t>\u{10000}\u{10FFFF}</t>")
|
25
23
|
end
|
26
|
-
|
27
24
|
end
|
28
|
-
|
29
25
|
end
|
data/spec/lib/workbook_spec.rb
CHANGED
@@ -133,8 +133,19 @@ describe RubyXL::Workbook do
|
|
133
133
|
end
|
134
134
|
end
|
135
135
|
|
136
|
+
describe '.title' do
|
137
|
+
it 'should contain default title' do
|
138
|
+
expect(@workbook.title).to be_nil
|
139
|
+
end
|
140
|
+
|
141
|
+
it 'should set title properly' do
|
142
|
+
@workbook.title = 'TITLE'
|
143
|
+
expect(@workbook.title).to eq('TITLE')
|
144
|
+
end
|
145
|
+
end
|
146
|
+
|
136
147
|
describe '.stream' do
|
137
|
-
it
|
148
|
+
it 'It should not be confused by missing sheet_id' do
|
138
149
|
workbook = RubyXL::Workbook.new
|
139
150
|
workbook[0].sheet_id = 1
|
140
151
|
workbook.add_worksheet('Sheet2')
|
@@ -144,12 +155,12 @@ describe RubyXL::Workbook do
|
|
144
155
|
it 'should raise error if bad characters are present in worksheet name' do
|
145
156
|
workbook = RubyXL::Workbook.new
|
146
157
|
workbook[0].sheet_name = 'Sheet007'
|
147
|
-
expect{workbook.stream}.to_not raise_error
|
158
|
+
expect{ workbook.stream }.to_not raise_error
|
148
159
|
|
149
160
|
'\\/*[]:?'.each_char { |char|
|
150
161
|
workbook = RubyXL::Workbook.new
|
151
162
|
workbook[0].sheet_name = "Sheet#{char}007"
|
152
|
-
expect{workbook.stream}.to raise_error(RuntimeError)
|
163
|
+
expect{ workbook.stream }.to raise_error(RuntimeError)
|
153
164
|
}
|
154
165
|
end
|
155
166
|
end
|
@@ -181,5 +192,4 @@ describe RubyXL::Workbook do
|
|
181
192
|
expect(wb2.get_defined_name('TEST2')).to be_nil
|
182
193
|
end
|
183
194
|
end
|
184
|
-
|
185
195
|
end
|