Draft
Conversation
… and add CorMap p-value support
… to Guinier data model and UI. Update ViewerModel to handle empty data more robustly and ensure proper data binding in SASBDBDialog. Adjust UI elements for clarity and consistency.
- Introduced a new button in the Guinier tab to estimate values using FreeSAS for 1D datasets. - Updated the dialog to accept optional 1D data for Guinier analysis. - Modified the UI to allow manual entry of Guinier values, enhancing user flexibility. - Adjusted documentation to reflect changes in the Guinier tab functionality and user instructions. - Removed automatic population of Guinier fields; users can now choose to estimate or enter values manually.
- Updated the dialog fixture to include new fields: experimental_molecular_weight, experiment_date, and beamline_instrument. - Ensured all required fields for validation are present to prevent CI hangs during headless testing. - Integrated qtbot for better widget management during tests.
- Added type checking in SASBDBExporter to ensure only Data1D or Data2D objects are processed for export. - Updated SASBDBDialog to handle cases where filesWidget may be None, improving error handling. - Refactored unit tests for SASBDBDialog to use QWidget instead of MagicMock for parent, ensuring more realistic testing scenarios. - Improved test coverage for exporting functionality and handling of FreeSAS integration.
- Enhanced the test cases to ensure proper cleanup of dialog parent to prevent runtime errors during teardown. - Wrapped dialog parent assignments and method calls in try-finally blocks to ensure dialogs are orphaned correctly. - Improved exception handling in tests to gracefully manage scenarios where filesWidget or other components may be None.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This work adds and refines the SASBDB export flow in SasView: collect session, fit, sample, and instrument data; review it in a multi-tab dialog; export JSON files, a PDF report, and a SasView project snapshot.
Documentation
sasbdb_help.rstupdated for the dialog, Guinier/Estimate, Generate Report, and supported shape models (substring-based routing in code).Dependencies
freesas): optional; needed only for Estimate. If unavailable, the user gets a clear message.How Has This Been Tested?
SASBDBDialogTest,SASBDBTest, and related qtgui tests (CI /run_tests.shorrun_tests.batas appropriate).freesasinstalled; confirm messages and fields when it succeeds.Review Checklist
sasbdb_help.rst) matches the UI (Generate Report, Guinier/Estimate).SASBDBDialogUI.uichanges are built intoSASBDBDialogUI.pyviaconvertUI.py(or the project UI build step).Documentation (check at least one)
Installers
Licensing (untick if necessary)
Note:
Added Cursor rules (sasview.mdc) probably deserves a separate PR but keeping it here for the reference