rubyXL 3.4.21 → 3.4.24

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.
Files changed (448) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +8 -8
  3. data/Gemfile.lock +21 -21
  4. data/README.rdoc +14 -9
  5. data/Rakefile +20 -19
  6. data/VERSION +1 -1
  7. data/lib/rubyXL/cell.rb +0 -2
  8. data/lib/rubyXL/convenience_methods/cell.rb +20 -14
  9. data/lib/rubyXL/convenience_methods/color.rb +3 -7
  10. data/lib/rubyXL/convenience_methods/workbook.rb +9 -4
  11. data/lib/rubyXL/convenience_methods/worksheet.rb +2 -3
  12. data/lib/rubyXL/objects/border.rb +0 -3
  13. data/lib/rubyXL/objects/calculation_chain.rb +2 -2
  14. data/lib/rubyXL/objects/cell_style.rb +1 -3
  15. data/lib/rubyXL/objects/chartsheet.rb +4 -7
  16. data/lib/rubyXL/objects/color.rb +1 -3
  17. data/lib/rubyXL/objects/column_range.rb +0 -3
  18. data/lib/rubyXL/objects/comments.rb +1 -4
  19. data/lib/rubyXL/objects/connection.rb +11 -11
  20. data/lib/rubyXL/objects/container_nodes.rb +1 -5
  21. data/lib/rubyXL/objects/content_types.rb +3 -6
  22. data/lib/rubyXL/objects/data_validation.rb +0 -2
  23. data/lib/rubyXL/objects/document_properties.rb +9 -13
  24. data/lib/rubyXL/objects/extensions.rb +0 -2
  25. data/lib/rubyXL/objects/external_links.rb +4 -6
  26. data/lib/rubyXL/objects/fill.rb +2 -5
  27. data/lib/rubyXL/objects/filters.rb +5 -7
  28. data/lib/rubyXL/objects/font.rb +1 -3
  29. data/lib/rubyXL/objects/formula.rb +3 -5
  30. data/lib/rubyXL/objects/ooxml_object.rb +6 -13
  31. data/lib/rubyXL/objects/query_table.rb +3 -3
  32. data/lib/rubyXL/objects/reference.rb +5 -4
  33. data/lib/rubyXL/objects/relationships.rb +5 -10
  34. data/lib/rubyXL/objects/root.rb +0 -2
  35. data/lib/rubyXL/objects/shared_strings.rb +3 -6
  36. data/lib/rubyXL/objects/sheet_common.rb +1 -3
  37. data/lib/rubyXL/objects/sheet_data.rb +4 -7
  38. data/lib/rubyXL/objects/simple_types.rb +1 -1
  39. data/lib/rubyXL/objects/storage.rb +51 -51
  40. data/lib/rubyXL/objects/stylesheet.rb +8 -15
  41. data/lib/rubyXL/objects/text.rb +3 -6
  42. data/lib/rubyXL/objects/theme.rb +4 -7
  43. data/lib/rubyXL/objects/workbook.rb +22 -23
  44. data/lib/rubyXL/objects/worksheet.rb +26 -22
  45. data/lib/rubyXL/parser.rb +1 -3
  46. data/lib/rubyXL/worksheet.rb +83 -84
  47. data/lib/rubyXL.rb +0 -1
  48. data/rdoc/README_rdoc.html +20 -20
  49. data/rdoc/RubyXL/AExtension.html +1 -1
  50. data/rdoc/RubyXL/AExtensionStorageArea.html +1 -1
  51. data/rdoc/RubyXL/ActiveX.html +3 -3
  52. data/rdoc/RubyXL/ActiveXBinary.html +1 -1
  53. data/rdoc/RubyXL/AdjustHandleList.html +1 -1
  54. data/rdoc/RubyXL/Alignment.html +1 -1
  55. data/rdoc/RubyXL/AlternateContent.html +1 -1
  56. data/rdoc/RubyXL/Authors.html +1 -1
  57. data/rdoc/RubyXL/AutoFilter.html +1 -1
  58. data/rdoc/RubyXL/AutoFilterColumn.html +1 -1
  59. data/rdoc/RubyXL/BinaryImageFile.html +1 -1
  60. data/rdoc/RubyXL/BodyProperties.html +1 -1
  61. data/rdoc/RubyXL/BooleanNode.html +1 -1
  62. data/rdoc/RubyXL/BooleanValue.html +1 -1
  63. data/rdoc/RubyXL/Border.html +5 -5
  64. data/rdoc/RubyXL/BorderEdge.html +3 -3
  65. data/rdoc/RubyXL/Borders.html +2 -2
  66. data/rdoc/RubyXL/Break.html +1 -1
  67. data/rdoc/RubyXL/BreakList.html +1 -1
  68. data/rdoc/RubyXL/CT_AdjPoint2D.html +1 -1
  69. data/rdoc/RubyXL/CT_AlphaBiLevelEffect.html +1 -1
  70. data/rdoc/RubyXL/CT_AlphaModulateEffect.html +1 -1
  71. data/rdoc/RubyXL/CT_AlphaModulateFixedEffect.html +1 -1
  72. data/rdoc/RubyXL/CT_AlphaOutsetEffect.html +1 -1
  73. data/rdoc/RubyXL/CT_AlphaReplaceEffect.html +1 -1
  74. data/rdoc/RubyXL/CT_Backdrop.html +1 -1
  75. data/rdoc/RubyXL/CT_Bevel.html +1 -1
  76. data/rdoc/RubyXL/CT_BiLevelEffect.html +1 -1
  77. data/rdoc/RubyXL/CT_BlendEffect.html +1 -1
  78. data/rdoc/RubyXL/CT_Blip.html +1 -1
  79. data/rdoc/RubyXL/CT_BlipFillProperties.html +1 -1
  80. data/rdoc/RubyXL/CT_BlurEffect.html +1 -1
  81. data/rdoc/RubyXL/CT_Camera.html +1 -1
  82. data/rdoc/RubyXL/CT_Color.html +1 -1
  83. data/rdoc/RubyXL/CT_ColorChangeEffect.html +1 -1
  84. data/rdoc/RubyXL/CT_ColorMapping.html +1 -1
  85. data/rdoc/RubyXL/CT_ColorScheme.html +1 -1
  86. data/rdoc/RubyXL/CT_ColorSchemeAndMapping.html +1 -1
  87. data/rdoc/RubyXL/CT_ConnectionSite.html +1 -1
  88. data/rdoc/RubyXL/CT_ConnectionSiteList.html +1 -1
  89. data/rdoc/RubyXL/CT_DashStop.html +1 -1
  90. data/rdoc/RubyXL/CT_DashStopList.html +1 -1
  91. data/rdoc/RubyXL/CT_DefaultShapeDefinition.html +1 -1
  92. data/rdoc/RubyXL/CT_DuotoneEffect.html +1 -1
  93. data/rdoc/RubyXL/CT_EffectContainer.html +1 -1
  94. data/rdoc/RubyXL/CT_EffectList.html +1 -1
  95. data/rdoc/RubyXL/CT_EffectReference.html +1 -1
  96. data/rdoc/RubyXL/CT_EffectStyleItem.html +1 -1
  97. data/rdoc/RubyXL/CT_EffectStyleList.html +1 -1
  98. data/rdoc/RubyXL/CT_EmbeddedWAVAudioFile.html +1 -1
  99. data/rdoc/RubyXL/CT_FillEffect.html +1 -1
  100. data/rdoc/RubyXL/CT_FillOverlayEffect.html +1 -1
  101. data/rdoc/RubyXL/CT_FillStyleList.html +1 -1
  102. data/rdoc/RubyXL/CT_FlatText.html +1 -1
  103. data/rdoc/RubyXL/CT_FontCollection.html +1 -1
  104. data/rdoc/RubyXL/CT_FontReference.html +1 -1
  105. data/rdoc/RubyXL/CT_GeomGuideList.html +1 -1
  106. data/rdoc/RubyXL/CT_GlowEffect.html +1 -1
  107. data/rdoc/RubyXL/CT_GradientFillProperties.html +1 -1
  108. data/rdoc/RubyXL/CT_GradientStop.html +1 -1
  109. data/rdoc/RubyXL/CT_GradientStopList.html +1 -1
  110. data/rdoc/RubyXL/CT_HSLEffect.html +1 -1
  111. data/rdoc/RubyXL/CT_HslColor.html +1 -1
  112. data/rdoc/RubyXL/CT_Hyperlink.html +1 -1
  113. data/rdoc/RubyXL/CT_InnerShadowEffect.html +1 -1
  114. data/rdoc/RubyXL/CT_LightRig.html +1 -1
  115. data/rdoc/RubyXL/CT_LineEndProperties.html +1 -1
  116. data/rdoc/RubyXL/CT_LineJoinMiterProperties.html +1 -1
  117. data/rdoc/RubyXL/CT_LineProperties.html +1 -1
  118. data/rdoc/RubyXL/CT_LineStyleList.html +1 -1
  119. data/rdoc/RubyXL/CT_LinearShadeProperties.html +1 -1
  120. data/rdoc/RubyXL/CT_LuminanceEffect.html +1 -1
  121. data/rdoc/RubyXL/CT_ObjectStyleDefaults.html +1 -1
  122. data/rdoc/RubyXL/CT_OuterShadowEffect.html +1 -1
  123. data/rdoc/RubyXL/CT_Path2D.html +1 -1
  124. data/rdoc/RubyXL/CT_Path2DArcTo.html +1 -1
  125. data/rdoc/RubyXL/CT_Path2DCubicBezierTo.html +1 -1
  126. data/rdoc/RubyXL/CT_Path2DList.html +1 -1
  127. data/rdoc/RubyXL/CT_Path2DQuadBezierTo.html +1 -1
  128. data/rdoc/RubyXL/CT_Path2DTo.html +1 -1
  129. data/rdoc/RubyXL/CT_PathShadeProperties.html +1 -1
  130. data/rdoc/RubyXL/CT_PatternFillProperties.html +1 -1
  131. data/rdoc/RubyXL/CT_Point3D.html +1 -1
  132. data/rdoc/RubyXL/CT_PolarAdjustHandle.html +1 -1
  133. data/rdoc/RubyXL/CT_PresetColor.html +1 -1
  134. data/rdoc/RubyXL/CT_PresetLineDashProperties.html +1 -1
  135. data/rdoc/RubyXL/CT_PresetShadowEffect.html +1 -1
  136. data/rdoc/RubyXL/CT_PresetTextShape.html +1 -1
  137. data/rdoc/RubyXL/CT_ReflectionEffect.html +1 -1
  138. data/rdoc/RubyXL/CT_RelativeOffsetEffect.html +1 -1
  139. data/rdoc/RubyXL/CT_RelativeRect.html +1 -1
  140. data/rdoc/RubyXL/CT_SRgbColor.html +1 -1
  141. data/rdoc/RubyXL/CT_ScRgbColor.html +1 -1
  142. data/rdoc/RubyXL/CT_Scene3D.html +1 -1
  143. data/rdoc/RubyXL/CT_SchemeColor.html +1 -1
  144. data/rdoc/RubyXL/CT_Shape3D.html +1 -1
  145. data/rdoc/RubyXL/CT_ShapeStyle.html +1 -1
  146. data/rdoc/RubyXL/CT_SoftEdgesEffect.html +1 -1
  147. data/rdoc/RubyXL/CT_SphereCoords.html +1 -1
  148. data/rdoc/RubyXL/CT_StretchInfoProperties.html +1 -1
  149. data/rdoc/RubyXL/CT_StyleMatrix.html +1 -1
  150. data/rdoc/RubyXL/CT_StyleMatrixReference.html +1 -1
  151. data/rdoc/RubyXL/CT_SupplementalFont.html +1 -1
  152. data/rdoc/RubyXL/CT_SystemColor.html +1 -1
  153. data/rdoc/RubyXL/CT_TextAutonumberBullet.html +1 -1
  154. data/rdoc/RubyXL/CT_TextBlipBullet.html +1 -1
  155. data/rdoc/RubyXL/CT_TextCharBullet.html +1 -1
  156. data/rdoc/RubyXL/CT_TextCharacterProperties.html +1 -1
  157. data/rdoc/RubyXL/CT_TextFont.html +1 -1
  158. data/rdoc/RubyXL/CT_TextListStyle.html +1 -1
  159. data/rdoc/RubyXL/CT_TextNormalAutofit.html +1 -1
  160. data/rdoc/RubyXL/CT_TextParagraphProperties.html +1 -1
  161. data/rdoc/RubyXL/CT_TextSpacing.html +1 -1
  162. data/rdoc/RubyXL/CT_TextTabStop.html +1 -1
  163. data/rdoc/RubyXL/CT_TextTabStopList.html +1 -1
  164. data/rdoc/RubyXL/CT_TileInfoProperties.html +1 -1
  165. data/rdoc/RubyXL/CT_TintEffect.html +1 -1
  166. data/rdoc/RubyXL/CT_Transform2D.html +1 -1
  167. data/rdoc/RubyXL/CT_TransformEffect.html +1 -1
  168. data/rdoc/RubyXL/CT_Vector3D.html +1 -1
  169. data/rdoc/RubyXL/CT_XYAdjustHandle.html +1 -1
  170. data/rdoc/RubyXL/CalculationChain.html +1 -1
  171. data/rdoc/RubyXL/CalculationChainCell.html +1 -1
  172. data/rdoc/RubyXL/CalculationProperties.html +1 -1
  173. data/rdoc/RubyXL/Cell.html +16 -16
  174. data/rdoc/RubyXL/CellConvenienceMethods.html +92 -38
  175. data/rdoc/RubyXL/CellExt.html +1 -1
  176. data/rdoc/RubyXL/CellSmartTag.html +1 -1
  177. data/rdoc/RubyXL/CellSmartTagProperty.html +1 -1
  178. data/rdoc/RubyXL/CellSmartTags.html +1 -1
  179. data/rdoc/RubyXL/CellStyle.html +1 -1
  180. data/rdoc/RubyXL/CellStyleXFs.html +2 -2
  181. data/rdoc/RubyXL/CellStyles.html +2 -2
  182. data/rdoc/RubyXL/CellValue.html +2 -2
  183. data/rdoc/RubyXL/CellWatch.html +1 -1
  184. data/rdoc/RubyXL/CellWatches.html +1 -1
  185. data/rdoc/RubyXL/CellXFs.html +3 -5
  186. data/rdoc/RubyXL/ChartColorsFile.html +1 -1
  187. data/rdoc/RubyXL/ChartFile.html +2 -2
  188. data/rdoc/RubyXL/ChartStyleFile.html +1 -1
  189. data/rdoc/RubyXL/ChartUserShapesFile.html +1 -1
  190. data/rdoc/RubyXL/Chartsheet.html +2 -2
  191. data/rdoc/RubyXL/ChartsheetPageSetup.html +1 -1
  192. data/rdoc/RubyXL/ChartsheetProperties.html +1 -1
  193. data/rdoc/RubyXL/ChartsheetProtection.html +1 -1
  194. data/rdoc/RubyXL/ChartsheetView.html +1 -1
  195. data/rdoc/RubyXL/ChartsheetViews.html +1 -1
  196. data/rdoc/RubyXL/Color.html +2 -2
  197. data/rdoc/RubyXL/ColorConvenienceClasses/HlsColor.html +3 -3
  198. data/rdoc/RubyXL/ColorConvenienceClasses/RgbColor.html +7 -7
  199. data/rdoc/RubyXL/ColorConvenienceClasses.html +1 -1
  200. data/rdoc/RubyXL/ColorConvenienceMethods.html +2 -2
  201. data/rdoc/RubyXL/ColorFilter.html +1 -1
  202. data/rdoc/RubyXL/ColorScale.html +1 -1
  203. data/rdoc/RubyXL/ColorSet.html +1 -1
  204. data/rdoc/RubyXL/Colors.html +1 -1
  205. data/rdoc/RubyXL/ColumnRange.html +4 -4
  206. data/rdoc/RubyXL/ColumnRanges.html +5 -5
  207. data/rdoc/RubyXL/Comment.html +1 -1
  208. data/rdoc/RubyXL/CommentList.html +1 -1
  209. data/rdoc/RubyXL/CommentsFile.html +2 -2
  210. data/rdoc/RubyXL/ConditionalFormatValue.html +1 -1
  211. data/rdoc/RubyXL/ConditionalFormatting.html +1 -1
  212. data/rdoc/RubyXL/ConditionalFormattingRule.html +1 -1
  213. data/rdoc/RubyXL/Connection.html +1 -1
  214. data/rdoc/RubyXL/ConnectionTable.html +1 -1
  215. data/rdoc/RubyXL/ConnectionTables.html +1 -1
  216. data/rdoc/RubyXL/ConnectionTextField.html +1 -1
  217. data/rdoc/RubyXL/ConnectionTextFields.html +1 -1
  218. data/rdoc/RubyXL/Connections.html +1 -1
  219. data/rdoc/RubyXL/ContentTypeDefault.html +1 -1
  220. data/rdoc/RubyXL/ContentTypeOverride.html +1 -1
  221. data/rdoc/RubyXL/ContentTypes.html +5 -5
  222. data/rdoc/RubyXL/ControlPropertiesFile.html +1 -1
  223. data/rdoc/RubyXL/CorePropertiesFile.html +10 -10
  224. data/rdoc/RubyXL/CustomColor.html +1 -1
  225. data/rdoc/RubyXL/CustomColorList.html +1 -1
  226. data/rdoc/RubyXL/CustomFilter.html +1 -1
  227. data/rdoc/RubyXL/CustomFilters.html +1 -1
  228. data/rdoc/RubyXL/CustomGeometry.html +1 -1
  229. data/rdoc/RubyXL/CustomProperties.html +1 -1
  230. data/rdoc/RubyXL/CustomPropertiesFile.html +1 -1
  231. data/rdoc/RubyXL/CustomProperty.html +1 -1
  232. data/rdoc/RubyXL/CustomPropertyFile.html +1 -1
  233. data/rdoc/RubyXL/CustomSheetView.html +1 -1
  234. data/rdoc/RubyXL/CustomSheetViews.html +1 -1
  235. data/rdoc/RubyXL/CustomWorkbookView.html +1 -1
  236. data/rdoc/RubyXL/CustomWorkbookViews.html +1 -1
  237. data/rdoc/RubyXL/CustomXMLFile.html +1 -1
  238. data/rdoc/RubyXL/DXF.html +1 -1
  239. data/rdoc/RubyXL/DXFs.html +1 -1
  240. data/rdoc/RubyXL/DataBar.html +1 -1
  241. data/rdoc/RubyXL/DataConsolidate.html +1 -1
  242. data/rdoc/RubyXL/DataConsolidationReference.html +1 -1
  243. data/rdoc/RubyXL/DataConsolidationReferences.html +1 -1
  244. data/rdoc/RubyXL/DataType.html +1 -1
  245. data/rdoc/RubyXL/DataValidation.html +1 -1
  246. data/rdoc/RubyXL/DataValidations.html +1 -1
  247. data/rdoc/RubyXL/DateGroupItem.html +1 -1
  248. data/rdoc/RubyXL/DefinedName.html +1 -1
  249. data/rdoc/RubyXL/DefinedNameExt.html +1 -1
  250. data/rdoc/RubyXL/DefinedNames.html +1 -1
  251. data/rdoc/RubyXL/DefinedNamesExt.html +1 -1
  252. data/rdoc/RubyXL/DocumentPropertiesFile.html +3 -3
  253. data/rdoc/RubyXL/DrawingFile.html +2 -2
  254. data/rdoc/RubyXL/DynamicFilter.html +1 -1
  255. data/rdoc/RubyXL/EmbeddedControl.html +1 -1
  256. data/rdoc/RubyXL/EmbeddedControls.html +1 -1
  257. data/rdoc/RubyXL/Extension.html +1 -1
  258. data/rdoc/RubyXL/ExtensionStorageArea.html +1 -1
  259. data/rdoc/RubyXL/Extents.html +1 -1
  260. data/rdoc/RubyXL/ExternalBook.html +1 -1
  261. data/rdoc/RubyXL/ExternalLinksFile.html +2 -2
  262. data/rdoc/RubyXL/ExternalReference.html +1 -1
  263. data/rdoc/RubyXL/ExternalReferences.html +1 -1
  264. data/rdoc/RubyXL/ExtraColorSchemeList.html +1 -1
  265. data/rdoc/RubyXL/FieldItem.html +1 -1
  266. data/rdoc/RubyXL/FileRecoveryProperties.html +1 -1
  267. data/rdoc/RubyXL/FileSharing.html +1 -1
  268. data/rdoc/RubyXL/FileVersion.html +1 -1
  269. data/rdoc/RubyXL/Fill.html +2 -2
  270. data/rdoc/RubyXL/Fills.html +2 -2
  271. data/rdoc/RubyXL/FilterContainer.html +1 -1
  272. data/rdoc/RubyXL/FloatNode.html +1 -1
  273. data/rdoc/RubyXL/FloatValue.html +1 -1
  274. data/rdoc/RubyXL/Font.html +3 -3
  275. data/rdoc/RubyXL/FontConvenienceMethods.html +1 -1
  276. data/rdoc/RubyXL/FontScheme.html +1 -1
  277. data/rdoc/RubyXL/Fonts.html +2 -2
  278. data/rdoc/RubyXL/Formula.html +1 -1
  279. data/rdoc/RubyXL/FunctionGroup.html +1 -1
  280. data/rdoc/RubyXL/FunctionGroups.html +1 -1
  281. data/rdoc/RubyXL/GenericStorageObject.html +4 -4
  282. data/rdoc/RubyXL/GradientFill.html +1 -1
  283. data/rdoc/RubyXL/HeaderFooterSettings.html +1 -1
  284. data/rdoc/RubyXL/Hyperlink.html +1 -1
  285. data/rdoc/RubyXL/HyperlinkRelFile.html +1 -1
  286. data/rdoc/RubyXL/Hyperlinks.html +1 -1
  287. data/rdoc/RubyXL/IconFilter.html +1 -1
  288. data/rdoc/RubyXL/IconSet.html +1 -1
  289. data/rdoc/RubyXL/IgnoredError.html +1 -1
  290. data/rdoc/RubyXL/IgnoredErrors.html +1 -1
  291. data/rdoc/RubyXL/IndexedColors.html +1 -1
  292. data/rdoc/RubyXL/InputCells.html +1 -1
  293. data/rdoc/RubyXL/IntegerNode.html +1 -1
  294. data/rdoc/RubyXL/IntegerValue.html +1 -1
  295. data/rdoc/RubyXL/LegacyCell.html +2 -2
  296. data/rdoc/RubyXL/LegacyWorksheet.html +2 -2
  297. data/rdoc/RubyXL/MRUColors.html +1 -1
  298. data/rdoc/RubyXL/MacrosFile.html +1 -1
  299. data/rdoc/RubyXL/MergedCell.html +1 -1
  300. data/rdoc/RubyXL/MergedCells.html +1 -1
  301. data/rdoc/RubyXL/NumFmt.html +1 -1
  302. data/rdoc/RubyXL/NumberFormat.html +3 -3
  303. data/rdoc/RubyXL/NumberFormats.html +2 -2
  304. data/rdoc/RubyXL/OLEObject.html +1 -1
  305. data/rdoc/RubyXL/OLEObjectFile.html +1 -1
  306. data/rdoc/RubyXL/OLEObjects.html +1 -1
  307. data/rdoc/RubyXL/OLESize.html +1 -1
  308. data/rdoc/RubyXL/OOXMLContainerObject.html +7 -7
  309. data/rdoc/RubyXL/OOXMLIgnored.html +3 -3
  310. data/rdoc/RubyXL/OOXMLObject.html +1 -1
  311. data/rdoc/RubyXL/OOXMLObjectClassMethods.html +2 -3
  312. data/rdoc/RubyXL/OOXMLObjectInstanceMethods.html +9 -10
  313. data/rdoc/RubyXL/OOXMLRelationshipsFile.html +15 -15
  314. data/rdoc/RubyXL/OOXMLTopLevelObject.html +6 -6
  315. data/rdoc/RubyXL/OdbcOleDbProperties.html +1 -1
  316. data/rdoc/RubyXL/Offset.html +1 -1
  317. data/rdoc/RubyXL/OlapProperties.html +1 -1
  318. data/rdoc/RubyXL/OleItem.html +1 -1
  319. data/rdoc/RubyXL/OleItems.html +1 -1
  320. data/rdoc/RubyXL/OleLink.html +1 -1
  321. data/rdoc/RubyXL/OutlineProperties.html +1 -1
  322. data/rdoc/RubyXL/PageMargins.html +1 -1
  323. data/rdoc/RubyXL/PageSetup.html +1 -1
  324. data/rdoc/RubyXL/PageSetupProperties.html +1 -1
  325. data/rdoc/RubyXL/Pane.html +1 -1
  326. data/rdoc/RubyXL/Parser.html +4 -4
  327. data/rdoc/RubyXL/PatternFill.html +1 -1
  328. data/rdoc/RubyXL/PhoneticProperties.html +1 -1
  329. data/rdoc/RubyXL/PhoneticRun.html +1 -1
  330. data/rdoc/RubyXL/PivotArea.html +1 -1
  331. data/rdoc/RubyXL/PivotCache.html +1 -1
  332. data/rdoc/RubyXL/PivotCacheDefinitionFile.html +1 -1
  333. data/rdoc/RubyXL/PivotCacheRecordsFile.html +1 -1
  334. data/rdoc/RubyXL/PivotCaches.html +1 -1
  335. data/rdoc/RubyXL/PivotReference.html +1 -1
  336. data/rdoc/RubyXL/PivotReferences.html +1 -1
  337. data/rdoc/RubyXL/PivotTableFile.html +1 -1
  338. data/rdoc/RubyXL/PivotTableSelection.html +1 -1
  339. data/rdoc/RubyXL/PresetGeometry.html +1 -1
  340. data/rdoc/RubyXL/PrintOptions.html +1 -1
  341. data/rdoc/RubyXL/PrinterSettingsFile.html +1 -1
  342. data/rdoc/RubyXL/ProtectedRange.html +1 -1
  343. data/rdoc/RubyXL/ProtectedRanges.html +1 -1
  344. data/rdoc/RubyXL/Protection.html +1 -1
  345. data/rdoc/RubyXL/QueryParameter.html +1 -1
  346. data/rdoc/RubyXL/QueryParameters.html +1 -1
  347. data/rdoc/RubyXL/QueryTable.html +1 -1
  348. data/rdoc/RubyXL/QueryTableDeletedField.html +1 -1
  349. data/rdoc/RubyXL/QueryTableDeletedFields.html +1 -1
  350. data/rdoc/RubyXL/QueryTableField.html +1 -1
  351. data/rdoc/RubyXL/QueryTableFields.html +1 -1
  352. data/rdoc/RubyXL/QueryTableRefresh.html +1 -1
  353. data/rdoc/RubyXL/RID.html +1 -1
  354. data/rdoc/RubyXL/RawOOXML.html +3 -3
  355. data/rdoc/RubyXL/Reference.html +34 -12
  356. data/rdoc/RubyXL/Relationship.html +1 -1
  357. data/rdoc/RubyXL/RelationshipSupport/ClassMehods.html +2 -2
  358. data/rdoc/RubyXL/RelationshipSupport.html +7 -7
  359. data/rdoc/RubyXL/RevisionPointer.html +1 -1
  360. data/rdoc/RubyXL/RichText.html +2 -2
  361. data/rdoc/RubyXL/RichTextRun.html +2 -2
  362. data/rdoc/RubyXL/Row.html +10 -10
  363. data/rdoc/RubyXL/RowExt.html +1 -1
  364. data/rdoc/RubyXL/RunProperties.html +1 -1
  365. data/rdoc/RubyXL/Scenario.html +1 -1
  366. data/rdoc/RubyXL/Scenarios.html +1 -1
  367. data/rdoc/RubyXL/Selection.html +2 -2
  368. data/rdoc/RubyXL/ShapeGuide.html +1 -1
  369. data/rdoc/RubyXL/ShapeTextRectangle.html +1 -1
  370. data/rdoc/RubyXL/SharedStringsTable.html +8 -8
  371. data/rdoc/RubyXL/Sheet.html +1 -1
  372. data/rdoc/RubyXL/SheetCalculationProperties.html +1 -1
  373. data/rdoc/RubyXL/SheetData.html +3 -3
  374. data/rdoc/RubyXL/SheetDataExt.html +1 -1
  375. data/rdoc/RubyXL/SheetDataSet.html +1 -1
  376. data/rdoc/RubyXL/SheetMetadata.html +108 -0
  377. data/rdoc/RubyXL/SheetName.html +1 -1
  378. data/rdoc/RubyXL/SheetNames.html +1 -1
  379. data/rdoc/RubyXL/Sheets.html +1 -1
  380. data/rdoc/RubyXL/SlicerCacheFile.html +1 -1
  381. data/rdoc/RubyXL/SlicerFile.html +1 -1
  382. data/rdoc/RubyXL/SmartTagProperties.html +1 -1
  383. data/rdoc/RubyXL/SmartTagType.html +1 -1
  384. data/rdoc/RubyXL/SmartTagTypes.html +1 -1
  385. data/rdoc/RubyXL/SmartTags.html +1 -1
  386. data/rdoc/RubyXL/SortCondition.html +1 -1
  387. data/rdoc/RubyXL/SortState.html +1 -1
  388. data/rdoc/RubyXL/Sqref.html +3 -3
  389. data/rdoc/RubyXL/Stop.html +1 -1
  390. data/rdoc/RubyXL/StringNode.html +1 -1
  391. data/rdoc/RubyXL/StringNodeW3C.html +3 -3
  392. data/rdoc/RubyXL/StringValue.html +1 -1
  393. data/rdoc/RubyXL/Stylesheet.html +6 -6
  394. data/rdoc/RubyXL/TableFile.html +1 -1
  395. data/rdoc/RubyXL/TableParts.html +1 -1
  396. data/rdoc/RubyXL/TableStyle.html +1 -1
  397. data/rdoc/RubyXL/TableStyles.html +1 -1
  398. data/rdoc/RubyXL/Text.html +5 -5
  399. data/rdoc/RubyXL/TextImportSettings.html +1 -1
  400. data/rdoc/RubyXL/Theme.html +4 -4
  401. data/rdoc/RubyXL/ThemeElements.html +1 -1
  402. data/rdoc/RubyXL/ThumbnailFile.html +1 -1
  403. data/rdoc/RubyXL/Top10.html +1 -1
  404. data/rdoc/RubyXL/VMLDrawingFile.html +2 -2
  405. data/rdoc/RubyXL/Variant.html +1 -1
  406. data/rdoc/RubyXL/Vector.html +2 -2
  407. data/rdoc/RubyXL/VectorValue.html +1 -1
  408. data/rdoc/RubyXL/VisualProperties.html +1 -1
  409. data/rdoc/RubyXL/WebPublishObject.html +1 -1
  410. data/rdoc/RubyXL/WebPublishObjects.html +1 -1
  411. data/rdoc/RubyXL/WebPublishingItem.html +1 -1
  412. data/rdoc/RubyXL/WebPublishingItems.html +1 -1
  413. data/rdoc/RubyXL/WebPublishingProperties.html +1 -1
  414. data/rdoc/RubyXL/WebQueryProperties.html +1 -1
  415. data/rdoc/RubyXL/Workbook.html +29 -26
  416. data/rdoc/RubyXL/WorkbookConvenienceMethods.html +63 -19
  417. data/rdoc/RubyXL/WorkbookProperties.html +1 -1
  418. data/rdoc/RubyXL/WorkbookProtection.html +1 -1
  419. data/rdoc/RubyXL/WorkbookRoot.html +6 -6
  420. data/rdoc/RubyXL/WorkbookView.html +1 -1
  421. data/rdoc/RubyXL/WorkbookViews.html +1 -1
  422. data/rdoc/RubyXL/Worksheet.html +31 -7
  423. data/rdoc/RubyXL/WorksheetConvenienceMethods.html +72 -72
  424. data/rdoc/RubyXL/WorksheetDimensions.html +1 -1
  425. data/rdoc/RubyXL/WorksheetFormatProperties.html +1 -1
  426. data/rdoc/RubyXL/WorksheetProperties.html +1 -1
  427. data/rdoc/RubyXL/WorksheetProtection.html +1 -1
  428. data/rdoc/RubyXL/WorksheetView.html +1 -1
  429. data/rdoc/RubyXL/WorksheetViews.html +1 -1
  430. data/rdoc/RubyXL/XF.html +1 -1
  431. data/rdoc/RubyXL.html +1 -1
  432. data/rdoc/created.rid +44 -44
  433. data/rdoc/index.html +3 -2
  434. data/rdoc/js/search_index.js +1 -1
  435. data/rdoc/js/search_index.js.gz +0 -0
  436. data/rdoc/table_of_contents.html +36 -2
  437. data/rubyXL.gemspec +5 -4
  438. data/spec/lib/cell_spec.rb +14 -7
  439. data/spec/lib/parser_spec.rb +22 -26
  440. data/spec/lib/reference_spec.rb +8 -2
  441. data/spec/lib/rgb_color_spec.rb +13 -2
  442. data/spec/lib/stylesheet_spec.rb +3 -6
  443. data/spec/lib/text_spec.rb +1 -5
  444. data/spec/lib/workbook_spec.rb +12 -2
  445. data/spec/lib/worksheet_spec.rb +577 -535
  446. data/spec/spec_helper.rb +2 -0
  447. data/test/test_parse_write.rb +3 -3
  448. metadata +4 -3
