Uploaded image for project: 'IGB'
  1. IGB
  2. IGBF-2258

Make class for default Primer blast options

    Details

    • Type: Task
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: None
    • Labels:
      None
    • Story Points:
      0.5
    • Sprint:
      Spring 3 : 3 Feb to 14 Feb, Spring 3 : 17 Feb to 28 Feb, Spring 4 : 2 Mar to 13 Mar, Spring 5 : 16 Mar to 27 Mar, Spring 6 : 30 Mar to Apr 10

      Attachments

        Issue Links

          Activity

          Hide
          pooja.nikhare Pooja Nikhare (Inactive) added a comment -

          Updates :

          Prof. [~aloraine] - We have made changes to UI as per your feedback , Created class for default primer blast options.
          Prutha Kulkarni and I are working on this as well as other task i.e IGBF-2259 as investigation task was a blocker for This task.
          We are now working on parameter passing part when we right click on selected sym with "Primer Blast Refseq mRNA" option.
          Referring to the following URL to see default options :
          https://www.ncbi.nlm.nih.gov/tools/primer-blast/index.cgi

          Show
          pooja.nikhare Pooja Nikhare (Inactive) added a comment - Updates : Prof. [~aloraine] - We have made changes to UI as per your feedback , Created class for default primer blast options. Prutha Kulkarni and I are working on this as well as other task i.e IGBF-2259 as investigation task was a blocker for This task. We are now working on parameter passing part when we right click on selected sym with "Primer Blast Refseq mRNA" option. Referring to the following URL to see default options : https://www.ncbi.nlm.nih.gov/tools/primer-blast/index.cgi
          Hide
          pooja.nikhare Pooja Nikhare (Inactive) added a comment - - edited

          Please review the branch : https://bitbucket.org/pnikhare/experimental-apps-for-igb/branch/IGBF-2258#diff

          As per the comments in code initially on clicking Primer blast options, the response from the NCBI site was 403.
          Currently with the default blast options (i.e custom forward, reverse primer and organism as empty field and other options already filled) , I am not receiving 403 error code.
          Prof. [~aloraine] - I have started with the unit test cases. Many of the inputs result into error from the site, So the test cases will be checking for the correctness of the default options given.
          I can make a Jira Ticket , if this is okay.

          Show
          pooja.nikhare Pooja Nikhare (Inactive) added a comment - - edited Please review the branch : https://bitbucket.org/pnikhare/experimental-apps-for-igb/branch/IGBF-2258#diff As per the comments in code initially on clicking Primer blast options, the response from the NCBI site was 403. Currently with the default blast options (i.e custom forward, reverse primer and organism as empty field and other options already filled) , I am not receiving 403 error code. Prof. [~aloraine] - I have started with the unit test cases. Many of the inputs result into error from the site, So the test cases will be checking for the correctness of the default options given. I can make a Jira Ticket , if this is okay.
          Hide
          pooja.nikhare Pooja Nikhare (Inactive) added a comment - - edited

          Steps for testing:
          1) Test cases:

          • Clone the experimental apps plugin repo on your local system.
          • build the repo using mvn clean package command.
          • check if the NCBI Primer app builds properly without throwing any exception.

          2) Test app in IGB:

          • Download latest Master branch Installer from downloads section of IGB repo.
          • Run IGB.
          • Open Plugin Manager in IGB.
          • Click on add new repository.
          • Copy Pooja Nikhare's experimental app fork's download section link and paste it in the URL textbox.
          • Now, install the NCBI app.
          • Once the app is installed, Primer Options tab will appear in IGB.
          • In primer options tab
            • selecting any specific genome should change the value accordingly in organism field.
            • change the database, then zoom on sym and right click. The menu title should show the
              primer blast with selected database.
            • Modify default parameters and test whether the application opens NCBI primer blast site.
            • Click on Reset Default button, All the modified values should reset.
          • Zoom in and select syms and right click to select "Primer Blast" option.
          • It will redirect you to primer blast site.
          Show
          pooja.nikhare Pooja Nikhare (Inactive) added a comment - - edited Steps for testing: 1) Test cases: Clone the experimental apps plugin repo on your local system. build the repo using mvn clean package command. check if the NCBI Primer app builds properly without throwing any exception. 2) Test app in IGB: Download latest Master branch Installer from downloads section of IGB repo. Run IGB. Open Plugin Manager in IGB. Click on add new repository. Copy Pooja Nikhare 's experimental app fork's download section link and paste it in the URL textbox. Now, install the NCBI app. Once the app is installed, Primer Options tab will appear in IGB. In primer options tab selecting any specific genome should change the value accordingly in organism field. change the database, then zoom on sym and right click. The menu title should show the primer blast with selected database. Modify default parameters and test whether the application opens NCBI primer blast site. Click on Reset Default button, All the modified values should reset. Zoom in and select syms and right click to select "Primer Blast" option. It will redirect you to primer blast site.
          Hide
          ann.loraine Ann Loraine added a comment - - edited

          Looked at Pooja's branch using:

          • git remote add pooja git@bitbucket.org:pnikhare/experimental-apps-for-igb.git
          • git fetch pooja
          • git checkout IGBF-2258

          Moved into NCBIPrimer directory and ran "mvn test"

          Tests ran:

          [INFO] -------------------------------------------------------
          [INFO] T E S T S
          [INFO] -------------------------------------------------------
          [INFO] Running org.lorainelab.igb.ncbiprimer.RemotePrimerBlastNCBITest
          14:36:35.237 [main] INFO o.l.i.n.RemotePrimerBlastNCBITest - Test for NCBI Primer URL
          14:36:35.813 [main] INFO o.l.i.n.RemotePrimerBlastNCBITest - Test for database : refseq_rna
          14:36:46.049 [main] INFO o.l.i.n.RemotePrimerBlastNCBITest - Test for database : genome_selected_species
          14:36:56.189 [main] INFO o.l.i.n.RemotePrimerBlastNCBITest - Test for database : nt
          14:37:06.428 [main] INFO o.l.i.n.RemotePrimerBlastNCBITest - Test for database : refseq_mrna
          14:37:16.682 [main] INFO o.l.i.n.RemotePrimerBlastNCBITest - Test for database : refseq_representative_genomes
          [INFO] Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 51.762 s - in org.lorainelab.igb.ncbiprimer.RemotePrimerBlastNCBITest
          [INFO]
          [INFO] Results:
          [INFO]
          [INFO] Tests run: 6, Failures: 0, Errors: 0, Skipped: 0
          [INFO]
          [INFO] ------------------------------------------------------------------------
          [INFO] BUILD SUCCESS
          [INFO] ------------------------------------------------------------------------
          [INFO] Total time: 53.672 s
          [INFO] Finished at: 2020-03-13T14:37:27-04:00
          [INFO] ------------------------------------------------------------------------

          Ran "mvn install". Added local repository ("target" directory inside NCBIPrimer module directory) to IGB 9.1.2 released version. Installed NBCI Primer App.

          Opened Arabidopsis genome. Within the Primer Options tabbed panel, choose each of the five options. All worked as expected except for "Genomes for selected organisms (primary reference only)" which gave an error in the Console:

          14:45:38.842 INFO o.l.i.ncbiprimer.PrimerSearchAction - Error in Primer Blast : Error: The primer specificity cannot be determined as sequences for the selected organism (Arabidopsis thaliana) are not present in selected database: PRIMERDB/genome_selected_species.

          I am not entirely sure what this option is supposed to do. Here is the documentation:

          "Genomes for selected organisms (primary reference assembly only):
          These are complete or nearly complete genome sequences from primary chromosome assemblies (i.e., no mitochondrion or alternate loci) for the following selected organisms:

          apis mellifera
          bos taurus
          danio rerio
          dog
          drosophila melanogaster
          gallus gallus
          human
          mouse
          pan troglodytes
          pig
          rat

          Although sequences in this database are completely covered by the Refseq representative genomes database, it does not contain the alternate loci and therefore has even less redundancy than the Refseq representative genomes database. This database is recommended if you are not concerned about missing alternate loci or mitochondrion sequences. "

          (from https://www.ncbi.nlm.nih.gov/tools/primer-blast/index.cgi)

          Show
          ann.loraine Ann Loraine added a comment - - edited Looked at Pooja's branch using: git remote add pooja git@bitbucket.org:pnikhare/experimental-apps-for-igb.git git fetch pooja git checkout IGBF-2258 Moved into NCBIPrimer directory and ran "mvn test" Tests ran: [INFO] ------------------------------------------------------- [INFO] T E S T S [INFO] ------------------------------------------------------- [INFO] Running org.lorainelab.igb.ncbiprimer.RemotePrimerBlastNCBITest 14:36:35.237 [main] INFO o.l.i.n.RemotePrimerBlastNCBITest - Test for NCBI Primer URL 14:36:35.813 [main] INFO o.l.i.n.RemotePrimerBlastNCBITest - Test for database : refseq_rna 14:36:46.049 [main] INFO o.l.i.n.RemotePrimerBlastNCBITest - Test for database : genome_selected_species 14:36:56.189 [main] INFO o.l.i.n.RemotePrimerBlastNCBITest - Test for database : nt 14:37:06.428 [main] INFO o.l.i.n.RemotePrimerBlastNCBITest - Test for database : refseq_mrna 14:37:16.682 [main] INFO o.l.i.n.RemotePrimerBlastNCBITest - Test for database : refseq_representative_genomes [INFO] Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 51.762 s - in org.lorainelab.igb.ncbiprimer.RemotePrimerBlastNCBITest [INFO] [INFO] Results: [INFO] [INFO] Tests run: 6, Failures: 0, Errors: 0, Skipped: 0 [INFO] [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 53.672 s [INFO] Finished at: 2020-03-13T14:37:27-04:00 [INFO] ------------------------------------------------------------------------ Ran "mvn install". Added local repository ("target" directory inside NCBIPrimer module directory) to IGB 9.1.2 released version. Installed NBCI Primer App. Opened Arabidopsis genome. Within the Primer Options tabbed panel, choose each of the five options. All worked as expected except for "Genomes for selected organisms (primary reference only)" which gave an error in the Console: 14:45:38.842 INFO o.l.i.ncbiprimer.PrimerSearchAction - Error in Primer Blast : Error: The primer specificity cannot be determined as sequences for the selected organism (Arabidopsis thaliana) are not present in selected database: PRIMERDB/genome_selected_species. I am not entirely sure what this option is supposed to do. Here is the documentation: "Genomes for selected organisms (primary reference assembly only): These are complete or nearly complete genome sequences from primary chromosome assemblies (i.e., no mitochondrion or alternate loci) for the following selected organisms: apis mellifera bos taurus danio rerio dog drosophila melanogaster gallus gallus human mouse pan troglodytes pig rat Although sequences in this database are completely covered by the Refseq representative genomes database, it does not contain the alternate loci and therefore has even less redundancy than the Refseq representative genomes database. This database is recommended if you are not concerned about missing alternate loci or mitochondrion sequences. " (from https://www.ncbi.nlm.nih.gov/tools/primer-blast/index.cgi )
          Hide
          ann.loraine Ann Loraine added a comment -

          Request:

          Please add a test case for one of the species NOT in the above list. It should give an error.

          Show
          ann.loraine Ann Loraine added a comment - Request: Please add a test case for one of the species NOT in the above list. It should give an error.
          Hide
          ann.loraine Ann Loraine added a comment -

          It is working very nicely!
          There is just one error with one of the databases - please see comments and request to add an additional test case.

          Show
          ann.loraine Ann Loraine added a comment - It is working very nicely! There is just one error with one of the databases - please see comments and request to add an additional test case.
          Hide
          pooja.nikhare Pooja Nikhare (Inactive) added a comment -

          As per https://www.ncbi.nlm.nih.gov/tools/primer-blast/index.cgi "Genomes for selected organisms (primary reference assembly only)" will work only for few selected organisms. I will add a Test case for the organism other than listed above.

          Show
          pooja.nikhare Pooja Nikhare (Inactive) added a comment - As per https://www.ncbi.nlm.nih.gov/tools/primer-blast/index.cgi "Genomes for selected organisms (primary reference assembly only)" will work only for few selected organisms. I will add a Test case for the organism other than listed above.
          Hide
          ann.loraine Ann Loraine added a comment -

          Since there are only a small number of species supported by option "Genomes for selected organisms (primary reference assembly only)," could you add some logic that only shows this option when genomes for those particular species are being shown?
          If you feel this can be done as a new ticket, it would be fine to create a new one. If you think this is a good idea, please go ahead and do it and add it to the current sprint.

          Show
          ann.loraine Ann Loraine added a comment - Since there are only a small number of species supported by option "Genomes for selected organisms (primary reference assembly only)," could you add some logic that only shows this option when genomes for those particular species are being shown? If you feel this can be done as a new ticket, it would be fine to create a new one. If you think this is a good idea, please go ahead and do it and add it to the current sprint.
          Hide
          pooja.nikhare Pooja Nikhare (Inactive) added a comment -

          Yes, It can be done. Created a Jira Ticket.
          Adding a failing test case is giving a wrong impression and Pipeline build also fails. So I did not add test case.

          Show
          pooja.nikhare Pooja Nikhare (Inactive) added a comment - Yes, It can be done. Created a Jira Ticket. Adding a failing test case is giving a wrong impression and Pipeline build also fails. So I did not add test case.
          Hide
          ann.loraine Ann Loraine added a comment -

          OK good!

          Regarding failing test case:

          Sorry, I was not clear enough about that. What I meant: A test that expects a particular type of error to occur when a function is given incorrect input.
          I was thinking of something like this:

          Show
          ann.loraine Ann Loraine added a comment - OK good! Regarding failing test case: Sorry, I was not clear enough about that. What I meant: A test that expects a particular type of error to occur when a function is given incorrect input. I was thinking of something like this: https://www.baeldung.com/junit-assert-exception
          Hide
          pooja.nikhare Pooja Nikhare (Inactive) added a comment -

          Added test case and made changes on selecting the option "Genomes for selected organisms (primary reference assembly only)".

          Show
          pooja.nikhare Pooja Nikhare (Inactive) added a comment - Added test case and made changes on selecting the option "Genomes for selected organisms (primary reference assembly only)".
          Hide
          shamika Shamika Gajanan Kulkarni (Inactive) added a comment - - edited

          Pooja Nikhare suggested a few steps which I could take to review this ticket.
          "- In primer options tab
          – selecting any specific genome should the value accordingly in organism field.
          – change the database, then zoom on sym and right click. The menu title should show the
          primer blast with selected database.
          – Modify default parameters and test whether the application opens NCBI primer blast site.
          – Click on Reset Default button, All the modified values should reset.

          • Zoom in and select syms and right click to select "Primer Blast" option.
            if any errors arise or ncbi app doesnt open check the console log file"

          I have tested using the above steps and everything is working fine. I am sorry for the delay due to internet issues. Moving the ticket forward.

          Show
          shamika Shamika Gajanan Kulkarni (Inactive) added a comment - - edited Pooja Nikhare suggested a few steps which I could take to review this ticket. "- In primer options tab – selecting any specific genome should the value accordingly in organism field. – change the database, then zoom on sym and right click. The menu title should show the primer blast with selected database. – Modify default parameters and test whether the application opens NCBI primer blast site. – Click on Reset Default button, All the modified values should reset. Zoom in and select syms and right click to select "Primer Blast" option. if any errors arise or ncbi app doesnt open check the console log file" I have tested using the above steps and everything is working fine. I am sorry for the delay due to internet issues. Moving the ticket forward.

            People

            • Assignee:
              shamika Shamika Gajanan Kulkarni (Inactive)
              Reporter:
              pooja.nikhare Pooja Nikhare (Inactive)
            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: