summaryrefslogtreecommitdiffhomepage
path: root/test
AgeCommit message (Collapse)Author
2022-02-07Merge branch 'master' into feature/manageable-scatter-markersOleg Yakovenko
2022-02-06Allow border style to accept an Array (#117)Weston Ganger
Co-authored-by: Noel Peden <[email protected]>
2022-02-06Autowidth cell calculation is now configurableTobias Egli
On the workbook you can now configure the font_scale_divisor and the bold_font_multiplier to get better results for the automatic cell width calculationb
2022-02-05Merge branch 'master' into improve_range_errorNoel Peden
2022-01-28Fix invalid xml when pivot table created with more than one column in data fieldWeston Ganger
2022-01-21Check string encoding for validity _and_ valueDan DeBruler
2021-12-29Fix Worksheet#name_to_cell bug which returned reversed row/col indexesWeston Ganger
2021-12-28Return output stream in binmodeDan DeBruler
2021-07-25Fix gap width validator for bar charts (#108)Zsolt Kozaroczy
`gap_width` and `gap_depth` now allow only integers in the range of 0–500. The previous behaviour (requiring a percentage value) was according to the current version of the OOXML spec, but Excel seems to rely on an older version, where the gap amount was required to be a simple integer. Also, `gapDepth` is only allowed in 3D bar charts, so it is now no longer available for 2D bar charts.
2021-07-24Add overlap to bar charts (#107)Zsolt Kozaroczy
2021-04-26Add option to define a series color for the BarSeries (#81)Zsolt Kozaroczy
2021-03-27Replace mimemagic with marcel (#95)Jorne Kandziora
Mimemagic requires users to download or install additional files. Rails used Marcel as an abstration layer on this library. Marcel was updated to another file matching database. Following Rails in this matter will remove the need for users to do additional work, just to use caxlsx.
2021-03-27Fix testStefan
The styles need to actually exist, otherwise the test fails with “ArgumentError: Invalid cellXfs id”.
2021-03-19Implement :offset option for worksheet#add_row (#87)Agustin Gomez
2021-03-19Add support for format in pivot tables (#79)Knut I. Stenmark
2021-03-01feature: spec cleanupOleg Yakovenko
2021-03-01feature: marker symbol management for scatter seriesOleg Yakovenko
2021-03-01feature: scatter series should respect marker preference of parent chartOleg Yakovenko
2021-02-17Merge pull request #57 from rylwin/change-serialize-signatureNoel Peden
Deprecate using `#serialize` with boolean argument
2021-02-12Merge pull request #77 from rfdonnelly/fix-special-char-in-table-headerNoel Peden
Fix special characters in table header
2021-02-03Simplify test for special characters in table headerRob Donnelly
2021-02-03Add test for special characters in pivot table cache definitionRob Donnelly
2021-02-03Add test for special characters in table headerRob Donnelly
2021-01-05Merge pull request #71 from artplan1/add-date-typeNoel Peden
Allow to set cell type to `date`
2021-01-05Merge pull request #70 from chi-deutschland/fix-worksheet-title-length-ruleNoel Peden
Fix worksheet title length enforcement
2020-12-10Fix calculation of worksheet name lengthLuka Lüdicke
- The previous change caused unnecessary issues - We approximate that Excel calculates the character length with UTF-16 - Fixes https://github.com/caxlsx/caxlsx/issues/67
2020-12-10Delete redundant worksheet name too long testLuka Lüdicke
2020-12-03Extend cell_type_from_value with sanity checksToms Mikoss
2020-11-27Add casting to dateArtem Kozaev
Add tests
2020-11-26Group worksheet name tests togetherLuka Lüdicke
Opposes a redundant test
2020-09-11Restructure examples folder (#47)Zsolt Kozaroczy
Split examples into separate markdown files, each containing a description, sample code, and a screenshot of the resulting xlsx document. The script `generate.rb` is provided to actually generate the example documents by executing the sample code contained in the markdown files.
2020-08-29Avoid warning when using `capture_warnings` more than onceRyan Winograd
2020-08-29Update #serialize to accept 3 argumentsRyan Winograd
2020-08-29Assert how contents are zippedRyan Winograd
Previously we tested that either rubyzip or shelling out to zip produced the expected xlsx file, but we never explicitly checked whether rubyzip or shell zip was used. I noticed that rubyzip always sets a far future date, whereas `zip` uses today's date. I'm using this as a heuristic to determine which zip method was used.
2020-08-24Explosion explosion fixed - issue 58Noel Peden
2020-08-20Actual fix for older rubiesRyan Winograd
2020-08-20Fix for older rubies?Ryan Winograd
2020-08-20Deprecate using `#serialize` with boolean argumentRyan Winograd
Update `Axlsx::Package#serialize` to accept the second argument as a boolean (being deprecated) or an options hash. In order to transition toward using keyword arguments for `Axlsx::Package#serialize`, change the documented method signature to an options hash, while still parsing the second argument as `confirm_valid` if a boolean is provided (in which case we also warn the user that a boolean argument is deprecated).
2020-08-19Add option to `#serialize` with system zip commandRyan Winograd
Add a `:zip_command` option to `Axlsx::Package#serialize` that allows the user to specify an alternate command to use to perform the zip operation on the XLSX file contents. The default zip operation is provided by RubyZip. On large documents users may experience faster zip times using a zip binary. Resolves #55
2020-08-19Remove unnecessary rescue in testsRyan Winograd
Back in `1e5388ce`, a rescue block was added to `#test_serialization` to prevent the test from breaking on boxes where the file system is not writable. This extra protection doesn't seem necessary anymore, so we are removing the protection in favor of letting the test error in this case.
2020-07-27Fix type detection for floats with out-of-rage exponents (#54)Stefan Daschek
Prior to this change, strings like "1e12345" would be interpreted as float values, regardless of the actual value of the exponent (which easily could be out of range for Ruby). In case the exponent was greater than `Float::MAX_10_EXP` (usually 308), this would result in a cell of type `:float` containing the literal string `"Infinity"`. Excel can not parse such cells and therefore gives a “corrupt data” error. In case the exponent was less than `Float::MIN_10_EXP` (usually -307) the cell would contain `0.0`. This does not result in Excel throwing an error, but probably isn't the expected result either. Note that this problem is quite likely to happen when creating a worksheet with hexadecimal strings, because e.g. "1234e567" is a perfectly valid hex value. The additional range check of the exponent introduces a slight performance overhead, so I decided to split the code path: I presume parsing floats with exponents < 100 (or no exponents at all) is way more common, so this code path behaves exactly like before. Only in the case of a 3 digit exponent the additional range check is introduced.
2020-07-14Set column width to the maximum allowed value (#53)Sergey Ponomarev
Maximum column width limit in MS Excel is 255 characters https://support.microsoft.com/en-us/office/excel-specifications-and-limits-1672b34d-7043-467e-8e27-269d656771c3 If this value is exceeded, MS Excel gets stuck and doesn't allow column resizing.
2020-02-13Improve cell string_autowidth calculations (#44)Weston Ganger
Previously, cells with autowidth sometimes were too narrow for the content to fit. The original width calculation tried to take the difference between narrow and wide chars into account, but it didn’t work out very well. The new calculation is simpler. Compared to the previous implementation it results in cells being slightly wider in most cases.
2019-12-29Escape special characters in charts (#40)Zsolt Kozaroczy
Fixes #37
2019-12-20Add option to protect against formula injection attacks (#34)Gabriel Morcote
Caxlsx used to treat cell values beginning with an equal sign as formula by default. This can be dangerous if the input data is user generated or coming from other untrusted sources (see https://www.owasp.org/index.php/CSV_Injection for details). This commit adds a new option `escape_formulas` that can be used with `#add_row` and on instances of `Cell`. If set to true, cell values beginning with an equal sign are treated as normal strings (and will be displayed literally by Excel and co.)
2019-12-17Check size in bytes as opposed to string sizeIan Clarkson
- `size` returns length in characters, but doesn't factor in multibyte Unicode characters. By switching to `bytesize`, we check the relevant measure of how many bytes the worksheet name is. - Fixes https://github.com/randym/axlsx/issues/588 - Copy of PR against original axlsx (https://github.com/randym/axlsx/pull/589)
2019-10-29fix validate document with font option underlineAli Mujtaba
2019-10-02Cache relationship in Hash rather than in Array.Vladimir Kochnev
Also cacle only ids, not entire instances.
2019-10-02Fix Relationship.instances cache.Vladimir Kochnev
This PR aims to fix several issues with Relationship cache: 1) It's not threadsafe, so I propose to use a TLS variable for this. 2) Memory obtained by cache remains non-freed before the next run of `serialize`. I think it should be freed immediately. 3) Memory should be freed in `ensure` block to prevent memory bloating in case of exception. *There are only two hard things in Computer Science: cache invalidation and naming things.*
2018-02-08chore(coverage): 100% coverage, 100% docsrandym