Binary file
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>Table of Contents - rubyXL 3.4.21</title>
7
+ <title>Table of Contents - rubyXL 3.4.24</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.21</h1>
26
+ <h1 class="class">Table of Contents - rubyXL 3.4.24</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
  &mdash;
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
+ &mdash;
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
  &mdash;
@@ -1635,6 +1644,11 @@
1635
1644
  &mdash;
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
+ &mdash;
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
  &mdash;
@@ -1855,6 +1869,11 @@
1855
1869
  &mdash;
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
+ &mdash;
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
  &mdash;
@@ -2790,6 +2809,16 @@
2790
2809
  &mdash;
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
+ &mdash;
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
+ &mdash;
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
  &mdash;
@@ -2835,6 +2864,11 @@
2835
2864
  &mdash;
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
+ &mdash;
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
  &mdash;
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.21 ruby lib
5
+ # stub: rubyXL 3.4.24 ruby lib
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = "rubyXL".freeze
9
- s.version = "3.4.21"
9
+ s.version = "3.4.24"
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 = "2022-01-30"
14
+ s.date = "2022-05-16"
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.1.6".freeze
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
@@ -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 = "2020-10-15T14:00:00Z"
57
+ expected_date = '2020-10-15T14:00:00Z'
59
58
  expected_datetime = Time.parse(expected_date).utc
