Open mzueva opened 2 years ago
Bug was found: Missing pathway map for 'Glycolysis 2'
To reproduce:
Expected result: Specific pathways map should be displayed in the PATHWAYS sub-tab
Actual result:
Text data outside of root node. Line: 0 Column: 63 Char: }
text displays instead Glycolysis2 pathways map
@mzueva @okolesn
Fixed and verified
Bug was found: 400 error appears after applying sorting in the PATHWAYS search result table
Prerequisites: Open console (F12)
To reproduce:
Expected result: The results in the table are displayed according to the applied sorting No errors in the console
Actual result: Sorting is applied. No values in the search results table 400 error displays in the console
Extra details: Infinite loader is displayed in the PATHWAYS sub-tab when trying to search again The results are displayed in the table after reloading the page
@mzueva @DmitriiKrasnov
Fixed and verified
Bug was found: The map scale is reset to default after switching to another panel
To reproduce:
Actual result: Zoom of the mao should be the same as it was remembered in 6 step
Expected result: The zoom is reset to default after switching to another panel
@mzueva @rodichenko @DmitriiKrasnov
Bug was found: Node highlighting disappears after applying the 'Reset to default' button
To reproduce:
Expected result: Node specified in the annotation (e.g. Laclp) should be highlighted (e.g. LimeGreen,#45abff)
Actual result: All nodes do not have a highlight after clicking the Reset Default view button
@mzueva @DmitriiKrasnov
Fixed and verified
Bug was found:
Apply button is active in annotations if <Enter>
set between conditions
To reproduce:
Laclp LimeGreen
<Enter>
Tetm Red
Expected result: Apply button should be disabled
Actual result: Apply button is active
@mzueva @DmitriiKrasnov
Fixed and verified
Bug was found: Server error is displayed when searching for some keywords
To reproduce:
Expected result:
1) Matched search result should be displayed in the table
2) Nothing found. Try to search another gene.
phrase should be displayed if there are no matches in the search results
Actual result: An error displays in the panel:
Extra details: The same behavior for 'or' keyword And for uppercase (AND,OR)
@mzueva @okolesn
Bug was found: Server errors are displayed when searching for some special characters
To reproduce:
Expected result:
Nothing found. Try to search another gene.
phrase should be displayed if there are no matches in the search results
Actual result: An error displays in the panel:
Extra details: The same behavior for following values: !, (,),-,+,[
@okolesn
Some notes after conversation with @DmitriiKrasnov
Bug was found: Map scale remains the same after applying the Restore default view button
To reproduce:
Expected result: The map should be autoscaled - fitted by width
Actual result: Scale of the map stays the same does not fit to the width
@mzueva @DmitriiKrasnov Fixed and verified
Bug was found: Previously selected node remains selected when revisiting the map page
To reproduce:
Expected result: The whole map should be without highlights
Actual result: D-Glyceraldehyde 3-phosphate node is highlighted as selected node (in brown)
Extra details: The same behavior for Glycolysis
@DmitriiKrasnov
Fixed and verified
Bug was found: The Apply button is enabled if no heatmaps are selected or added to annotations.
Prerequisites: Open Console (F12)
To reproduce:
Expected result: Apply button shouldn't be clickable for fields without added heatmaps. Errors shouldn't be displayed in the console
Actual result: Apply button is clickable. An error displays in the console:
app.bundle.9705ab3038a4620f71e0.js:60 TypeError: Cannot read properties of null (reading 'rows')
at app.bundle.9705ab3038a4620f71e0.js:1064:95514
at ngbPathwaysAnnotationService.value (app.bundle.9705ab3038a4620f71e0.js:1064:95664)
at ngbPathwaysAnnotationAddDlgController.value (app.bundle.9705ab3038a4620f71e0.js:1049:398255)
at fn (eval at compile (app.bundle.9705ab3038a4620f71e0.js:60:155706), <anonymous>:4:738)
at expensiveCheckFn (app.bundle.9705ab3038a4620f71e0.js:60:178880)
at callback (app.bundle.9705ab3038a4620f71e0.js:60:249496)
at Scope.$eval (app.bundle.9705ab3038a4620f71e0.js:60:195953)
at Scope.$apply (app.bundle.9705ab3038a4620f71e0.js:60:196292)
at HTMLButtonElement.<anonymous> (app.bundle.9705ab3038a4620f71e0.js:60:249603)
at HTMLButtonElement.dispatch (app.bundle.9705ab3038a4620f71e0.js:39:58996)
Extra details: The same behavior with checkbox Upload TSV/CSV :
TypeError: Cannot read properties of null (reading 'columnLabels')
at app.bundle.9705ab3038a4620f71e0.js:1064:95198
at ngbPathwaysAnnotationService.value (app.bundle.9705ab3038a4620f71e0.js:1064:95372)
at ngbPathwaysAnnotationAddDlgController.value (app.bundle.9705ab3038a4620f71e0.js:1049:398255)
at fn (eval at compile (app.bundle.9705ab3038a4620f71e0.js:60:155706), <anonymous>:4:738)
at expensiveCheckFn (app.bundle.9705ab3038a4620f71e0.js:60:178880)
at callback (app.bundle.9705ab3038a4620f71e0.js:60:249496)
at Scope.$eval (app.bundle.9705ab3038a4620f71e0.js:60:195953)
at Scope.$apply (app.bundle.9705ab3038a4620f71e0.js:60:196292)
at HTMLButtonElement.<anonymous> (app.bundle.9705ab3038a4620f71e0.js:60:249603)
at HTMLButtonElement.dispatch (app.bundle.9705ab3038a4620f71e0.js:39:58996)
at HTMLButtonElement.elemData.handle (app.bundle.9705ab3038a4620f71e0.js:39:55827)
@DmitriiKrasnov @mzueva @rodichenko
Fixed and verified
Bug was found: The values specified in the heatmap and displayed in the annotations are different
Prerequisites: Open Console (F12)
To reproduce:
Expected result: Heatmap values should be displayed
Actual result: The following values displays in the discrete type:
@DmitriiKrasnov @mzueva @rodichenko
Not reproducible
Bug was found: The second search is performed not for the entire phrase
To reproduce:
Expected result: Only one node should be highlighted: fructose 1,6-bisphosphatase: ybhA
Actual result: Almost all nodes are highlighted
Extra details: Only one match is found in console:
@rodichenko @DmitriiKrasnov @mzueva
Fixed and verified
Bug was found: Nodes remain highlighted after applying search with an empty field
To reproduce:
Expected result: Nodes are not highlighted
Actual result: Previously highlighted nodes remain highlighted
@rodichenko @DmitriiKrasnov @mzueva
Fixed and verified
Bug was found: Pathway display does not change to default after clicking Restore default view button (for collages only)
To reproduce:
Expected result: Pathway display changed to default view after clicking Restore default view button
Actual result: Pathway display does not change to default after clicking Restore default view button
@rodichenko @DmitriiKrasnov @mzueva
Fixed and verified
Bug was found: Values are not pulled from the added heatmap file in discrete view in annotations
Prerequisites: Create heatmap file: e.g. Pathway-ann.csv with following values:
Gene,Sample1,Sample2
Tetm,0.55,0.98
Tetp,0.04,1
Laclm,0.33,0.45
Clp,0.29,0.89
f6p,0.29,0.89
To reproduce:
Expected result: Values should be automatically displayed from the added heatmap file in discrete view Range checkbox should be displayed near values (flag is not set by default)
Actual result: No values in the discrete view.
Extra details: Nodes are highlighted in black after clicking the Apply button
The range view is displayed when you click on the Add Color button No Range checkboxes in the Discrete view
@rodichenko @mzueva @DmitriiKrasnov
Fixed and verified
Bug was found: Canceled changes are applied to the color scheme
To reproduce:
Expected result: LOW color should be Green Pathway's nodes should be highlighted according to the set values
Actual result: LOW color is Pink
Pathway nodes are highlighted according to the values in the color scheme.
Extra details: The same behavior for Upload TSV/CSV checkbox
@rodichenko @mzueva @DmitriiKrasnov
Fixed and verified
Need to improve:
@DmitriiKrasnov @mzueva
Bug was found: Apply button is disabled after uploading CSV/TSV filed in annotations
To reproduce:
Expected result: Apply button should be active
Actual result: Apply button is disabled
@rodichenko @mzueva @DmitriiKrasnov
Fixed and verified
Bug was found: Manual annotations and with heatmap files are not saved in the annotation pop-up
To reproduce:
Expected result: Manual and annotations with heatmap files should be displayed in the annotation window
Actual result: No saved annotations: manual and annotations with heatmap files
@rodichenko @mzueva @DmitriiKrasnov
Bug was found: Nodes remain highlighted after applying search to collage pathway
To reproduce:
Expected result: All matched nodes should have green text without gray highlight
Actual result: All matched nodes have light gray highlight
Extra details: Highlight nodes remains even after clearing search
@rodichenko @mzueva @DmitriiKrasnov
Fixed and verified
Bug was found: Edges move a little after clicking Restore default view button
To reproduce:
Expected result: The map should be unchanged if no changes have been made before.
Actual result: Edges move a little
@mzueva @rodichenko @DmitriiKrasnov
Bug was found: Apply button is disabled after switching between checkboxes in annotations
To reproduce:
Expected result: Apply button should be active
Actual result: Apply button is disabled
Extra details: Same behavior for all toggle options between checkboxes
@rodichenko @mzueva @DmitriiKrasnov
Fixed and verified
Bug was found: The map slides to the right or left when zooming in or out
To reproduce:
Expected result: The pathway map should maximize and minimize in the center of the PATHWAYS panel
Actual result: 5) The pathway's map slides to the bottom right corner when zooming in 6) The pathway's map slides to the left upper corner when zooming out
@rodichenko @mzueva @DmitriiKrasnov
Fixed and verified
Bug was found: An error displays in the console after opening PATHWAYS panel from track
Prerequisites Open console (Ctrl+F12)
To reproduce:
Expected result: No errors in the console. Pathways panel is opened
Actual result: Pathways panel is opened An error displays in the console
app.bundle.0e08a0baaf769ff20edb.js:1049 Uncaught TypeError: Cannot read properties of null (reading 'isHeadless')
at Core.headless (app.bundle.0e08a0baaf769ff20edb.js:1049:80163)
at app.bundle.0e08a0baaf769ff20edb.js:1047:52662
at cachedBoundingBoxImpl (app.bundle.0e08a0baaf769ff20edb.js:1047:56462)
at Collection.elesfn$k.boundingBox (app.bundle.0e08a0baaf769ff20edb.js:1047:58057)
at update (app.bundle.0e08a0baaf769ff20edb.js:1047:45276)
at Element.elesfn$k.updateCompoundBounds (app.bundle.0e08a0baaf769ff20edb.js:1047:47584)
at Object.beforeGet (app.bundle.0e08a0baaf769ff20edb.js:1047:40870)
at Element.<anonymous> (app.bundle.0e08a0baaf769ff20edb.js:1047:8991)
at Element.<anonymous> (app.bundle.0e08a0baaf769ff20edb.js:1041:33596)
at _loop2 (app.bundle.0e08a0baaf769ff20edb.js:1047:67984)
at app.bundle.0e08a0baaf769ff20edb.js:1047:68151
at forEachEventObj (app.bundle.0e08a0baaf769ff20edb.js:1047:65787)
at Emitter.p.emit.p.trigger (app.bundle.0e08a0baaf769ff20edb.js:1047:67148)
at Core.emit (app.bundle.0e08a0baaf769ff20edb.js:1049:9858)
at app.bundle.0e08a0baaf769ff20edb.js:1047:68248
at forEachEventObj (app.bundle.0e08a0baaf769ff20edb.js:1047:65695)
@rodichenko @mzueva @DmitriiKrasnov
Bug was found: Pop-up Annotations window is not displayed after creation annotation
To reproduce:
Expected result: Pop-up Annotation window with created annotation should be displayed in the right upper corner
Actual result: Pop-up Annotations window is not displayed after creation annotation
@rodichenko @mzueva @DmitriiKrasnov
Fixed and verified
Bug was found: It is not possible reopen Add Annotation pop-up with manual colorization
To reproduce:
Expected result: Add annotation pop-up should be opened with filled Manual colors config field
Actual result: Add Annotation pop-up with manual colorization is not opened
Extra details: An error displays in the console:
app.bundle.0e08a0baaf769ff20edb.js:60 TypeError: Cannot read properties of null (reading 'copy')
at ngbPathwaysAnnotationAddDlgController (app.bundle.0e08a0baaf769ff20edb.js:1049:399004)
at Object.invoke (app.bundle.0e08a0baaf769ff20edb.js:60:40742)
at extend.instance (app.bundle.0e08a0baaf769ff20edb.js:60:105109)
at Object.link (app.bundle.0e08a0baaf769ff20edb.js:639:27641)
at app.bundle.0e08a0baaf769ff20edb.js:639:43464
at app.bundle.0e08a0baaf769ff20edb.js:639:44048
at app.bundle.0e08a0baaf769ff20edb.js:60:183790
at app.bundle.0e08a0baaf769ff20edb.js:60:183933
at Scope.$eval (app.bundle.0e08a0baaf769ff20edb.js:60:195953)
at Scope.$digest (app.bundle.0e08a0baaf769ff20edb.js:60:193358)
at Scope.$apply (app.bundle.0e08a0baaf769ff20edb.js:60:196379)
at HTMLAnchorElement.<anonymous> (app.bundle.0e08a0baaf769ff20edb.js:60:249603)
at HTMLAnchorElement.dispatch (app.bundle.0e08a0baaf769ff20edb.js:39:58996)
at HTMLAnchorElement.elemData.handle (app.bundle.0e08a0baaf769ff20edb.js:39:55827)
@rodichenko @mzueva @DmitriiKrasnov
Fixed and verified
Bug was found: Server error is displayed when searching for certain values
To reproduce:
Expected result: All matched results started with "pw" value should be displayed in the table
Actual results: Your operation has been aborted due to NGB has encountered a server problem. text displays instead table with results
Extra details: The same behavior for: Glycolysis_Homo_sapiens, Glycolysis description...
Finds results for following pathways: pwycollage.graph, BRCA1...
@mzueva @okolesn
Fixed and verified
Bug was found: Switching to the gene track does not match the result
To reproduce:
Expected result: The gene should not have been found because there is no match
Actual result: FBP1 gene is displayed in the gene track
@rodichenko @DmitriiKrasnov @mzueva
Bug was found: The Apply button is activated after double-clicking the checkbox in annotations
To reproduce:
Expected result: Apply button should be disabled
Actual result: Apply button is active
@rodichenko @mzueva @DmitriiKrasnov
Bug was found: Incorrect coloring of nodes if the node consists of more than 1 value
To reproduce:
Expected result: enolase: eno node should have blue background with red text
Actual result: enolase: eno text has red text only without background
@rodichenko @mzueva @DmitriiKrasnov
Background
Metabolic pathways are series of chemical reactions that start with a substrate and finish with an end product. These pathways are being displayed as certain kind of infographics, often called "maps". Maps can be as public ones received from different sources like BioCyc database and as well as internal, produced by pathway modelling software. NGB shall support visualization of both types of pathway maps.
Approach
Pathways panel
A new Pathways panel shall be added. This panel shall be available:
In all described cases, a new Pathways panel should be opened that is placed as other side panels - at the right side of the page. This panel should contain:
Example of view:
Databases sub-tab
After user has specified the search keyword and click the Search button or just opened the Pathways panel from the context menu when clicking any gene/feature, the search should be performed over external pathways databases by the keyword/gene or feature name. Results of the search should be displayed in the "Databases" sub-tab, e.g.:
Search results should contain a list of found maps from external pathways database. Each record should contain the following fields:
The "Map" column should contain hyperlinks - user can click any record in this list to open details of the specific metabolic pathways map. The new form with map details should be opened in the same sub-tab instead previous list, e.g.:
This form shall contain:
Search over the pathway User shall have the ability to search over pathway objects - via the search control at the additional capabilities panel:
Add annotation to the pathway User shall have the ability to add annotation(s) to the displayed map. This annotation should allow to colorize the map. The following annotations shall be supported:
To add an annotation, user shall click the "Add+" control at the additional capabilities panel. A pop-up shall appear, e.g.:
This pop-up shall contain:
If user selects any annotation from the dropdown list or load from the local TSV/CSV file, the view of that pop-up shall be changed:
continuous
(default) anddiscrete
colorizingcontinuous
colorizing, there should be the ability to set colors for max, min, average valuesdiscrete
colorizing, there should be the ability to set a color for each specific value or configure color(s) for values range(s)If user selects "Manual colors config" - no additional controls appear, in this case user should manually specify the colorization scheme and annotation name if needs, e.g.:
When the annotation was saved:
annotation_<index_number>
Manage the annotations:
Pathways sub-tab
Pathways sub-tab can be opened manually. Here, the search over internal NGB pathways should be performed - by the keyword/gene or feature name. Search should be performed over the following fields of pathway maps:
Results of the search should be displayed in the same sub-tab - similar to Databases sub-tab, but without map IDs and thumbnails, e.g.:
Each record should contain the following fields:
The "Map" column should contain hyperlinks - user can click any record in this list to open details of the specific metabolic pathways map. The new form with map details should be opened in the same sub-tab instead previous list. Content and functionality for internal maps details should be fully similar to external database maps, the single difference - the map image should be generated and drawn from pathway map file in SBGN-xml format, e.g.:
Internal pathways
BioCYC Pathways integration
Pathways annotation
Map colorizing shall be different according to the annotation source.
Annotation file
When user selects heatmap/TSV or CSV file as annotation, the matrix format of the annotation is expected. In this case:
If the
continuous
scheme is selected, the algorithm of the colorizing should be the following:For example, if the annotation file looks like:
Then, the following example map with applied annotation shall be colorized in the way (if the gradient colors were selected correspondingly):
For example, if the annotation file looks like:
Then, the following example map with applied annotation shall be colorized in the way (if the gradient colors were selected correspondingly):
If the
discrete
scheme is selected, the algorithm of the colorizing should be the following:For example, if the annotation file looks like:
Then, the following example map with applied annotation shall be colorized in the way (if colors were selected correspondingly):
Manual colorization
Manual colorization annotation is expected in the following format:
The algorithm of the colorizing should be the following:
<background_color>
(if specified) should be used as background color<foreground_color>
(if specified) should be used as border color and text colorFor example, if the manual annotation config looks like:
Then, the following example map with applied annotation shall be colorized in the way:
Additional details