Bring changes from v7.12.0.7 to main - #8378
Conversation
|
@coderabbitai review --dir ./specifyweb/specify |
|
✅ Action performedReview finished.
|
I think ideally we should a take more black-box focused approach to testing. That is: test the result or output of the functions (or any composition/aggregation of functions, such as the complete run_key_migrations suite) rather than implementation specifics such as which functions get called in which order. Ultimately, it's the result that matters here and I think these tests that worry about the implementation might lead to more harm than good (e.g., everytime the implementation or "wrapper" for the functionality changes then the tests have to be changed). Also see #8225 (review)
v7.12.0.7 into mainv7.12.0.7 to main
g1rly-c0d3r
left a comment
There was a problem hiding this comment.
Testing instructions
These steps are taken from the v7.12.0.7 testing checklist, with the step for #8181 ommitted as
- Ensure the testing instructions succeed from #8243
- Ensure the testing instructions succeed from #8181
- At the time of writing, the attachment relationships should be disabled
Creating a new Database using Guided Setup
Discipline Verification Steps (These are referred to in the below General Testing Instructions)
- Verify all trees are present and populated with the correct data
- Generally ensure entries in the Schema Config are correct
- Make sure Tables and Fields have sensible default labels and descriptions
- Ensure that fields and tables
- Verify picklists are created in each Collection and have the correct values
- Verify picklists that should be associated with a field are correctly associated (some examples of relationships are provided below)
- Preparation -> prepType
- Discipline -> type
- CollectionObjectGroup -> cogType
- Ensure Schema Configuration changes are persistent
- Make changes to the Discipline's schema in the Schema Config (editing the label/description of tables and fields, modifying a table or field's visibility, changing a field's picklist, etc.)
- Completely stop the Specify instance
- Restart the Specify instance
- On the Test Panel, the above can be accomplished by Removing an instance from the test panel (do not delete/remove the database!) and re-adding the instance to force a restart
- Ensure the modifications you made are persistent and still present
- Ensure Tree Configuration changes are persistent
- Rename, add, and/or remove one or more ranks to one or more Trees
- Completely stop the Specify instance
- Restart the Specify instance
- Ensure the tree configuration changes are persistent and still present
General Testing Instructions
- Using Guided Setup, create a Specify instance with any non-geology (i.e., biology) discipline and populate trees with defaults
- Ensure the Discipline passes the above Discipline Verification Steps
- Using Guided Setup, create a Specify instance with a Geology discipline and populate trees with default values
- Ensure the Discipline passes the above Discipline Verification Steps
- Create a new non-geology Discipline and Collection to an existing Specify instance through the System Config tool
- Ensure the Discipline passes the above Discipline Verification Steps
- Create a new geology Discipline and Collection to an existing Specify instance through the System Config tool
- Ensure the Discipline passes the above Discipline Verification Steps
- Verify the new Chronostrat defaults are populated correctly
- Verify the new IUGS ICC chart shows up (the chart has a 2026 in the top right of the image)
Looks good! Nothing I tested was different from last time.
rijulpoudel
left a comment
There was a problem hiding this comment.
Testing instructions
- Ensure the testing instructions succeed from #8243
- Ensure the testing instructions succeed from #8181
- At the time of writing, the attachment relationships should be disabled
Creating a new Database using Guided Setup
Discipline Verification Steps (These are referred to in the below General Testing Instructions)
- Verify all trees are present and populated with the correct data
- Generally ensure entries in the Schema Config are correct
- Make sure Tables and Fields have sensible default labels and descriptions
- Ensure that fields and tables
- Verify picklists are created in each Collection and have the correct values
- Verify picklists that should be associated with a field are correctly associated (some examples of relationships are provided below)
- Preparation -> prepType
- Discipline -> type
- CollectionObjectGroup -> cogType
- Ensure Schema Configuration changes are persistent
- Make changes to the Discipline's schema in the Schema Config (editing the label/description of tables and fields, modifying a table or field's visibility, changing a field's picklist, etc.)
- Completely stop the Specify instance
- Restart the Specify instance
- On the Test Panel, the above can be accomplished by Removing an instance from the test panel (do not delete/remove the database!) and re-adding the instance to force a restart
- Ensure the modifications you made are persistent and still present
- Ensure Tree Configuration changes are persistent
- Rename, add, and/or remove one or more ranks to one or more Trees
- Completely stop the Specify instance
- Restart the Specify instance
- Ensure the tree configuration changes are persistent and still present
General Testing Instructions
- Using Guided Setup, create a Specify instance with any non-geology (i.e., biology) discipline and populate trees with defaults
- Ensure the Discipline passes the above Discipline Verification Steps
- Using Guided Setup, create a Specify instance with a Geology discipline and populate trees with default values
- Ensure the Discipline passes the above Discipline Verification Steps
- Create a new non-geology Discipline and Collection to an existing Specify instance through the System Config tool
- Ensure the Discipline passes the above Discipline Verification Steps
- Create a new geology Discipline and Collection to an existing Specify instance through the System Config tool
- Ensure the Discipline passes the above Discipline Verification Steps
- Verify the new Chronostrat defaults are populated correctly
- Verify the new IUGS ICC chart shows up (the chart has a 2026 in the top right of the image)
Everything passed. I was able to recreate everything like we did the last time.
Triggered by 6db0903 on branch refs/heads/issue-8302
feat(attachments): add "match by mapping file" support
Checklist
self-explanatory (or properly documented)
specify7/specifyweb/specify/management/commands/run_key_migration_functions.py
Line 50 in ea04665
Testing instructions
These steps are taken from the v7.12.0.7 testing checklist, with the step for #8181 ommitted as
datamodel.pyfor new*Attachmentmodels #8181Creating a new Database using Guided Setup
Discipline Verification Steps (These are referred to in the below General Testing Instructions)
General Testing Instructions