60
- raw_value = "44119.583333333328" # Obtained from parsing a xlsx file with the expected date
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), "Wrong 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 "should not cause other cells with the same style to have text indent" do
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 "should properly handle numeric values" do
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
@@ -2,24 +2,23 @@ require 'spec_helper'
2
2
  require 'tmpdir'
3
3
 
4
4
  describe RubyXL::Parser do
5
-
6
5
  before do
7
- @test_sheet_name = "This is a very long sheet name that should be trimmed to 31 characters for compatibility with MS Excel"
6
+ @test_sheet_name = 'This is a very long sheet name that should be trimmed to 31 characters for compatibility with MS Excel'
8
7
  @workbook = RubyXL::Workbook.new
9
- @workbook.add_worksheet("Test Worksheet")
8
+ @workbook.add_worksheet('Test Worksheet')
10
9
  @time = Time.at(Time.now.to_i) # Excel only saves times with 1-second precision.
11
10
  @time2 = @time + 123456
12
11
 
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, "")
12
+ ws = @workbook.add_worksheet('Escape Test')
13
+ ws.add_cell(0, 0, '&')
14
+ ws.add_cell(0, 1, '<')
15
+ ws.add_cell(0, 2, '>')
16
+ ws.add_cell(0, 3, '')
18
17
 
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, "")
18
+ ws.add_cell(1, 0, '&')#TODO#.datatype = RubyXL::Cell::SHARED_STRING
19
+ ws.add_cell(1, 1, '<')#TODO#.datatype = RubyXL::Cell::SHARED_STRING
20
+ ws.add_cell(1, 2, '>')#TODO#.datatype = RubyXL::Cell::SHARED_STRING
21
+ ws.add_cell(1, 3, '')
23
22
 
