Speed up execution of formulas with whole-column area reference
The previous change via r1894675 did not fully solve this as
it only took place when more than one sheet were used.
There were still some cases where evaluating formulas needed
to iterate across a huge number of non-existant rows, e.g.
TestVLookup, which took more than 1 minute locally.
However doing the lowering of row-numbers always would trigger
test-regressions as some Excel-functionality depends on actions
being possible on rows larger than current "last row" in the sheet.
Thus changed this to a slightly different approach which only adjusts
last-row when it is at or above the workbook-limit of rows
Execution of TestVLookup is now at 1-2 seconds!
Also added a test-case to verify details of the implementation now.
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1899533 13f79535-47bb-0310-9956-ffa450edef68
Use a modified version of NullPrintStream in integration tests
The default version from Commons-IO does not avoid doing
utf-8 conversion and other work, so it is not well suited for
cases where lots of output happens.
Using an optimized version can bring down runtime of integration-tests
somewhat, especially for large files where XLS2CSV prints out lots of
data
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1899532 13f79535-47bb-0310-9956-ffa450edef68
poi-ooxml-lite: Check in list of classes and xsb-files to avoid the jar-to-test dependency
Avoid running all tests whenever building jars as tests take a long time now
and also cause large memory allocations.
It is nice if the target "jar" is as fast as possible and the list of included
items for ooxml-lite only changes rarely anyway.
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1899160 13f79535-47bb-0310-9956-ffa450edef68
Print unexpected exceptions to stdout instead of silently ignoring them
Don't include classes created via Mockito
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1899159 13f79535-47bb-0310-9956-ffa450edef68
One test stores and deletes files named "-saved.xls", so
we need to prevent other tests from reading those
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1899077 13f79535-47bb-0310-9956-ffa450edef68
Fix issues found when fuzzing Apache POI via Jazzer
Throw RecordFormatException instead of NPE or assertion for
cases that can be triggered by a malformed document
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1899073 13f79535-47bb-0310-9956-ffa450edef68
Bug 65854: Use revert() instead of close() when OPCPackage is opened read-only
Also add tests, however it is not possible to verify that no
logging takes place, so you have to use debugging to verify it.
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1899071 13f79535-47bb-0310-9956-ffa450edef68
Fix issues found when fuzzing Apache POI via Jazzer
Replace assertions with actual checks when input-data
can trigger them. We would not handle such
input-data properly otherwise.
Sometimes logging seems a better option if the issue
is not blocking us from parsing the document anyway
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1899070 13f79535-47bb-0310-9956-ffa450edef68