rubyXL-ptr 3.3.27
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 +7 -0
- data/Gemfile +17 -0
- data/LICENSE.txt +20 -0
- data/README.rdoc +229 -0
- data/Rakefile +103 -0
- data/VERSION +1 -0
- data/lib/rubyXL.rb +12 -0
- data/lib/rubyXL/cell.rb +54 -0
- data/lib/rubyXL/convenience_methods.rb +1122 -0
- data/lib/rubyXL/objects/border.rb +74 -0
- data/lib/rubyXL/objects/calculation_chain.rb +31 -0
- data/lib/rubyXL/objects/cell_style.rb +65 -0
- data/lib/rubyXL/objects/chartsheet.rb +92 -0
- data/lib/rubyXL/objects/color.rb +27 -0
- data/lib/rubyXL/objects/column_range.rb +92 -0
- data/lib/rubyXL/objects/comments.rb +47 -0
- data/lib/rubyXL/objects/container_nodes.rb +135 -0
- data/lib/rubyXL/objects/content_types.rb +77 -0
- data/lib/rubyXL/objects/data_validation.rb +37 -0
- data/lib/rubyXL/objects/document_properties.rb +159 -0
- data/lib/rubyXL/objects/extensions.rb +40 -0
- data/lib/rubyXL/objects/external_links.rb +85 -0
- data/lib/rubyXL/objects/fill.rb +55 -0
- data/lib/rubyXL/objects/filters.rb +120 -0
- data/lib/rubyXL/objects/font.rb +48 -0
- data/lib/rubyXL/objects/formula.rb +24 -0
- data/lib/rubyXL/objects/ooxml_object.rb +460 -0
- data/lib/rubyXL/objects/reference.rb +110 -0
- data/lib/rubyXL/objects/relationships.rb +213 -0
- data/lib/rubyXL/objects/root.rb +86 -0
- data/lib/rubyXL/objects/shared_strings.rb +70 -0
- data/lib/rubyXL/objects/sheet_common.rb +51 -0
- data/lib/rubyXL/objects/sheet_data.rb +188 -0
- data/lib/rubyXL/objects/simple_types.rb +232 -0
- data/lib/rubyXL/objects/storage.rb +182 -0
- data/lib/rubyXL/objects/stylesheet.rb +232 -0
- data/lib/rubyXL/objects/text.rb +94 -0
- data/lib/rubyXL/objects/theme.rb +1716 -0
- data/lib/rubyXL/objects/workbook.rb +464 -0
- data/lib/rubyXL/objects/worksheet.rb +748 -0
- data/lib/rubyXL/parser.rb +29 -0
- data/lib/rubyXL/worksheet.rb +105 -0
- data/rdoc/README_rdoc.html +475 -0
- data/rdoc/RubyXL.html +598 -0
- data/rdoc/RubyXL/AExtension.html +223 -0
- data/rdoc/RubyXL/AExtensionStorageArea.html +103 -0
- data/rdoc/RubyXL/ActiveX.html +182 -0
- data/rdoc/RubyXL/ActiveXBinary.html +117 -0
- data/rdoc/RubyXL/AdjustHandleList.html +106 -0
- data/rdoc/RubyXL/Alignment.html +106 -0
- data/rdoc/RubyXL/AlternateContent.html +103 -0
- data/rdoc/RubyXL/Authors.html +106 -0
- data/rdoc/RubyXL/AutoFilter.html +106 -0
- data/rdoc/RubyXL/AutoFilterColumn.html +106 -0
- data/rdoc/RubyXL/BinaryImageFile.html +122 -0
- data/rdoc/RubyXL/BodyProperties.html +106 -0
- data/rdoc/RubyXL/BooleanNode.html +103 -0
- data/rdoc/RubyXL/BooleanValue.html +103 -0
- data/rdoc/RubyXL/Border.html +275 -0
- data/rdoc/RubyXL/BorderEdge.html +189 -0
- data/rdoc/RubyXL/Borders.html +157 -0
- data/rdoc/RubyXL/Break.html +106 -0
- data/rdoc/RubyXL/BreakList.html +106 -0
- data/rdoc/RubyXL/CT_AdjPoint2D.html +106 -0
- data/rdoc/RubyXL/CT_AlphaBiLevelEffect.html +106 -0
- data/rdoc/RubyXL/CT_AlphaModulateEffect.html +106 -0
- data/rdoc/RubyXL/CT_AlphaModulateFixedEffect.html +106 -0
- data/rdoc/RubyXL/CT_AlphaOutsetEffect.html +106 -0
- data/rdoc/RubyXL/CT_AlphaReplaceEffect.html +106 -0
- data/rdoc/RubyXL/CT_Backdrop.html +106 -0
- data/rdoc/RubyXL/CT_Bevel.html +106 -0
- data/rdoc/RubyXL/CT_BiLevelEffect.html +106 -0
- data/rdoc/RubyXL/CT_BlendEffect.html +106 -0
- data/rdoc/RubyXL/CT_Blip.html +106 -0
- data/rdoc/RubyXL/CT_BlipFillProperties.html +106 -0
- data/rdoc/RubyXL/CT_BlurEffect.html +106 -0
- data/rdoc/RubyXL/CT_Camera.html +106 -0
- data/rdoc/RubyXL/CT_Color.html +106 -0
- data/rdoc/RubyXL/CT_ColorChangeEffect.html +106 -0
- data/rdoc/RubyXL/CT_ColorMapping.html +106 -0
- data/rdoc/RubyXL/CT_ColorScheme.html +106 -0
- data/rdoc/RubyXL/CT_ColorSchemeAndMapping.html +106 -0
- data/rdoc/RubyXL/CT_ConnectionSite.html +106 -0
- data/rdoc/RubyXL/CT_ConnectionSiteList.html +106 -0
- data/rdoc/RubyXL/CT_DashStop.html +106 -0
- data/rdoc/RubyXL/CT_DashStopList.html +106 -0
- data/rdoc/RubyXL/CT_DefaultShapeDefinition.html +106 -0
- data/rdoc/RubyXL/CT_DuotoneEffect.html +106 -0
- data/rdoc/RubyXL/CT_EffectContainer.html +106 -0
- data/rdoc/RubyXL/CT_EffectList.html +106 -0
- data/rdoc/RubyXL/CT_EffectReference.html +106 -0
- data/rdoc/RubyXL/CT_EffectStyleItem.html +106 -0
- data/rdoc/RubyXL/CT_EffectStyleList.html +106 -0
- data/rdoc/RubyXL/CT_EmbeddedWAVAudioFile.html +106 -0
- data/rdoc/RubyXL/CT_FillEffect.html +106 -0
- data/rdoc/RubyXL/CT_FillOverlayEffect.html +106 -0
- data/rdoc/RubyXL/CT_FillStyleList.html +106 -0
- data/rdoc/RubyXL/CT_FlatText.html +106 -0
- data/rdoc/RubyXL/CT_FontCollection.html +106 -0
- data/rdoc/RubyXL/CT_FontReference.html +106 -0
- data/rdoc/RubyXL/CT_GeomGuideList.html +106 -0
- data/rdoc/RubyXL/CT_GlowEffect.html +106 -0
- data/rdoc/RubyXL/CT_GradientFillProperties.html +106 -0
- data/rdoc/RubyXL/CT_GradientStop.html +106 -0
- data/rdoc/RubyXL/CT_GradientStopList.html +106 -0
- data/rdoc/RubyXL/CT_HSLEffect.html +106 -0
- data/rdoc/RubyXL/CT_HslColor.html +106 -0
- data/rdoc/RubyXL/CT_Hyperlink.html +106 -0
- data/rdoc/RubyXL/CT_InnerShadowEffect.html +106 -0
- data/rdoc/RubyXL/CT_LightRig.html +106 -0
- data/rdoc/RubyXL/CT_LineEndProperties.html +106 -0
- data/rdoc/RubyXL/CT_LineJoinMiterProperties.html +106 -0
- data/rdoc/RubyXL/CT_LineProperties.html +106 -0
- data/rdoc/RubyXL/CT_LineStyleList.html +106 -0
- data/rdoc/RubyXL/CT_LinearShadeProperties.html +106 -0
- data/rdoc/RubyXL/CT_LuminanceEffect.html +106 -0
- data/rdoc/RubyXL/CT_ObjectStyleDefaults.html +106 -0
- data/rdoc/RubyXL/CT_OuterShadowEffect.html +106 -0
- data/rdoc/RubyXL/CT_Path2D.html +106 -0
- data/rdoc/RubyXL/CT_Path2DArcTo.html +106 -0
- data/rdoc/RubyXL/CT_Path2DCubicBezierTo.html +106 -0
- data/rdoc/RubyXL/CT_Path2DList.html +106 -0
- data/rdoc/RubyXL/CT_Path2DQuadBezierTo.html +106 -0
- data/rdoc/RubyXL/CT_Path2DTo.html +106 -0
- data/rdoc/RubyXL/CT_PathShadeProperties.html +106 -0
- data/rdoc/RubyXL/CT_PatternFillProperties.html +106 -0
- data/rdoc/RubyXL/CT_Point3D.html +106 -0
- data/rdoc/RubyXL/CT_PolarAdjustHandle.html +106 -0
- data/rdoc/RubyXL/CT_PresetColor.html +106 -0
- data/rdoc/RubyXL/CT_PresetLineDashProperties.html +106 -0
- data/rdoc/RubyXL/CT_PresetShadowEffect.html +106 -0
- data/rdoc/RubyXL/CT_PresetTextShape.html +106 -0
- data/rdoc/RubyXL/CT_ReflectionEffect.html +106 -0
- data/rdoc/RubyXL/CT_RelativeOffsetEffect.html +106 -0
- data/rdoc/RubyXL/CT_RelativeRect.html +106 -0
- data/rdoc/RubyXL/CT_SRgbColor.html +106 -0
- data/rdoc/RubyXL/CT_ScRgbColor.html +106 -0
- data/rdoc/RubyXL/CT_Scene3D.html +106 -0
- data/rdoc/RubyXL/CT_SchemeColor.html +106 -0
- data/rdoc/RubyXL/CT_Shape3D.html +106 -0
- data/rdoc/RubyXL/CT_ShapeStyle.html +106 -0
- data/rdoc/RubyXL/CT_SoftEdgesEffect.html +106 -0
- data/rdoc/RubyXL/CT_SphereCoords.html +106 -0
- data/rdoc/RubyXL/CT_StretchInfoProperties.html +106 -0
- data/rdoc/RubyXL/CT_StyleMatrix.html +106 -0
- data/rdoc/RubyXL/CT_StyleMatrixReference.html +106 -0
- data/rdoc/RubyXL/CT_SupplementalFont.html +106 -0
- data/rdoc/RubyXL/CT_SystemColor.html +106 -0
- data/rdoc/RubyXL/CT_TextAutonumberBullet.html +106 -0
- data/rdoc/RubyXL/CT_TextBlipBullet.html +106 -0
- data/rdoc/RubyXL/CT_TextCharBullet.html +106 -0
- data/rdoc/RubyXL/CT_TextCharacterProperties.html +106 -0
- data/rdoc/RubyXL/CT_TextFont.html +106 -0
- data/rdoc/RubyXL/CT_TextListStyle.html +106 -0
- data/rdoc/RubyXL/CT_TextNormalAutofit.html +106 -0
- data/rdoc/RubyXL/CT_TextParagraphProperties.html +106 -0
- data/rdoc/RubyXL/CT_TextSpacing.html +106 -0
- data/rdoc/RubyXL/CT_TextTabStop.html +106 -0
- data/rdoc/RubyXL/CT_TextTabStopList.html +106 -0
- data/rdoc/RubyXL/CT_TileInfoProperties.html +106 -0
- data/rdoc/RubyXL/CT_TintEffect.html +106 -0
- data/rdoc/RubyXL/CT_Transform2D.html +106 -0
- data/rdoc/RubyXL/CT_TransformEffect.html +106 -0
- data/rdoc/RubyXL/CT_Vector3D.html +106 -0
- data/rdoc/RubyXL/CT_XYAdjustHandle.html +106 -0
- data/rdoc/RubyXL/CalculationChain.html +176 -0
- data/rdoc/RubyXL/CalculationChainCell.html +106 -0
- data/rdoc/RubyXL/CalculationProperties.html +106 -0
- data/rdoc/RubyXL/Cell.html +558 -0
- data/rdoc/RubyXL/CellConvenienceMethods.html +1211 -0
- data/rdoc/RubyXL/CellExt.html +106 -0
- data/rdoc/RubyXL/CellSmartTag.html +106 -0
- data/rdoc/RubyXL/CellSmartTagProperty.html +106 -0
- data/rdoc/RubyXL/CellSmartTags.html +106 -0
- data/rdoc/RubyXL/CellStyle.html +106 -0
- data/rdoc/RubyXL/CellStyleXFs.html +157 -0
- data/rdoc/RubyXL/CellStyles.html +157 -0
- data/rdoc/RubyXL/CellValue.html +158 -0
- data/rdoc/RubyXL/CellWatch.html +106 -0
- data/rdoc/RubyXL/CellWatches.html +106 -0
- data/rdoc/RubyXL/CellXFs.html +161 -0
- data/rdoc/RubyXL/ChartColorsFile.html +122 -0
- data/rdoc/RubyXL/ChartFile.html +189 -0
- data/rdoc/RubyXL/ChartStyleFile.html +122 -0
- data/rdoc/RubyXL/ChartUserShapesFile.html +122 -0
- data/rdoc/RubyXL/Chartsheet.html +260 -0
- data/rdoc/RubyXL/ChartsheetPageSetup.html +106 -0
- data/rdoc/RubyXL/ChartsheetProperties.html +106 -0
- data/rdoc/RubyXL/ChartsheetProtection.html +106 -0
- data/rdoc/RubyXL/ChartsheetView.html +106 -0
- data/rdoc/RubyXL/ChartsheetViews.html +106 -0
- data/rdoc/RubyXL/Color.html +175 -0
- data/rdoc/RubyXL/ColorFilter.html +106 -0
- data/rdoc/RubyXL/ColorScale.html +106 -0
- data/rdoc/RubyXL/ColorSet.html +106 -0
- data/rdoc/RubyXL/Colors.html +106 -0
- data/rdoc/RubyXL/ColumnRange.html +245 -0
- data/rdoc/RubyXL/ColumnRanges.html +289 -0
- data/rdoc/RubyXL/Comment.html +106 -0
- data/rdoc/RubyXL/CommentList.html +106 -0
- data/rdoc/RubyXL/CommentsFile.html +197 -0
- data/rdoc/RubyXL/ConditionalFormatValue.html +106 -0
- data/rdoc/RubyXL/ConditionalFormatting.html +106 -0
- data/rdoc/RubyXL/ConditionalFormattingRule.html +106 -0
- data/rdoc/RubyXL/ContentTypeDefault.html +103 -0
- data/rdoc/RubyXL/ContentTypeOverride.html +103 -0
- data/rdoc/RubyXL/ContentTypes.html +248 -0
- data/rdoc/RubyXL/ControlPropertiesFile.html +117 -0
- data/rdoc/RubyXL/CorePropertiesFile.html +474 -0
- data/rdoc/RubyXL/CustomColor.html +106 -0
- data/rdoc/RubyXL/CustomColorList.html +106 -0
- data/rdoc/RubyXL/CustomFilter.html +106 -0
- data/rdoc/RubyXL/CustomFilters.html +106 -0
- data/rdoc/RubyXL/CustomGeometry.html +106 -0
- data/rdoc/RubyXL/CustomProperties.html +106 -0
- data/rdoc/RubyXL/CustomPropertiesFile.html +122 -0
- data/rdoc/RubyXL/CustomProperty.html +106 -0
- data/rdoc/RubyXL/CustomSheetView.html +106 -0
- data/rdoc/RubyXL/CustomSheetViews.html +106 -0
- data/rdoc/RubyXL/CustomWorkbookView.html +106 -0
- data/rdoc/RubyXL/CustomWorkbookViews.html +106 -0
- data/rdoc/RubyXL/CustomXMLFile.html +117 -0
- data/rdoc/RubyXL/DXF.html +106 -0
- data/rdoc/RubyXL/DXFs.html +106 -0
- data/rdoc/RubyXL/DataBar.html +106 -0
- data/rdoc/RubyXL/DataConsolidate.html +106 -0
- data/rdoc/RubyXL/DataConsolidationReference.html +106 -0
- data/rdoc/RubyXL/DataConsolidationReferences.html +106 -0
- data/rdoc/RubyXL/DataType.html +143 -0
- data/rdoc/RubyXL/DataValidation.html +106 -0
- data/rdoc/RubyXL/DataValidations.html +106 -0
- data/rdoc/RubyXL/DateGroupItem.html +106 -0
- data/rdoc/RubyXL/DefinedName.html +106 -0
- data/rdoc/RubyXL/DefinedNameExt.html +106 -0
- data/rdoc/RubyXL/DefinedNames.html +106 -0
- data/rdoc/RubyXL/DefinedNamesExt.html +106 -0
- data/rdoc/RubyXL/DocumentPropertiesFile.html +255 -0
- data/rdoc/RubyXL/DrawingFile.html +188 -0
- data/rdoc/RubyXL/DynamicFilter.html +106 -0
- data/rdoc/RubyXL/EmbeddedControl.html +106 -0
- data/rdoc/RubyXL/EmbeddedControls.html +106 -0
- data/rdoc/RubyXL/Extension.html +106 -0
- data/rdoc/RubyXL/ExtensionStorageArea.html +106 -0
- data/rdoc/RubyXL/Extents.html +106 -0
- data/rdoc/RubyXL/ExternalBook.html +106 -0
- data/rdoc/RubyXL/ExternalLinksFile.html +184 -0
- data/rdoc/RubyXL/ExternalReference.html +106 -0
- data/rdoc/RubyXL/ExternalReferences.html +106 -0
- data/rdoc/RubyXL/ExtraColorSchemeList.html +106 -0
- data/rdoc/RubyXL/FieldItem.html +106 -0
- data/rdoc/RubyXL/FileRecoveryProperties.html +106 -0
- data/rdoc/RubyXL/FileSharing.html +106 -0
- data/rdoc/RubyXL/FileVersion.html +106 -0
- data/rdoc/RubyXL/Fill.html +157 -0
- data/rdoc/RubyXL/Fills.html +157 -0
- data/rdoc/RubyXL/FilterContainer.html +106 -0
- data/rdoc/RubyXL/FloatNode.html +103 -0
- data/rdoc/RubyXL/FloatValue.html +103 -0
- data/rdoc/RubyXL/Font.html +184 -0
- data/rdoc/RubyXL/FontConvenienceMethods.html +603 -0
- data/rdoc/RubyXL/FontScheme.html +106 -0
- data/rdoc/RubyXL/Fonts.html +157 -0
- data/rdoc/RubyXL/Formula.html +106 -0
- data/rdoc/RubyXL/FunctionGroup.html +106 -0
- data/rdoc/RubyXL/FunctionGroups.html +106 -0
- data/rdoc/RubyXL/GenericStorageObject.html +298 -0
- data/rdoc/RubyXL/GradientFill.html +106 -0
- data/rdoc/RubyXL/HeaderFooterSettings.html +106 -0
- data/rdoc/RubyXL/Hyperlink.html +106 -0
- data/rdoc/RubyXL/HyperlinkRelFile.html +117 -0
- data/rdoc/RubyXL/Hyperlinks.html +106 -0
- data/rdoc/RubyXL/IconFilter.html +106 -0
- data/rdoc/RubyXL/IconSet.html +106 -0
- data/rdoc/RubyXL/IgnoredError.html +106 -0
- data/rdoc/RubyXL/IgnoredErrors.html +106 -0
- data/rdoc/RubyXL/IndexedColors.html +106 -0
- data/rdoc/RubyXL/InputCells.html +106 -0
- data/rdoc/RubyXL/IntegerNode.html +103 -0
- data/rdoc/RubyXL/IntegerValue.html +103 -0
- data/rdoc/RubyXL/LegacyCell.html +181 -0
- data/rdoc/RubyXL/LegacyWorksheet.html +355 -0
- data/rdoc/RubyXL/MRUColors.html +106 -0
- data/rdoc/RubyXL/MacrosFile.html +122 -0
- data/rdoc/RubyXL/MergedCell.html +106 -0
- data/rdoc/RubyXL/MergedCells.html +106 -0
- data/rdoc/RubyXL/NumFmt.html +106 -0
- data/rdoc/RubyXL/NumberFormat.html +158 -0
- data/rdoc/RubyXL/NumberFormats.html +172 -0
- data/rdoc/RubyXL/OLEObject.html +106 -0
- data/rdoc/RubyXL/OLEObjectFile.html +122 -0
- data/rdoc/RubyXL/OLEObjects.html +106 -0
- data/rdoc/RubyXL/OLESize.html +106 -0
- data/rdoc/RubyXL/OOXMLContainerObject.html +394 -0
- data/rdoc/RubyXL/OOXMLObject.html +118 -0
- data/rdoc/RubyXL/OOXMLObjectClassMethods.html +532 -0
- data/rdoc/RubyXL/OOXMLObjectInstanceMethods.html +564 -0
- data/rdoc/RubyXL/OOXMLRelationshipsFile.html +603 -0
- data/rdoc/RubyXL/OOXMLTopLevelObject.html +384 -0
- data/rdoc/RubyXL/Offset.html +106 -0
- data/rdoc/RubyXL/OutlineProperties.html +106 -0
- data/rdoc/RubyXL/PageMargins.html +106 -0
- data/rdoc/RubyXL/PageSetup.html +106 -0
- data/rdoc/RubyXL/PageSetupProperties.html +106 -0
- data/rdoc/RubyXL/Pane.html +106 -0
- data/rdoc/RubyXL/Parser.html +204 -0
- data/rdoc/RubyXL/PatternFill.html +106 -0
- data/rdoc/RubyXL/PhoneticProperties.html +106 -0
- data/rdoc/RubyXL/PhoneticRun.html +106 -0
- data/rdoc/RubyXL/PivotArea.html +106 -0
- data/rdoc/RubyXL/PivotCache.html +106 -0
- data/rdoc/RubyXL/PivotCacheDefinitionFile.html +133 -0
- data/rdoc/RubyXL/PivotCacheRecordsFile.html +122 -0
- data/rdoc/RubyXL/PivotCaches.html +106 -0
- data/rdoc/RubyXL/PivotReference.html +106 -0
- data/rdoc/RubyXL/PivotReferences.html +106 -0
- data/rdoc/RubyXL/PivotTableFile.html +133 -0
- data/rdoc/RubyXL/PivotTableSelection.html +106 -0
- data/rdoc/RubyXL/PresetGeometry.html +106 -0
- data/rdoc/RubyXL/PrintOptions.html +106 -0
- data/rdoc/RubyXL/PrinterSettingsFile.html +122 -0
- data/rdoc/RubyXL/ProtectedRange.html +106 -0
- data/rdoc/RubyXL/ProtectedRanges.html +106 -0
- data/rdoc/RubyXL/Protection.html +106 -0
- data/rdoc/RubyXL/RID.html +103 -0
- data/rdoc/RubyXL/RawOOXML.html +223 -0
- data/rdoc/RubyXL/Reference.html +640 -0
- data/rdoc/RubyXL/Relationship.html +103 -0
- data/rdoc/RubyXL/RelationshipSupport.html +419 -0
- data/rdoc/RubyXL/RelationshipSupport/ClassMehods.html +148 -0
- data/rdoc/RubyXL/RichText.html +159 -0
- data/rdoc/RubyXL/RichTextRun.html +157 -0
- data/rdoc/RubyXL/Row.html +439 -0
- data/rdoc/RubyXL/RowExt.html +106 -0
- data/rdoc/RubyXL/RunProperties.html +106 -0
- data/rdoc/RubyXL/Scenario.html +106 -0
- data/rdoc/RubyXL/Scenarios.html +106 -0
- data/rdoc/RubyXL/Selection.html +165 -0
- data/rdoc/RubyXL/ShapeGuide.html +106 -0
- data/rdoc/RubyXL/ShapeTextRectangle.html +106 -0
- data/rdoc/RubyXL/SharedStringsTable.html +424 -0
- data/rdoc/RubyXL/Sheet.html +106 -0
- data/rdoc/RubyXL/SheetCalculationProperties.html +106 -0
- data/rdoc/RubyXL/SheetData.html +192 -0
- data/rdoc/RubyXL/SheetDataExt.html +106 -0
- data/rdoc/RubyXL/SheetDataSet.html +106 -0
- data/rdoc/RubyXL/SheetName.html +106 -0
- data/rdoc/RubyXL/SheetNames.html +106 -0
- data/rdoc/RubyXL/Sheets.html +106 -0
- data/rdoc/RubyXL/SlicerCacheFile.html +122 -0
- data/rdoc/RubyXL/SlicerFile.html +122 -0
- data/rdoc/RubyXL/SmartTagProperties.html +106 -0
- data/rdoc/RubyXL/SmartTagType.html +106 -0
- data/rdoc/RubyXL/SmartTagTypes.html +106 -0
- data/rdoc/RubyXL/SmartTags.html +106 -0
- data/rdoc/RubyXL/SortCondition.html +106 -0
- data/rdoc/RubyXL/SortState.html +106 -0
- data/rdoc/RubyXL/Sqref.html +197 -0
- data/rdoc/RubyXL/Stop.html +106 -0
- data/rdoc/RubyXL/StringNode.html +103 -0
- data/rdoc/RubyXL/StringNodeW3C.html +197 -0
- data/rdoc/RubyXL/StringValue.html +103 -0
- data/rdoc/RubyXL/Stylesheet.html +354 -0
- data/rdoc/RubyXL/TableFile.html +122 -0
- data/rdoc/RubyXL/TableParts.html +103 -0
- data/rdoc/RubyXL/TableStyle.html +106 -0
- data/rdoc/RubyXL/TableStyles.html +106 -0
- data/rdoc/RubyXL/Text.html +216 -0
- data/rdoc/RubyXL/Theme.html +535 -0
- data/rdoc/RubyXL/ThemeElements.html +106 -0
- data/rdoc/RubyXL/ThumbnailFile.html +122 -0
- data/rdoc/RubyXL/Top10.html +106 -0
- data/rdoc/RubyXL/VMLDrawingFile.html +134 -0
- data/rdoc/RubyXL/Variant.html +106 -0
- data/rdoc/RubyXL/Vector.html +161 -0
- data/rdoc/RubyXL/VectorValue.html +103 -0
- data/rdoc/RubyXL/VisualProperties.html +106 -0
- data/rdoc/RubyXL/WebPublishObject.html +106 -0
- data/rdoc/RubyXL/WebPublishObjects.html +106 -0
- data/rdoc/RubyXL/WebPublishingItem.html +106 -0
- data/rdoc/RubyXL/WebPublishingItems.html +106 -0
- data/rdoc/RubyXL/WebPublishingProperties.html +106 -0
- data/rdoc/RubyXL/Workbook.html +633 -0
- data/rdoc/RubyXL/WorkbookConvenienceMethods.html +1321 -0
- data/rdoc/RubyXL/WorkbookProperties.html +106 -0
- data/rdoc/RubyXL/WorkbookProtection.html +106 -0
- data/rdoc/RubyXL/WorkbookRoot.html +402 -0
- data/rdoc/RubyXL/WorkbookView.html +106 -0
- data/rdoc/RubyXL/WorkbookViews.html +106 -0
- data/rdoc/RubyXL/Worksheet.html +433 -0
- data/rdoc/RubyXL/WorksheetConvenienceMethods.html +2861 -0
- data/rdoc/RubyXL/WorksheetDimensions.html +106 -0
- data/rdoc/RubyXL/WorksheetFormatProperties.html +103 -0
- data/rdoc/RubyXL/WorksheetProperties.html +106 -0
- data/rdoc/RubyXL/WorksheetProtection.html +106 -0
- data/rdoc/RubyXL/WorksheetView.html +106 -0
- data/rdoc/RubyXL/WorksheetViews.html +106 -0
- data/rdoc/RubyXL/XF.html +106 -0
- data/rdoc/created.rid +38 -0
- data/rdoc/css/fonts.css +167 -0
- data/rdoc/css/rdoc.css +590 -0
- data/rdoc/fonts/Lato-Light.ttf +0 -0
- data/rdoc/fonts/Lato-LightItalic.ttf +0 -0
- data/rdoc/fonts/Lato-Regular.ttf +0 -0
- data/rdoc/fonts/Lato-RegularItalic.ttf +0 -0
- data/rdoc/fonts/SourceCodePro-Bold.ttf +0 -0
- data/rdoc/fonts/SourceCodePro-Regular.ttf +0 -0
- data/rdoc/images/add.png +0 -0
- data/rdoc/images/arrow_up.png +0 -0
- data/rdoc/images/brick.png +0 -0
- data/rdoc/images/brick_link.png +0 -0
- data/rdoc/images/bug.png +0 -0
- data/rdoc/images/bullet_black.png +0 -0
- data/rdoc/images/bullet_toggle_minus.png +0 -0
- data/rdoc/images/bullet_toggle_plus.png +0 -0
- data/rdoc/images/date.png +0 -0
- data/rdoc/images/delete.png +0 -0
- data/rdoc/images/find.png +0 -0
- data/rdoc/images/loadingAnimation.gif +0 -0
- data/rdoc/images/macFFBgHack.png +0 -0
- data/rdoc/images/package.png +0 -0
- data/rdoc/images/page_green.png +0 -0
- data/rdoc/images/page_white_text.png +0 -0
- data/rdoc/images/page_white_width.png +0 -0
- data/rdoc/images/plugin.png +0 -0
- data/rdoc/images/ruby.png +0 -0
- data/rdoc/images/tag_blue.png +0 -0
- data/rdoc/images/tag_green.png +0 -0
- data/rdoc/images/transparent.png +0 -0
- data/rdoc/images/wrench.png +0 -0
- data/rdoc/images/wrench_orange.png +0 -0
- data/rdoc/images/zoom.png +0 -0
- data/rdoc/index.html +796 -0
- data/rdoc/js/darkfish.js +161 -0
- data/rdoc/js/jquery.js +4 -0
- data/rdoc/js/navigation.js +142 -0
- data/rdoc/js/navigation.js.gz +0 -0
- data/rdoc/js/search.js +109 -0
- data/rdoc/js/search_index.js +1 -0
- data/rdoc/js/search_index.js.gz +0 -0
- data/rdoc/js/searcher.js +229 -0
- data/rdoc/js/searcher.js.gz +0 -0
- data/rdoc/table_of_contents.html +2758 -0
- data/rubyXL.gemspec +516 -0
- data/spec/lib/cell_spec.rb +515 -0
- data/spec/lib/color_spec.rb +13 -0
- data/spec/lib/parser_spec.rb +118 -0
- data/spec/lib/reference_spec.rb +28 -0
- data/spec/lib/stylesheet_spec.rb +28 -0
- data/spec/lib/text_spec.rb +29 -0
- data/spec/lib/workbook_spec.rb +174 -0
- data/spec/lib/worksheet_spec.rb +1363 -0
- data/spec/spec_helper.rb +11 -0
- data/test/input/.gitkeep +0 -0
- data/test/output/.gitkeep +0 -0
- data/test/test_parse_write.rb +15 -0
- data/tmp/.gitignore +1 -0
- metadata +615 -0
|
@@ -0,0 +1,515 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
require 'bigdecimal'
|
|
3
|
+
|
|
4
|
+
describe RubyXL::Cell do
|
|
5
|
+
|
|
6
|
+
before do
|
|
7
|
+
@workbook = RubyXL::Workbook.new
|
|
8
|
+
@worksheet = @workbook.add_worksheet('Test Worksheet')
|
|
9
|
+
@workbook.worksheets << @worksheet
|
|
10
|
+
(0..10).each do |i|
|
|
11
|
+
(0..10).each do |j|
|
|
12
|
+
@worksheet.add_cell(i, j, "#{i}:#{j}")
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
@cell = @worksheet[0][0]
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
describe '.add_cell' do
|
|
19
|
+
it 'should properly assign data types' do
|
|
20
|
+
r = 4
|
|
21
|
+
c = 4
|
|
22
|
+
|
|
23
|
+
cell = @worksheet.add_cell(r, c, 123)
|
|
24
|
+
expect(cell.datatype).to be_nil
|
|
25
|
+
|
|
26
|
+
cell = @worksheet.add_cell(r, c, "#{r}:#{c}")
|
|
27
|
+
expect(cell.datatype).to eq(RubyXL::DataType::RAW_STRING)
|
|
28
|
+
|
|
29
|
+
cell = @worksheet.add_cell(r, c, RubyXL::RichText.new(:t => RubyXL::Text.new(:value => 'Hello')))
|
|
30
|
+
expect(cell.datatype).to eq(RubyXL::DataType::INLINE_STRING)
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
describe '.change_fill' do
|
|
35
|
+
it 'should cause an error if hex color code not passed' do
|
|
36
|
+
expect {
|
|
37
|
+
@cell.change_fill('G')
|
|
38
|
+
}.to raise_error(RuntimeError)
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
it 'should make cell fill color equal to hex color code passed' do
|
|
42
|
+
@cell.change_fill('0f0f0f')
|
|
43
|
+
expect(@cell.fill_color).to eq('0f0f0f')
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
it 'should cause an error if hex color code includes # character' do
|
|
47
|
+
expect {
|
|
48
|
+
@cell.change_fill('#0f0f0f')
|
|
49
|
+
}.to raise_error(RuntimeError)
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
describe '.change_font_name' do
|
|
54
|
+
it 'should make font name match font name passed' do
|
|
55
|
+
@cell.change_font_name('Arial')
|
|
56
|
+
expect(@cell.font_name).to eq('Arial')
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
describe '.change_font_size' do
|
|
61
|
+
it 'should make font size match number passed' do
|
|
62
|
+
@cell.change_font_size(30)
|
|
63
|
+
expect(@cell.font_size).to eq(30)
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
it 'should cause an error if a string passed' do
|
|
67
|
+
expect {
|
|
68
|
+
@cell.change_font_size('20')
|
|
69
|
+
}.to raise_error(RuntimeError)
|
|
70
|
+
end
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
describe '.change_font_color' do
|
|
74
|
+
it 'should cause an error if hex color code not passed' do
|
|
75
|
+
expect {
|
|
76
|
+
@cell.change_font_color('G')
|
|
77
|
+
}.to raise_error(RuntimeError)
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
it 'should make cell font color equal to hex color code passed' do
|
|
81
|
+
@cell.change_font_color('0f0f0f')
|
|
82
|
+
expect(@cell.font_color).to eq('0f0f0f')
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
it 'should cause an error if hex color code includes # character' do
|
|
86
|
+
expect {
|
|
87
|
+
@cell.change_font_color('#0f0f0f')
|
|
88
|
+
}.to raise_error(RuntimeError)
|
|
89
|
+
end
|
|
90
|
+
end
|
|
91
|
+
|
|
92
|
+
describe '.change_font_italics' do
|
|
93
|
+
it 'should make cell font italicized when true is passed' do
|
|
94
|
+
expect(@cell.is_italicized).to be_nil
|
|
95
|
+
@cell.change_font_italics(true)
|
|
96
|
+
expect(@cell.is_italicized).to eq(true)
|
|
97
|
+
end
|
|
98
|
+
end
|
|
99
|
+
|
|
100
|
+
describe '.change_font_bold' do
|
|
101
|
+
it 'should make cell font bolded when true is passed' do
|
|
102
|
+
expect(@cell.is_bolded).to be_nil
|
|
103
|
+
@cell.change_font_bold(true)
|
|
104
|
+
expect(@cell.is_bolded).to eq(true)
|
|
105
|
+
end
|
|
106
|
+
end
|
|
107
|
+
|
|
108
|
+
describe '.change_font_underline' do
|
|
109
|
+
it 'should make cell font underlined when true is passed' do
|
|
110
|
+
expect(@cell.is_underlined).to be_nil
|
|
111
|
+
@cell.change_font_underline(true)
|
|
112
|
+
expect(@cell.is_underlined).to eq(true)
|
|
113
|
+
end
|
|
114
|
+
end
|
|
115
|
+
|
|
116
|
+
describe '.change_font_strikethrough' do
|
|
117
|
+
it 'should make cell font struckthrough when true is passed' do
|
|
118
|
+
expect(@cell.is_struckthrough).to be_nil
|
|
119
|
+
@cell.change_font_strikethrough(true)
|
|
120
|
+
expect(@cell.is_struckthrough).to eq(true)
|
|
121
|
+
end
|
|
122
|
+
end
|
|
123
|
+
|
|
124
|
+
describe '.change_horizontal_alignment' do
|
|
125
|
+
it 'should cause cell to horizontally align as specified by the passed in string' do
|
|
126
|
+
expect(@cell.horizontal_alignment).to be_nil
|
|
127
|
+
@cell.change_horizontal_alignment('center')
|
|
128
|
+
expect(@cell.horizontal_alignment).to eq('center')
|
|
129
|
+
end
|
|
130
|
+
end
|
|
131
|
+
|
|
132
|
+
describe '.change_vertical_alignment' do
|
|
133
|
+
it 'should cause cell to vertically align as specified by the passed in string' do
|
|
134
|
+
expect(@cell.vertical_alignment).to be_nil
|
|
135
|
+
@cell.change_vertical_alignment('center')
|
|
136
|
+
expect(@cell.vertical_alignment).to eq('center')
|
|
137
|
+
end
|
|
138
|
+
end
|
|
139
|
+
|
|
140
|
+
describe '.change_wrap' do
|
|
141
|
+
it 'should cause cell to wrap align as specified by the passed in value' do
|
|
142
|
+
expect(@cell.text_wrap).to be_nil
|
|
143
|
+
@cell.change_text_wrap(true)
|
|
144
|
+
expect(@cell.text_wrap).to eq(true)
|
|
145
|
+
end
|
|
146
|
+
end
|
|
147
|
+
|
|
148
|
+
describe '.change_border_color' do
|
|
149
|
+
it 'should cause cell to have a colored top border' do
|
|
150
|
+
expect(@cell.get_border_color(:top)).to be_nil
|
|
151
|
+
@cell.change_border_color(:top, 'FF0000')
|
|
152
|
+
expect(@cell.get_border_color(:top)).to eq('FF0000')
|
|
153
|
+
end
|
|
154
|
+
|
|
155
|
+
it 'should cause cell to have a colored bottom border' do
|
|
156
|
+
expect(@cell.get_border_color(:bottom)).to be_nil
|
|
157
|
+
@cell.change_border_color(:bottom, 'FF0000')
|
|
158
|
+
expect(@cell.get_border_color(:bottom)).to eq('FF0000')
|
|
159
|
+
end
|
|
160
|
+
|
|
161
|
+
it 'should cause cell to have a colored left border' do
|
|
162
|
+
expect(@cell.get_border_color(:left)).to be_nil
|
|
163
|
+
@cell.change_border_color(:left, 'FF0000')
|
|
164
|
+
expect(@cell.get_border_color(:left)).to eq('FF0000')
|
|
165
|
+
end
|
|
166
|
+
|
|
167
|
+
it 'should cause cell to have a colored right border' do
|
|
168
|
+
expect(@cell.get_border_color(:right)).to be_nil
|
|
169
|
+
@cell.change_border_color(:right, 'FF0000')
|
|
170
|
+
expect(@cell.get_border_color(:right)).to eq('FF0000')
|
|
171
|
+
end
|
|
172
|
+
|
|
173
|
+
it 'should cause cell to have a colored diagonal border' do
|
|
174
|
+
expect(@cell.get_border_color(:diagonal)).to be_nil
|
|
175
|
+
@cell.change_border_color(:diagonal, 'FF0000')
|
|
176
|
+
expect(@cell.get_border_color(:diagonal)).to eq('FF0000')
|
|
177
|
+
end
|
|
178
|
+
|
|
179
|
+
it 'is not overridden if the border style is set afterwards' do
|
|
180
|
+
expect(@cell.get_border_color(:top)).to be_nil
|
|
181
|
+
expect(@cell.get_border(:top)).to be_nil
|
|
182
|
+
@cell.change_border_color(:top, 'FF0000')
|
|
183
|
+
@cell.change_border(:top, 'thin')
|
|
184
|
+
expect(@cell.get_border_color(:top)).to eq('FF0000')
|
|
185
|
+
expect(@cell.get_border(:top)).to eq('thin')
|
|
186
|
+
end
|
|
187
|
+
end
|
|
188
|
+
|
|
189
|
+
describe '.change_border' do
|
|
190
|
+
it 'should cause cell to have border at top with specified weight' do
|
|
191
|
+
expect(@cell.get_border(:top)).to be_nil
|
|
192
|
+
@cell.change_border(:top, 'thin')
|
|
193
|
+
expect(@cell.get_border(:top)).to eq('thin')
|
|
194
|
+
end
|
|
195
|
+
|
|
196
|
+
it 'should cause cell to have border at right with specified weight' do
|
|
197
|
+
expect(@cell.get_border(:right)).to be_nil
|
|
198
|
+
@cell.change_border(:right, 'thin')
|
|
199
|
+
expect(@cell.get_border(:right)).to eq('thin')
|
|
200
|
+
end
|
|
201
|
+
|
|
202
|
+
it 'should cause cell to have border at left with specified weight' do
|
|
203
|
+
expect(@cell.get_border(:left)).to be_nil
|
|
204
|
+
@cell.change_border(:left, 'thin')
|
|
205
|
+
expect(@cell.get_border(:left)).to eq('thin')
|
|
206
|
+
end
|
|
207
|
+
|
|
208
|
+
it 'should cause cell to have border at bottom with specified weight' do
|
|
209
|
+
expect(@cell.get_border(:bottom)).to be_nil
|
|
210
|
+
@cell.change_border(:bottom, 'thin')
|
|
211
|
+
expect(@cell.get_border(:bottom)).to eq('thin')
|
|
212
|
+
end
|
|
213
|
+
|
|
214
|
+
it 'should cause cell to have border at diagonal with specified weight' do
|
|
215
|
+
expect(@cell.get_border(:diagonal)).to be_nil
|
|
216
|
+
@cell.change_border(:diagonal, 'thin')
|
|
217
|
+
expect(@cell.get_border(:diagonal)).to eq('thin')
|
|
218
|
+
end
|
|
219
|
+
end
|
|
220
|
+
|
|
221
|
+
describe '.value' do
|
|
222
|
+
it 'should return the value of a date' do
|
|
223
|
+
date = Date.parse('January 1, 2011')
|
|
224
|
+
@cell.change_contents(date)
|
|
225
|
+
expect(@cell).to receive(:is_date?).at_least(1).and_return(true)
|
|
226
|
+
expect(@cell.value).to eq(date)
|
|
227
|
+
end
|
|
228
|
+
|
|
229
|
+
it 'should properly return value of inlineStr' do
|
|
230
|
+
cell = @worksheet.add_cell(5, 5, RubyXL::RichText.new(:t => RubyXL::Text.new(:value => 'Hello')))
|
|
231
|
+
expect(cell.value).to eq('Hello')
|
|
232
|
+
end
|
|
233
|
+
|
|
234
|
+
it "should properly handle numeric values" do
|
|
235
|
+
@cell.datatype = nil
|
|
236
|
+
@cell.raw_value = '1'
|
|
237
|
+
expect(@cell.value).to eq(1)
|
|
238
|
+
|
|
239
|
+
@cell.raw_value = '10000000'
|
|
240
|
+
expect(@cell.value).to eq(10000000)
|
|
241
|
+
|
|
242
|
+
@cell.raw_value = '-10'
|
|
243
|
+
expect(@cell.value).to eq(-10)
|
|
244
|
+
|
|
245
|
+
@cell.raw_value = '0'
|
|
246
|
+
expect(@cell.value).to eq(0)
|
|
247
|
+
|
|
248
|
+
@cell.raw_value = '0.001'
|
|
249
|
+
expect(@cell.value).to eq(0.001)
|
|
250
|
+
|
|
251
|
+
@cell.raw_value = '-0.00000000001'
|
|
252
|
+
expect(@cell.value).to eq(-0.00000000001)
|
|
253
|
+
|
|
254
|
+
@cell.raw_value = '1E5'
|
|
255
|
+
expect(@cell.value).to eq(100000.0)
|
|
256
|
+
|
|
257
|
+
@cell.raw_value = '1E0'
|
|
258
|
+
expect(@cell.value).to eq(1.0)
|
|
259
|
+
|
|
260
|
+
@cell.raw_value = '1E-5'
|
|
261
|
+
expect(@cell.value).to eq(0.00001)
|
|
262
|
+
|
|
263
|
+
@cell.raw_value = '-1E5'
|
|
264
|
+
expect(@cell.value).to eq(-100000.0)
|
|
265
|
+
|
|
266
|
+
@cell.raw_value = '-1E0'
|
|
267
|
+
expect(@cell.value).to eq(-1.0)
|
|
268
|
+
|
|
269
|
+
@cell.raw_value = '-1E-5'
|
|
270
|
+
expect(@cell.value).to eq(-0.00001)
|
|
271
|
+
|
|
272
|
+
@cell.raw_value = '1DE-5'
|
|
273
|
+
expect(@cell.value).to eq('1DE-5')
|
|
274
|
+
end
|
|
275
|
+
|
|
276
|
+
context '1900-based dates' do
|
|
277
|
+
before(:each) { @workbook.date1904 = false }
|
|
278
|
+
it 'should convert date numbers correctly' do
|
|
279
|
+
date = 41019
|
|
280
|
+
@cell.change_contents(date)
|
|
281
|
+
expect(@cell).to receive(:is_date?).at_least(1).and_return(true)
|
|
282
|
+
expect(@cell.value).to eq(Date.parse('April 20, 2012'))
|
|
283
|
+
@cell.change_contents(35981)
|
|
284
|
+
expect(@cell.value).to eq(Date.parse('July 5, 1998'))
|
|
285
|
+
@cell.change_contents(0.019467592592592595)
|
|
286
|
+
expect(@cell.value).to eq(DateTime.parse('1899-12-31T00:28:02+00:00'))
|
|
287
|
+
@cell.change_contents(1)
|
|
288
|
+
expect(@cell.value).to eq(Date.parse('January 1, 1900'))
|
|
289
|
+
@cell.change_contents(59)
|
|
290
|
+
expect(@cell.value).to eq(Date.parse('February 28, 1900'))
|
|
291
|
+
@cell.change_contents(60)
|
|
292
|
+
# There's no way Ruby can return the nonexistent February 29th, so it has to be March 1st:
|
|
293
|
+
expect(@cell.value).to eq(Date.parse('March 1, 1900'))
|
|
294
|
+
@cell.change_contents(61)
|
|
295
|
+
expect(@cell.value).to eq(Date.parse('March 1, 1900'))
|
|
296
|
+
end
|
|
297
|
+
end
|
|
298
|
+
|
|
299
|
+
context '1904-based dates' do
|
|
300
|
+
before(:each) { @workbook.date1904 = true }
|
|
301
|
+
it 'should convert date numbers correctly' do
|
|
302
|
+
date = 39557
|
|
303
|
+
@cell.change_contents(date)
|
|
304
|
+
expect(@cell).to receive(:is_date?).at_least(1).and_return(true)
|
|
305
|
+
expect(@cell.value).to eq(Date.parse('April 20, 2012'))
|
|
306
|
+
@cell.change_contents(34519)
|
|
307
|
+
expect(@cell.value).to eq(Date.parse('July 5, 1998'))
|
|
308
|
+
end
|
|
309
|
+
end
|
|
310
|
+
|
|
311
|
+
context 'date before January 1, 1900' do
|
|
312
|
+
it 'should parse as date' do
|
|
313
|
+
@cell.set_number_format('h:mm:ss')
|
|
314
|
+
@cell.datatype = nil
|
|
315
|
+
|
|
316
|
+
@cell.raw_value = '0.97726851851851848'
|
|
317
|
+
expect(@cell.is_date?).to be(true)
|
|
318
|
+
expect(@cell.value).to eq(DateTime.parse('1899-12-31 23:27:16'))
|
|
319
|
+
@cell.raw_value = '1.9467592592592595E-2'
|
|
320
|
+
expect(@cell.is_date?).to be(true)
|
|
321
|
+
expect(@cell.value).to eq(DateTime.parse('1899-12-31 00:28:02'))
|
|
322
|
+
end
|
|
323
|
+
end
|
|
324
|
+
|
|
325
|
+
end
|
|
326
|
+
|
|
327
|
+
describe '.change_contents' do
|
|
328
|
+
it 'should cause cell value to match string or number that is passed in' do
|
|
329
|
+
@cell.change_contents('TEST')
|
|
330
|
+
expect(@cell.value).to eq('TEST')
|
|
331
|
+
expect(@cell.formula).to be_nil
|
|
332
|
+
end
|
|
333
|
+
|
|
334
|
+
it 'should cause cell value to match a date that is passed in' do
|
|
335
|
+
date = Date.parse('January 1, 2011')
|
|
336
|
+
@cell.change_contents(date)
|
|
337
|
+
expect(@cell).to receive(:is_date?).at_least(1).and_return(true)
|
|
338
|
+
expect(@cell.value).to eq(date)
|
|
339
|
+
expect(@cell.datatype).to be_nil
|
|
340
|
+
expect(@cell.formula).to be_nil
|
|
341
|
+
end
|
|
342
|
+
|
|
343
|
+
it 'should case cell value to match a Float that is passed in' do
|
|
344
|
+
number = 1.25
|
|
345
|
+
@cell.change_contents(number)
|
|
346
|
+
expect(@cell.value).to eq(number)
|
|
347
|
+
expect(@cell.datatype).to be_nil
|
|
348
|
+
expect(@cell.formula).to be_nil
|
|
349
|
+
end
|
|
350
|
+
|
|
351
|
+
it 'should case cell value to match an Integer that is passed in' do
|
|
352
|
+
number = 1234567
|
|
353
|
+
@cell.change_contents(number)
|
|
354
|
+
expect(@cell.value).to eq(number)
|
|
355
|
+
expect(@cell.datatype).to be_nil
|
|
356
|
+
expect(@cell.formula).to be_nil
|
|
357
|
+
end
|
|
358
|
+
|
|
359
|
+
it 'should case cell value to match an BigDecimal that is passed in' do
|
|
360
|
+
number = BigDecimal.new('1234.5678')
|
|
361
|
+
@cell.change_contents(number)
|
|
362
|
+
expect(@cell.value).to eq(number)
|
|
363
|
+
expect(@cell.datatype).to be_nil
|
|
364
|
+
expect(@cell.formula).to be_nil
|
|
365
|
+
end
|
|
366
|
+
|
|
367
|
+
it 'should cause cell value and formula to match what is passed in' do
|
|
368
|
+
@cell.change_contents(nil, 'SUM(A2:A4)')
|
|
369
|
+
expect(@cell.value).to be_nil
|
|
370
|
+
expect(@cell.formula.expression).to eq('SUM(A2:A4)')
|
|
371
|
+
end
|
|
372
|
+
end
|
|
373
|
+
|
|
374
|
+
describe '.is_italicized' do
|
|
375
|
+
it 'should correctly return whether or not the cell\'s font is italicized' do
|
|
376
|
+
@cell.change_font_italics(true)
|
|
377
|
+
expect(@cell.is_italicized).to eq(true)
|
|
378
|
+
end
|
|
379
|
+
end
|
|
380
|
+
|
|
381
|
+
describe '.is_bolded' do
|
|
382
|
+
it 'should correctly return whether or not the cell\'s font is bolded' do
|
|
383
|
+
@cell.change_font_bold(true)
|
|
384
|
+
expect(@cell.is_bolded).to eq(true)
|
|
385
|
+
end
|
|
386
|
+
end
|
|
387
|
+
|
|
388
|
+
describe '.is_underlined' do
|
|
389
|
+
it 'should correctly return whether or not the cell\'s font is underlined' do
|
|
390
|
+
@cell.change_font_underline(true)
|
|
391
|
+
expect(@cell.is_underlined).to eq(true)
|
|
392
|
+
end
|
|
393
|
+
end
|
|
394
|
+
|
|
395
|
+
describe '.is_struckthrough' do
|
|
396
|
+
it 'should correctly return whether or not the cell\'s font is struckthrough' do
|
|
397
|
+
@cell.change_font_strikethrough(true)
|
|
398
|
+
expect(@cell.is_struckthrough).to eq(true)
|
|
399
|
+
end
|
|
400
|
+
end
|
|
401
|
+
|
|
402
|
+
describe '.font_name' do
|
|
403
|
+
it 'should correctly return the name of the cell\'s font' do
|
|
404
|
+
@cell.change_font_name('Verdana')
|
|
405
|
+
expect(@cell.font_name).to eq('Verdana')
|
|
406
|
+
end
|
|
407
|
+
end
|
|
408
|
+
|
|
409
|
+
describe '.font_size' do
|
|
410
|
+
it 'should correctly return the size of the cell\'s font' do
|
|
411
|
+
@cell.change_font_size(20)
|
|
412
|
+
expect(@cell.font_size).to eq(20)
|
|
413
|
+
end
|
|
414
|
+
end
|
|
415
|
+
|
|
416
|
+
describe '.font_color' do
|
|
417
|
+
it 'should correctly return the color of the cell\'s font' do
|
|
418
|
+
@cell.change_font_color('0f0f0f')
|
|
419
|
+
expect(@cell.font_color).to eq('0f0f0f')
|
|
420
|
+
end
|
|
421
|
+
|
|
422
|
+
it 'should return 000000 (black) if no font color has been specified for this cell' do
|
|
423
|
+
expect(@cell.font_color).to eq('000000')
|
|
424
|
+
end
|
|
425
|
+
end
|
|
426
|
+
|
|
427
|
+
describe '.fill_color' do
|
|
428
|
+
it 'should correctly return the color of the cell\'s fill' do
|
|
429
|
+
@cell.change_fill('000000')
|
|
430
|
+
expect(@cell.fill_color).to eq('000000')
|
|
431
|
+
end
|
|
432
|
+
|
|
433
|
+
it 'should return ffffff (white) if no fill color has been specified for this cell' do
|
|
434
|
+
expect(@cell.fill_color).to eq('ffffff')
|
|
435
|
+
end
|
|
436
|
+
end
|
|
437
|
+
|
|
438
|
+
describe '.horizontal_alignment' do
|
|
439
|
+
it 'should correctly return the type of horizontal alignment of this cell' do
|
|
440
|
+
@cell.change_horizontal_alignment('center')
|
|
441
|
+
expect(@cell.horizontal_alignment).to eq('center')
|
|
442
|
+
end
|
|
443
|
+
|
|
444
|
+
it 'should return nil if no horizontal alignment has been specified for this cell' do
|
|
445
|
+
expect(@cell.horizontal_alignment).to be_nil
|
|
446
|
+
end
|
|
447
|
+
end
|
|
448
|
+
|
|
449
|
+
describe '.vertical_alignment' do
|
|
450
|
+
it 'should correctly return the type of vertical alignment of this cell' do
|
|
451
|
+
@cell.change_vertical_alignment('center')
|
|
452
|
+
expect(@cell.vertical_alignment).to eq('center')
|
|
453
|
+
end
|
|
454
|
+
|
|
455
|
+
it 'should return nil if no vertical alignment has been specified for this cell' do
|
|
456
|
+
expect(@cell.vertical_alignment).to be_nil
|
|
457
|
+
end
|
|
458
|
+
end
|
|
459
|
+
|
|
460
|
+
describe '.border_top' do
|
|
461
|
+
it 'should correctly return the weight of the border on top for this cell' do
|
|
462
|
+
@cell.change_border(:top, 'thin')
|
|
463
|
+
expect(@cell.get_border(:top)).to eq('thin')
|
|
464
|
+
end
|
|
465
|
+
|
|
466
|
+
it 'should return nil if no top border has been specified for this cell' do
|
|
467
|
+
expect(@cell.get_border(:top)).to be_nil
|
|
468
|
+
end
|
|
469
|
+
end
|
|
470
|
+
|
|
471
|
+
describe '.border_left' do
|
|
472
|
+
it 'should correctly return the weight of the border on left for this cell' do
|
|
473
|
+
@cell.change_border(:left, 'thin')
|
|
474
|
+
expect(@cell.get_border(:left)).to eq('thin')
|
|
475
|
+
end
|
|
476
|
+
|
|
477
|
+
it 'should return nil if no left border has been specified for this cell' do
|
|
478
|
+
expect(@cell.get_border(:left)).to be_nil
|
|
479
|
+
end
|
|
480
|
+
end
|
|
481
|
+
|
|
482
|
+
describe '.border_right' do
|
|
483
|
+
it 'should correctly return the weight of the border on right for this cell' do
|
|
484
|
+
@cell.change_border(:right, 'thin')
|
|
485
|
+
expect(@cell.get_border(:right)).to eq('thin')
|
|
486
|
+
end
|
|
487
|
+
|
|
488
|
+
it 'should return nil if no right border has been specified for this cell' do
|
|
489
|
+
expect(@cell.get_border(:right)).to be_nil
|
|
490
|
+
end
|
|
491
|
+
end
|
|
492
|
+
|
|
493
|
+
describe '.border_bottom' do
|
|
494
|
+
it 'should correctly return the weight of the border on bottom for this cell' do
|
|
495
|
+
@cell.change_border(:bottom, 'thin')
|
|
496
|
+
expect(@cell.get_border(:bottom)).to eq('thin')
|
|
497
|
+
end
|
|
498
|
+
|
|
499
|
+
it 'should return nil if no bottom border has been specified for this cell' do
|
|
500
|
+
expect(@cell.get_border(:bottom)).to be_nil
|
|
501
|
+
end
|
|
502
|
+
end
|
|
503
|
+
|
|
504
|
+
describe '.border_diagonal' do
|
|
505
|
+
it 'should correctly return the weight of the diagonal border for this cell' do
|
|
506
|
+
@cell.change_border(:diagonal, 'thin')
|
|
507
|
+
expect(@cell.get_border(:diagonal)).to eq('thin')
|
|
508
|
+
end
|
|
509
|
+
|
|
510
|
+
it 'should return nil if no diagonal border has been specified for this cell' do
|
|
511
|
+
expect(@cell.get_border(:diagonal)).to be_nil
|
|
512
|
+
end
|
|
513
|
+
end
|
|
514
|
+
|
|
515
|
+
end
|