24
23
  ws.add_cell(2, 0, 0)
25
24
  ws.add_cell(2, 1, 12345)
@@ -35,8 +34,8 @@ describe RubyXL::Parser do
35
34
 
36
35
  @workbook.add_worksheet(@test_sheet_name)
37
36
 
38
- @workbook.creator = "test creator"
39
- @workbook.modifier = "test modifier"
37
+ @workbook.creator = 'test creator'
38
+ @workbook.modifier = 'test modifier'
40
39
  @workbook.created_at = @time
41
40
  @workbook.modified_at = @time2
42
41
 
@@ -58,7 +57,7 @@ describe RubyXL::Parser do
58
57
  end
59
58
 
60
59
  it 'should cause an error if an xlsx or xlsm workbook is not passed' do
61
- expect {@workbook2 = RubyXL::Parser.parse("nonexistent_file.tmp")}.to raise_error(Zip::Error)
60
+ expect {@workbook2 = RubyXL::Parser.parse('nonexistent_file.tmp')}.to raise_error(Zip::Error)
62
61
  end
63
62
 
64
63
  it 'should construct consistent number formats' do
@@ -69,19 +68,19 @@ describe RubyXL::Parser do
69
68
 
70
69
  it 'should unescape HTML entities properly' do
71
70
  @workbook2 = RubyXL::Parser.parse(@file)
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(">")
71
+ expect(@workbook2['Escape Test'][0][0].value).to eq('&')
72
+ expect(@workbook2['Escape Test'][0][1].value).to eq('<')
73
+ expect(@workbook2['Escape Test'][0][2].value).to eq('>')
75
74
 
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(">")
75
+ expect(@workbook2['Escape Test'][1][0].value).to eq('&')
76
+ expect(@workbook2['Escape Test'][1][1].value).to eq('<')
77
+ expect(@workbook2['Escape Test'][1][2].value).to eq('>')
79
78
  end
