Skip to content

Conversation

sequba
Copy link
Contributor

@sequba sequba commented Sep 1, 2025

Context

I added a testing tool that uses formulas and calculated values stored in the XLSX files to check the correctness of the HF calculations.

I also added five xlsx data files for testing. They are relatively simple; we should add more complex data in the future.

This compatibility testing tool performs the following steps for each .xlsx in test_data/ directory:

  1. read both formulas and calculated values from the XLSX file
  2. evaluate the formulas using HyperFormula
  3. compare the HyperFormula's results against the original values
  4. report differences

How did you test your changes?

  • testing tool run locally
  • testing tool run in CI

Types of changes

  • Breaking change (a fix or a feature because of which an existing functionality doesn't work as expected anymore)
  • New feature or improvement (a non-breaking change that adds functionality)
  • Bug fix (a non-breaking change that fixes an issue)
  • Additional language file, or a change to an existing language file (translations)
  • Change to the documentation

Related issues:

  1. Fixes Compatibility testing: comparing calculation results of HF vs other spreadsheets #911

Checklist:

  • I have reviewed the guidelines about Contributing to HyperFormula and I confirm that my code follows the code style of this project.
  • I have signed the Contributor License Agreement.
  • My change is compliant with the OpenDocument standard.
  • My change is compatible with Microsoft Excel.
  • My change is compatible with Google Sheets.
  • I described my changes in the CHANGELOG.md file.
  • My changes require a documentation update.
  • My changes require a migration guide.

@sequba sequba changed the title Feature/issue-911 WIP: Testing compatibility of HF with Excel and Sheets Sep 1, 2025
@sequba sequba self-assigned this Sep 1, 2025
@github-actions
Copy link

github-actions bot commented Sep 15, 2025

Performance comparison of head (dc9205d) vs base (dfabda5)

                                     testName |   base |   head |  change
-------------------------------------------------------------------------
                                      Sheet A | 509.86 | 535.35 |  +5.00%
                                      Sheet B | 166.27 | 181.68 |  +9.27%
                                      Sheet T | 147.62 | 155.44 |  +5.30%
                                Column ranges | 511.46 | 541.03 |  +5.78%
Sheet A:  change value, add/remove row/column |  14.14 |  16.98 | +20.08%
 Sheet B: change value, add/remove row/column |  126.1 |    154 | +22.13%
                   Column ranges - add column | 156.01 | 170.03 |  +8.99%
                Column ranges - without batch |    495 | 500.33 |  +1.08%
                        Column ranges - batch | 123.98 | 121.97 |  -1.62%

@sequba sequba marked this pull request as ready for review September 30, 2025 11:26
@sequba sequba marked this pull request as draft September 30, 2025 11:28
@sequba sequba marked this pull request as ready for review September 30, 2025 11:28
@sequba sequba changed the title WIP: Testing compatibility of HF with Excel and Sheets Testing compatibility of HF with Excel and Sheets Sep 30, 2025
@sequba sequba requested a review from qunabu September 30, 2025 11:47
@sequba sequba merged commit 94d563b into develop Oct 6, 2025
25 checks passed
@sequba sequba deleted the feature/issue-911 branch October 6, 2025 08:42
@codecov
Copy link

codecov bot commented Oct 6, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 97.22%. Comparing base (dfabda5) to head (dc9205d).
⚠️ Report is 1 commits behind head on develop.

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff            @@
##           develop    #1537   +/-   ##
========================================
  Coverage    97.22%   97.22%           
========================================
  Files          169      169           
  Lines        14523    14523           
  Branches      3169     3169           
========================================
  Hits         14120    14120           
  Misses         396      396           
  Partials         7        7           
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants