Basic User Test
This process describes the steps for testing each Pull Request (PR) submitted by a contributor. In the Schematize Browser, we want to make sure that changes are compatible with each other and don’t introduce new bugs.
Integrate code from Pull Request
If the commit being merged is within the same repo then a simple command will get the code
git checkout pull-request-SHA1 # PR Commit
If the code is from another repo then follow the directions in Merge Pull Request
to get a copy of the code.
- Pull code from contributor’s repo (GitHub image below).
npm install (Please note if the PR introduces a new npm package requirement).
npm start Code should compile and launch browser window.
Manual Testing is done by stepping through each test case and making sure that everything is working correctly.
npm start runs and loads code into the browser window automatically.
- Browser window starts populated with a graphic showing the current data and should show the expected test pattern.
- Browser refresh reloads the view.
- Browser window should show Input widgets at top: filename, bin width+-, start bin, left and right buttons, path name, position, jump button, Use Vertical Compression, Use Width Compression, Row Height, Column Width.
- Selecting ‘Use Vertical Compression’ should change the view. Selecting ‘Use Width Compression’ should offer an additional option to select - ‘Render Connectors’. Changing either selected values should change how the view is displayed. Unselecting the ‘Width Compression’ or ‘Vertical Compression’ boxes should return the graphic to the default view.
- Light grey blocks for coverage (shouldn’t be everywhere). Dark grey connectors in between Components (light grey background boxes).
- Links appear as colorful arrows immediately above the Component boxes.
- Link Color matches Box Color in the Column immediately below either end of the link.
- Links horizontal runs stack up neatly without overlapping (broken in current screenshot).
- Mouse over Link and it changes all other links to transparent grey.
- Click Orphan Link (only one small arrow). View should jump to corresponding section with the other side of the link and matching color.
- Matching link is visually highlighted (#6).
- Clicking on the newly highlighted link should take you back to precisely where you came from (2-way link travel) with your orphan link centered in the view.
- Mouseover cells (grey blocks) should show e.g. “Path_name: 2365-27289. Coverage: 0.23, Inversion: 0.0”. Mouseovers should be different for each cell. Mouseover disappears when not over cell.
Sample Schematize Page
Testing steps to add once features are implemented:
- Link mouseovers
- Path position “Jump” (requires odgi setup or online server)
Python Testing for component_segmentation
- Pull code from contributor’s repo (GitHub image above).
pip install -r requirements.txt (Please note if the PR introduces a new package requirement). You should be using Python 3.7.* to test.
python segmentation.py --json-file=data/run1.B1phi1.i1.seqwish.w100.json --out-folder=data/ --cells-per-file=5000
- New files should be created in /data/
- bin2file.json should list the names of all the chunkXX.json files
- Contents should be valid JSON.
- Header with json_version should match the target version of the issue. This is especially important for issues that change the format.
Previous: Get Involved [Index]