80
79
 
81
80
  it 'should parse Core properties correctly' do
82
81
  @workbook2 = RubyXL::Parser.parse(@file)
83
- expect(@workbook2.creator).to eq("test creator")
84
- expect(@workbook2.modifier).to eq("test modifier")
82
+ expect(@workbook2.creator).to eq('test creator')
83
+ expect(@workbook2.modifier).to eq('test modifier')
85
84
  expect(@workbook2.created_at).to eq(@time)
86
85
  expect(@workbook2.modified_at).to eq(@time2)
87
86
  end
@@ -91,11 +90,9 @@ describe RubyXL::Parser do
91
90
  expect(@workbook2[@test_sheet_name]).to be_nil
92
91
  expect(@workbook2[@test_sheet_name[0..30]]).not_to be_nil
93
92
  end
94
-
95
93
  end
96
94
 
97
95
  describe 'parse_buffer' do
98
-
99
96
  it 'should parse string buffer correctly' do
100
97
  buffer = File.read(@file)
101
98
  expect(buffer).to be_instance_of(String)
@@ -109,7 +106,6 @@ describe RubyXL::Parser do
109
106
  f = RubyXL::Parser.parse_buffer(io)
110
107
  expect(f).to be_instance_of(RubyXL::Workbook)
111
108
  end
