Crzyrndm
e183e37ae6
remove roundoff test, add test for exponential representations
...
-- testing that a number with >15 significant digits rounded off to 15 failed on all tested platforms
2018-08-25 14:06:20 +12:00
Crzyrndm
1003ba507d
Add a test for serialize_number_to_string
...
-- should allow serialisation of up to 15 significant digits
-- don't use default stringstreams, typically only get ~6 significant digits
2018-08-25 13:54:54 +12:00
Crzyrndm
875f143d74
fix parameter ordering inconsistency that could cause switching the parameters to give different results
2018-08-25 13:31:16 +12:00
Crzyrndm
4188d35caf
Add tests for the other small utilities
2018-08-19 15:11:57 +12:00
Crzyrndm
9565377963
Adding tests for xlnt::detail::float_equals
...
-- Plenty of comments which should be useful if it becomes useful to tweak the comparison
2018-08-19 14:41:00 +12:00
Crzyrndm
94fd22f492
Merge pull request #321 from Crzyrndm/Issue#282
...
Don't set comment size on explicit comment overload
2018-08-05 13:05:54 +12:00
Crzyrndm
2d2f825f64
tests for the const iterators as well
2018-08-05 12:55:33 +12:00
Crzyrndm
dc7f369be9
Add relative urls to the valid hyperlink url set
2018-08-04 14:55:17 +12:00
Crzyrndm
4124dd78e0
Add tests, fix compile error (missing include)
2018-07-29 14:27:49 +12:00
Crzyrndm
d39b7a107a
comment default size only set in the overloads which can't set size
...
- Debatable whether position should receive the same treatment
2018-07-28 13:55:56 +12:00
Thomas Fussell
cbe50f4681
Fix some issues after merge
2018-07-23 00:13:20 -04:00
Thomas Fussell
0af7ad88e1
Merge branch 'tasmail-master-shared-strings-performance' into dev
...
remove less than comparators
fix conflicts
2018-07-23 00:10:16 -04:00
Crzyrndm
b004d0863c
address CI build failure
...
Issue #300
Previous CI fix didn't work, try with type aliasing instead
Issue #300
This reverts commit c87c0e3975
.
gcc 6 ok, msvc 14 choked
Issue #300
noexcept(condition) doesn't seem to work on msvs 2015
Issue #300
Merge remote-tracking branch 'origin/dev-optional-no-default-ctor' into dev-resolve-simple-issues
ensure uniqueness (uglify) and undefine compatibility macro
2018-07-21 12:19:15 +12:00
Crzyrndm
07d648fe8b
Implementation of optional using std::aligned_storage
...
Issue #300
-- test for no default constructor required enabled
-- Passes all tests locally
2018-07-21 12:19:15 +12:00
Crzyrndm
ad69e7bf11
test for overloaded operator=(T)
...
Issue #300
2018-07-21 12:19:14 +12:00
Crzyrndm
eda102ee9d
testing current optional implementation against target behaviour
...
Issue #300
-- NOTE: construction from no_default currently wont compile so is commented out (L:113)
-- NOTE: dll import/export of template classes is probably unnecessary (the header is already required) and doesn't work in the general case (explicit instantiations are required for at least MSVC)
2018-07-21 12:19:14 +12:00
Crzyrndm
761eee3e5f
Merge pull request #314 from Crzyrndm/dev-CI-build-modifications-PR
...
Travis CI improvements
Resolves #147
2018-07-21 12:04:56 +12:00
Crzyrndm
4dae88f004
Merge pull request #311 from Crzyrndm/dev-unimplemented-functions-PR
...
Implementations for unimplemented functions
2018-07-21 11:31:25 +12:00
Crzyrndm
0aee6fd9b1
Cleanup some cmake modifications
2018-07-16 19:41:40 +12:00
Crzyrndm
b9b47672ea
cxx_std_14 and co aren't available until cmake v3.8
2018-07-16 18:52:21 +12:00
Crzyrndm
5671167d1d
add cmake option XLNT_CXX_LANG to set the targetted cxx standard
...
- valid options are 11, 14, and 17
- default is 14
- cmake will error if an invalid value is provided
- requires cmake >= 3.10.* to take effect in visual studio
2018-07-15 21:23:22 +12:00
Crzyrndm
ddab6551b0
Add tests for functionality added to implement declared functionality
2018-07-13 17:14:07 +12:00
Crzyrndm
03020cc793
improved hyperlink implementation
...
- hyperlinks to cells and ranges are complete
- hyperlink::display is now set as well as the cell value (in excel these can be different)
-- if a cell is empty, display is equal to value text
-- if a cell has a value, display can be just about anything
- This version copies excel in that display is completely ignored once value is set
- All hyperlink tests are now part of the cell test suite (not the worksheet test suite which the majority were previously located)
2018-07-13 17:14:07 +12:00
Crzyrndm
ec02121c15
Add debug output for a relationship mismatch
2018-07-13 12:43:21 +12:00
Crzyrndm
53c193433f
Ensure worksheets get a unique internal filename
...
Issue #279
2018-07-13 12:43:20 +12:00
Crzyrndm
24b4b6c628
declaration/definition switched files
...
For some reason, the declaration was in the source file. Don't ask why, I don't know
2018-07-13 11:43:13 +12:00
Crzyrndm
54b1affd1e
Merge remote-tracking branch 'upstream/dev' into dev-test-suite-improvements
...
# Conflicts:
# tests/workbook/workbook_test_suite.cpp
2018-07-13 11:38:56 +12:00
Crzyrndm
1ab25fa7fc
Merge branch 'dev' into dev-Issue298
2018-07-13 11:21:13 +12:00
Crzyrndm
cffb1ce345
restart CI
2018-07-10 14:12:26 +12:00
Crzyrndm
0e69ea95bf
fix build errors, fix warning about pragma once in source file
2018-07-10 13:43:16 +12:00
Crzyrndm
bf5105f0a3
fix static initialisation order issues causing the tests vector to get reset
2018-07-10 13:37:34 +12:00
Crzyrndm
4afc0963c6
add post (in/de)crement tests
2018-07-10 12:41:00 +12:00
Crzyrndm
b95919323d
add more tests for worksheet iterator, add operator--
...
* operator-- completes the naive bidirectional iterator requirements
* tests for various construction and assignment behaviours
* tests for iteration and dereferencing behaviours
2018-07-10 12:40:56 +12:00
Crzyrndm
51545734e8
Cleanup and remove <xlnt/xlnt.hpp>
2018-07-05 21:26:29 +12:00
Crzyrndm
03a56d8af9
Change all test headers to source files with related modifications
...
Issue #299
2018-07-05 20:47:24 +12:00
Crzyrndm
a7b167032b
Modifications to test suite to support test auto-registration
...
Issue #299
2018-07-05 20:46:32 +12:00
Crzyrndm
a8fa6637fe
fix workbook::operator== always returning false, add tests for workbook::load
...
workbook::operator== was comparing the value of the raw pointer held by two std::unique_ptr's. By definition, this is always false in a well behaved program (if it's true, things go bang...). This then led to adding equality operators to nearly every other struct/class in xlnt to support workbook::operator==
workbook::load and the non-default ctors for loading data from a file are tested using the now functional equality operator
NOTE: a large number of copy ctors need updates/fixing. Many should be defaulted
2018-07-03 14:05:07 +12:00
Crzyrndm
4eecf84713
add simple test for cell::column_index
2018-07-03 13:16:33 +12:00
Crzyrndm
d2d0c2ab55
Serialisation of sheetPr and printOptions elements
2018-06-24 14:02:01 +12:00
Crzyrndm
93323f334d
Basic pageSetup persistence
...
-- NOTE: The struct page_setup doesn't currently reflect the attributes of the pageSetup element
2018-06-24 12:34:56 +12:00
Crzyrndm
7820ac548f
re-save custom_heights_widths.xlsx, add defaultColWidth sheet attribute
...
-- custom_heights was the only test sheet where the integral value was being saved with a trailing ".0"
-- Updated tests to expect the new values
-- added the new property "defaultColWidth"
2018-06-24 11:53:45 +12:00
Crzyrndm
1066b1007c
Fixed another embedded unicode sequence
2018-06-18 23:01:15 +12:00
Crzyrndm
15b3bd1b53
unicode escape sequence for libre office pwd
...
-- to encode: copy the string into unicodelookup.com. Take the hex representation and pad to 4 characters with '0's, prefixing each character with '\u'
2018-06-18 22:40:26 +12:00
Crzyrndm
9bbebe5fdd
Add __LINE__ to test assert failed messages
2018-06-18 22:40:25 +12:00
Crzyrndm
bd90cc4786
add brackets to macro expressions to ensure expected expansion results
2018-06-18 22:40:25 +12:00
Crzyrndm
6d16ffaddf
Final test report now includes the test failure message
2018-06-18 22:40:25 +12:00
Crzyrndm
cfef764ab9
Add exception message and test name to std::cout when a test fails
...
-- '*' doesn't help much when debugging
2018-06-18 22:40:25 +12:00
Crzyrndm
92ae444791
round trip unicode test had the same embedded encoding issue
2018-06-18 22:40:25 +12:00
Crzyrndm
fa2b20da99
fix encoding issues with unicode file test
...
-- unicode string literals don't seem to work in an obvious way. Embedding the encoding using the \u escape sequences (https://en.wikibooks.org/wiki/Unicode/Character_reference/0000-0FFF )
2018-06-18 22:40:24 +12:00
Crzyrndm
fc7c69a724
Base selection on Excel behaviour
...
-- sqref is a block of selected cells containing the active_cell (normally is just == active_cell)
-- active cell is the selected vell in this selection/view/pane
-- inactive selections use the top-left cell as the active_cell
2018-06-18 22:40:24 +12:00
Crzyrndm
6f13002ac6
set selection::sqref in freeze_panes
...
-- NOTE: It doesn't seem likely that these should be 'A1' in all cases (set to 'A1' because current tests demanded it). Purpose of this parameter needs clarification
-- NOTE: [xlnt::selection] needs appropriate ctor's once the purpose of the parameters can be clarified
2018-06-18 22:40:24 +12:00
Crzyrndm
b4e7832419
Fixes to cell hyper links
...
-- additional tests to cover both variants of the set function
-- additional tests to cover hyper links on cells with non-string data
-- modified hyper link set function to handle cells with non-string data
-- fixed test behaviour for a cell with no value (value is set to the string form of the link. Behaviour copied from Excel 2010)
2018-06-18 22:40:24 +12:00
Crzyrndm
04c0b4a1ca
Fix issues with the worksheet "title" setter.
...
-- Resolves two test failures caused by a crash when setting the title to the existing value removing the sheet from the 'sheet_title_rel_id_map_'
-- added empty title check
2018-06-18 22:40:23 +12:00
Thomas Fussell
e350a7734d
implement abspath and archid flags, fixes some serialization problems
2018-05-28 23:13:57 -04:00
Thomas Fussell
50850ffb8a
work on round-tripping for #230
2018-04-24 17:58:17 -04:00
Thomas Fussell
617f7a2525
improve hyperlinks and style round tripping
2018-03-21 09:03:37 -04:00
Thomas Fussell
410e73d594
work on hyperlinks, x14 extentions, other round tripping silliness
2018-03-16 21:21:16 -04:00
Thomas Fussell
2426215801
implement sheet view serialization
2018-03-14 20:12:07 -04:00
Andrii Tkachenko
467dc860c6
Visual Studio 2015 build files for Win32/x64 configurations. Very first working version.
2018-02-14 06:22:33 +01:00
Thomas Fussell
0f0d3de75f
implement sheetFormatPr, x14ac:dyDescent, reordering workbook rels so sheets come first after insertions
2018-01-26 14:32:00 -05:00
Thomas Fussell
90633d0e8e
copyright year bump (2018)
2018-01-22 09:38:48 -05:00
Thomas Fussell
c960453ff4
prevent supression of failing round-trip tests
2017-12-10 15:03:03 -05:00
Thomas Fussell
c4a2bb8c6d
Revert "add row height and column width serialization tests"
...
This reverts commit dc4befd867
.
2017-10-30 19:53:39 -04:00
Thomas Fussell
470c655df6
fix empty row height/cell width, #235
2017-10-30 19:36:24 -04:00
Thomas Fussell
dc4befd867
add row height and column width serialization tests
2017-10-30 17:23:14 -04:00
Thomas Fussell
06b315b352
add interface to worksheet and range for clearing cells entirely, not just their values, for #232
2017-10-26 13:45:56 -04:00
Thomas Fussell
0e0bf0f8a1
continue work on #230 , improves style/xf handling
2017-10-26 12:54:54 -04:00
Thomas Fussell
75de03745b
start fixing serialization for #230
2017-09-28 08:55:16 -04:00
Thomas Fussell
e910666c56
include missing header in path_helper
2017-09-27 17:35:35 -04:00
Thomas Fussell
919c65ceea
Merge pull request #229 from downwash/master
...
Fix for issue #228 : Worksheet ID is not always unique
2017-09-27 17:32:40 -04:00
vervbe
c05b9f33c1
Fix for issue #228 : Worksheet ID is not always unique
...
- Worksheet ID now generated from the maximum of existing IDs
- Worksheet ID no longer copied from existing sheet
- Added tests
2017-09-26 08:33:06 +02:00
Thomas Fussell
b2adee9fd3
implement upper case date/time handling, closes #221 , closes #222 , related to #220
2017-09-13 10:47:18 -04:00
Thomas Fussell
f27df9732c
add option to enable linking with static C runtime when compiling with MSVC, #214
2017-09-13 10:20:51 -04:00
Thomas Fussell
81812d6e29
implement sheet view selection consumption, closes #164
2017-09-13 09:36:42 -04:00
Thomas Fussell
9d71dda531
ensure only exceptions derived from xlnt::exception are thrown by library code plus some minor code cleanup, closes #163
2017-09-13 08:48:22 -04:00
Thomas Fussell
396e6eb948
fix clang warnings
2017-09-08 22:59:19 -04:00
Thomas Fussell
12007fe2d8
change cell numeric value type from long double to double, closes #201
2017-09-08 21:05:34 -04:00
Thomas Fussell
7d0cf59286
correct off-by-one error in range dimension calculation, closes #213
2017-09-08 20:47:10 -04:00
Thomas Fussell
7ed14246b2
clean up cmake files and add d suffix to xlnt debug library, closes #214
2017-09-08 14:33:18 -04:00
Thomas Fussell
b7677d0783
disable stdout in serialization test
2017-09-08 13:58:50 -04:00
Thomas Fussell
0ac12101fc
remove accidental commit of test test
2017-08-18 21:38:53 -04:00
Thomas Fussell
de0e010056
use pybind11 instead of raw C Python API, python_streambuffer is broken for now
2017-07-30 09:48:57 -07:00
Thomas Fussell
eaaa310cef
start implementing xlsx2arrow params
2017-07-19 17:21:55 -07:00
Thomas Fussell
f97ad6c1bd
start working on streaming write
2017-07-04 17:52:46 -07:00
Thomas Fussell
da8fdf6667
remove thousands separator
2017-07-02 19:15:42 -07:00
Thomas Fussell
d7b5374614
fix accidental commit of test file path
2017-06-25 13:14:56 -04:00
Thomas Fussell
56d744b6f9
start cleaning up code
2017-06-25 09:29:45 -04:00
Thomas Fussell
6f716c6e89
work on streaming cell reading, using ugly copy-pasted code for now [ci
...
skip]
2017-06-24 11:39:48 -04:00
Thomas Fussell
d7e7526beb
add failing tests and begin restructuring worksheet reading [ci skip]
2017-06-17 10:53:37 -04:00
Thomas Fussell
d2be054b7c
optimize shared strings and handle formula strings correctly
2017-05-10 08:44:25 -04:00
Thomas Fussell
237fdcc84b
ignore missing calcChain when comparing xlsx files during testing
2017-05-08 11:40:01 -04:00
Thomas Fussell
f32859b257
stop trying to read generated agile encryption info xml for now since it's not valid
2017-05-03 12:16:18 -04:00
Thomas Fussell
239c76659f
work on writing a valid compound document
2017-05-02 22:22:22 -04:00
Thomas Fussell
ee642fc6c1
getting there
2017-04-30 20:21:47 -04:00
Thomas Fussell
b7bf16d47c
implement input and output streambufs for compound document streams
2017-04-30 17:23:28 -04:00
Thomas Fussell
f42d3eee74
move vector_streambuf definitions to a separate file, fix zip buffer bug
2017-04-29 12:29:41 -04:00
Thomas Fussell
f5b5d67594
wip
2017-04-28 17:56:05 -04:00
Thomas Fussell
be37df3c86
intermediate commit
2017-04-28 12:42:42 -04:00
Thomas Fussell
6334907de7
work on short streams
2017-04-28 10:58:55 -04:00
Thomas Fussell
a90b32f386
switch to full in-memory approach, still working
2017-04-26 23:19:28 -04:00