112
-
113
109
  end
114
110
 
115
111
  after do
@@ -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
34
  end
@@ -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 the color to string' do
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("0102ff")
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
27
  end
@@ -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
6
  expect(RubyXL::NumberFormat.new(:num_fmt_id => 1, :format_code => 'dd// yy// mm').is_date_format?()).to eq(true)
8
- end
7
+ end
9
8
 
10
9
  it 'should return true if number format = DD// YY// MM (uppercase)' do
11
10
  expect(RubyXL::NumberFormat.new(:num_fmt_id => 1, :format_code => 'DD// YY// MM').is_date_format?()).to eq(true)
12
- end
11
+ end
13
12
 
14
13
  it 'should return false if number format = @' do
15
14
  expect(RubyXL::NumberFormat.new(:num_fmt_id => 1, :format_code => '@').is_date_format?()).to eq(false)
16
15
  expect(RubyXL::NumberFormat.new(:num_fmt_id => 1, :format_code => 'general').is_date_format?()).to eq(false)
17
16
  expect(RubyXL::NumberFormat.new(:num_fmt_id => 1, :format_code => '0.00e+00').is_date_format?()).to eq(false)
18
- end
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
@@ -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("c*").force_encoding('UTF-8'))
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
@@ -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 "It should not be confused by missing sheet_id" do
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')
@@ -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