{"action":"created","comment":{"url":"https://api.github.com/repos/epam/NGB/pulls/comments/151663281","pull_request_review_id":77406708,"id":151663281,"diff_hunk":"@@ -0,0 +1,91 @@\n+/*\n+ * MIT License\n+ *\n+ * Copyright (c) 2017 EPAM Systems\n+ *\n+ * Permission is hereby granted, free of charge, to any person obtaining a copy\n+ * of this software and associated documentation files (the \"Software\"), to deal\n+ * in the Software without restriction, including without limitation the rights\n+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n+ * copies of the Software, and to permit persons to whom the Software is\n+ * furnished to do so, subject to the following conditions:\n+ *\n+ * The above copyright notice and this permission notice shall be included in all\n+ * copies or substantial portions of the Software.\n+ *\n+ * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n+ * SOFTWARE.\n+ */\n+\n+package com.epam.catgenome.manager.bam;\n+\n+import com.epam.catgenome.entity.bam.PSLRecord;\n+import com.epam.catgenome.entity.reference.Species;\n+import com.epam.catgenome.exception.ExternalDbUnavailableException;\n+import com.epam.catgenome.manager.gene.parser.StrandSerializable;\n+import org.junit.Assert;\n+import org.junit.Test;\n+import org.junit.runner.RunWith;\n+import org.springframework.beans.factory.annotation.Autowired;\n+import org.springframework.test.context.ContextConfiguration;\n+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;\n+\n+import java.io.IOException;\n+import java.util.Collections;\n+import java.util.List;\n+\n+@RunWith(SpringJUnit4ClassRunner.class)\n+@ContextConfiguration({\"classpath:applicationContext-test.xml\"})\n+public class BlatSearchManagerTest {\n+\n+    private static final String TEST_SEQUENSE = \"CAGTATCGTCCTTACTATTACATAGTGTGGTAGCGATGCAGTCCCAGTGAAAAAAAAAAAAAAAAAAAC\";\n+    private static final Species TEST_SPECIES = new Species(){{\n+            setName(\"human\");\n+            setVersion(\"hg19\");\n+        }};\n+    private static final String TEST_RECORD_NAME = \"YourSeq\";\n+    private static final String TEST_CHR = \"chr5\";\n+    private static final int TEST_START = 118149214;\n+    private static final int TEST_END = 118149241;\n+    private static final int TEST_MATCH = 27;\n+    private static final int EMPTY = 0;\n+    private static final int TEST_Q_SIZE = 69;\n+    private static final int TEST_SCORE = 27000 / 69;\n+    private static final List<PSLRecord> EXPECTED = mockPSLRecord();\n+\n+    @Autowired\n+    private BlatSearchManager blatSearchManager;\n+\n+    @Test\n+    public void testFind() throws IOException, ExternalDbUnavailableException {\n+        List<PSLRecord> actual = blatSearchManager.find(TEST_SEQUENSE, TEST_SPECIES);","path":"server/catgenome/src/test/java/com/epam/catgenome/manager/bam/BlatSearchManagerTest.java","position":66,"original_position":66,"commit_id":"0585f07185fa86b7f3b3856de94b7cebec799730","original_commit_id":"0585f07185fa86b7f3b3856de94b7cebec799730","user":{"login":"mzueva","id":12640002,"avatar_url":"https://avatars1.githubusercontent.com/u/12640002?v=4","gravatar_id":"","url":"https://api.github.com/users/mzueva","html_url":"https://github.com/mzueva","followers_url":"https://api.github.com/users/mzueva/followers","following_url":"https://api.github.com/users/mzueva/following{/other_user}","gists_url":"https://api.github.com/users/mzueva/gists{/gist_id}","starred_url":"https://api.github.com/users/mzueva/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mzueva/subscriptions","organizations_url":"https://api.github.com/users/mzueva/orgs","repos_url":"https://api.github.com/users/mzueva/repos","events_url":"https://api.github.com/users/mzueva/events{/privacy}","received_events_url":"https://api.github.com/users/mzueva/received_events","type":"User","site_admin":false},"body":"Please, use mocks instead of real calls to BLAT API","created_at":"2017-11-17T11:27:10Z","updated_at":"2017-11-17T11:29:31Z","html_url":"https://github.com/epam/NGB/pull/114#discussion_r151663281","pull_request_url":"https://api.github.com/repos/epam/NGB/pulls/114","author_association":"COLLABORATOR","_links":{"self":{"href":"https://api.github.com/repos/epam/NGB/pulls/comments/151663281"},"html":{"href":"https://github.com/epam/NGB/pull/114#discussion_r151663281"},"pull_request":{"href":"https://api.github.com/repos/epam/NGB/pulls/114"}}},"pull_request":{"url":"https://api.github.com/repos/epam/NGB/pulls/114","id":151606846,"html_url":"https://github.com/epam/NGB/pull/114","diff_url":"https://github.com/epam/NGB/pull/114.diff","patch_url":"https://github.com/epam/NGB/pull/114.patch","issue_url":"https://api.github.com/repos/epam/NGB/issues/114","number":114,"state":"open","locked":false,"title":"BLAT search","user":{"login":"TimSPb89","id":31693137,"avatar_url":"https://avatars1.githubusercontent.com/u/31693137?v=4","gravatar_id":"","url":"https://api.github.com/users/TimSPb89","html_url":"https://github.com/TimSPb89","followers_url":"https://api.github.com/users/TimSPb89/followers","following_url":"https://api.github.com/users/TimSPb89/following{/other_user}","gists_url":"https://api.github.com/users/TimSPb89/gists{/gist_id}","starred_url":"https://api.github.com/users/TimSPb89/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/TimSPb89/subscriptions","organizations_url":"https://api.github.com/users/TimSPb89/orgs","repos_url":"https://api.github.com/users/TimSPb89/repos","events_url":"https://api.github.com/users/TimSPb89/events{/privacy}","received_events_url":"https://api.github.com/users/TimSPb89/received_events","type":"User","site_admin":false},"body":"# Description\r\n\r\n## Background\r\n\r\nFix for #90 \r\n\r\n## Changes\r\n\r\n* New menu item 'BLAT Search' added to the alignment context menu.\r\n* Once 'BLAT Search' clicked panel named 'BLAT' with BLAT Search results opens.\r\n* If user clicks a BLAT Search's table row - NGB navigates to the specified region.\r\n* Genome species registration/unregistration on NGB server with the help of cli was added.\r\n* Possibility to add species to reference genome during genome registration was added. And also possibility to add/remove species to/from registered reference.\r\n\r\n\r\n## Acceptance criteria\r\n\r\n1. Register species on NGB server\r\n2. Add registered species to registered reference \r\n3. Open track view with bam file selected (relaited to the reference from 2 item)\r\n4. Click on alignment and in context menu choose 'BLAT Search' item\r\n5. Panel named 'BLAT' should open and BLAT Search results should be presented there\r\n6. Once user clicks a table row NGB should navigate to the specified region\r\n\r\n# Check list\r\n\r\n- [x] Unit tests are provided\r\n- [x] Integration tests are provided (if CLI/API was changed)\r\n- [x] Documentation is updated\r\n","created_at":"2017-11-09T10:01:49Z","updated_at":"2017-11-17T11:29:31Z","closed_at":null,"merged_at":null,"merge_commit_sha":"87a19a480249c7825d9f8ba38fa8551a827d88b9","assignee":null,"assignees":[],"requested_reviewers":[],"milestone":null,"commits_url":"https://api.github.com/repos/epam/NGB/pulls/114/commits","review_comments_url":"https://api.github.com/repos/epam/NGB/pulls/114/comments","review_comment_url":"https://api.github.com/repos/epam/NGB/pulls/comments{/number}","comments_url":"https://api.github.com/repos/epam/NGB/issues/114/comments","statuses_url":"https://api.github.com/repos/epam/NGB/statuses/0585f07185fa86b7f3b3856de94b7cebec799730","head":{"label":"epam:f_blat_search","ref":"f_blat_search","sha":"0585f07185fa86b7f3b3856de94b7cebec799730","user":{"login":"epam","id":1589802,"avatar_url":"https://avatars3.githubusercontent.com/u/1589802?v=4","gravatar_id":"","url":"https://api.github.com/users/epam","html_url":"https://github.com/epam","followers_url":"https://api.github.com/users/epam/followers","following_url":"https://api.github.com/users/epam/following{/other_user}","gists_url":"https://api.github.com/users/epam/gists{/gist_id}","starred_url":"https://api.github.com/users/epam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/epam/subscriptions","organizations_url":"https://api.github.com/users/epam/orgs","repos_url":"https://api.github.com/users/epam/repos","events_url":"https://api.github.com/users/epam/events{/privacy}","received_events_url":"https://api.github.com/users/epam/received_events","type":"Organization","site_admin":false},"repo":{"id":72222405,"name":"NGB","full_name":"epam/NGB","owner":{"login":"epam","id":1589802,"avatar_url":"https://avatars3.githubusercontent.com/u/1589802?v=4","gravatar_id":"","url":"https://api.github.com/users/epam","html_url":"https://github.com/epam","followers_url":"https://api.github.com/users/epam/followers","following_url":"https://api.github.com/users/epam/following{/other_user}","gists_url":"https://api.github.com/users/epam/gists{/gist_id}","starred_url":"https://api.github.com/users/epam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/epam/subscriptions","organizations_url":"https://api.github.com/users/epam/orgs","repos_url":"https://api.github.com/users/epam/repos","events_url":"https://api.github.com/users/epam/events{/privacy}","received_events_url":"https://api.github.com/users/epam/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/epam/NGB","description":"New Genome Browser (NGB) - a Web - based NGS data viewer with unique Structural Variations (SVs) visualization capabilities, high performance, scalability, and cloud data support","fork":false,"url":"https://api.github.com/repos/epam/NGB","forks_url":"https://api.github.com/repos/epam/NGB/forks","keys_url":"https://api.github.com/repos/epam/NGB/keys{/key_id}","collaborators_url":"https://api.github.com/repos/epam/NGB/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/epam/NGB/teams","hooks_url":"https://api.github.com/repos/epam/NGB/hooks","issue_events_url":"https://api.github.com/repos/epam/NGB/issues/events{/number}","events_url":"https://api.github.com/repos/epam/NGB/events","assignees_url":"https://api.github.com/repos/epam/NGB/assignees{/user}","branches_url":"https://api.github.com/repos/epam/NGB/branches{/branch}","tags_url":"https://api.github.com/repos/epam/NGB/tags","blobs_url":"https://api.github.com/repos/epam/NGB/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/epam/NGB/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/epam/NGB/git/refs{/sha}","trees_url":"https://api.github.com/repos/epam/NGB/git/trees{/sha}","statuses_url":"https://api.github.com/repos/epam/NGB/statuses/{sha}","languages_url":"https://api.github.com/repos/epam/NGB/languages","stargazers_url":"https://api.github.com/repos/epam/NGB/stargazers","contributors_url":"https://api.github.com/repos/epam/NGB/contributors","subscribers_url":"https://api.github.com/repos/epam/NGB/subscribers","subscription_url":"https://api.github.com/repos/epam/NGB/subscription","commits_url":"https://api.github.com/repos/epam/NGB/commits{/sha}","git_commits_url":"https://api.github.com/repos/epam/NGB/git/commits{/sha}","comments_url":"https://api.github.com/repos/epam/NGB/comments{/number}","issue_comment_url":"https://api.github.com/repos/epam/NGB/issues/comments{/number}","contents_url":"https://api.github.com/repos/epam/NGB/contents/{+path}","compare_url":"https://api.github.com/repos/epam/NGB/compare/{base}...{head}","merges_url":"https://api.github.com/repos/epam/NGB/merges","archive_url":"https://api.github.com/repos/epam/NGB/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/epam/NGB/downloads","issues_url":"https://api.github.com/repos/epam/NGB/issues{/number}","pulls_url":"https://api.github.com/repos/epam/NGB/pulls{/number}","milestones_url":"https://api.github.com/repos/epam/NGB/milestones{/number}","notifications_url":"https://api.github.com/repos/epam/NGB/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/epam/NGB/labels{/name}","releases_url":"https://api.github.com/repos/epam/NGB/releases{/id}","deployments_url":"https://api.github.com/repos/epam/NGB/deployments","created_at":"2016-10-28T16:07:22Z","updated_at":"2017-11-09T16:11:34Z","pushed_at":"2017-11-17T11:20:18Z","git_url":"git://github.com/epam/NGB.git","ssh_url":"git@github.com:epam/NGB.git","clone_url":"https://github.com/epam/NGB.git","svn_url":"https://github.com/epam/NGB","homepage":"http://ngb.opensource.epam.com/catgenome","size":33435,"stargazers_count":63,"watchers_count":63,"language":"Java","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":12,"mirror_url":null,"archived":false,"open_issues_count":50,"forks":12,"open_issues":50,"watchers":63,"default_branch":"master"}},"base":{"label":"epam:develop","ref":"develop","sha":"07ed5dd540f9a57fdde7acd8f44e74548fbffaaf","user":{"login":"epam","id":1589802,"avatar_url":"https://avatars3.githubusercontent.com/u/1589802?v=4","gravatar_id":"","url":"https://api.github.com/users/epam","html_url":"https://github.com/epam","followers_url":"https://api.github.com/users/epam/followers","following_url":"https://api.github.com/users/epam/following{/other_user}","gists_url":"https://api.github.com/users/epam/gists{/gist_id}","starred_url":"https://api.github.com/users/epam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/epam/subscriptions","organizations_url":"https://api.github.com/users/epam/orgs","repos_url":"https://api.github.com/users/epam/repos","events_url":"https://api.github.com/users/epam/events{/privacy}","received_events_url":"https://api.github.com/users/epam/received_events","type":"Organization","site_admin":false},"repo":{"id":72222405,"name":"NGB","full_name":"epam/NGB","owner":{"login":"epam","id":1589802,"avatar_url":"https://avatars3.githubusercontent.com/u/1589802?v=4","gravatar_id":"","url":"https://api.github.com/users/epam","html_url":"https://github.com/epam","followers_url":"https://api.github.com/users/epam/followers","following_url":"https://api.github.com/users/epam/following{/other_user}","gists_url":"https://api.github.com/users/epam/gists{/gist_id}","starred_url":"https://api.github.com/users/epam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/epam/subscriptions","organizations_url":"https://api.github.com/users/epam/orgs","repos_url":"https://api.github.com/users/epam/repos","events_url":"https://api.github.com/users/epam/events{/privacy}","received_events_url":"https://api.github.com/users/epam/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/epam/NGB","description":"New Genome Browser (NGB) - a Web - based NGS data viewer with unique Structural Variations (SVs) visualization capabilities, high performance, scalability, and cloud data support","fork":false,"url":"https://api.github.com/repos/epam/NGB","forks_url":"https://api.github.com/repos/epam/NGB/forks","keys_url":"https://api.github.com/repos/epam/NGB/keys{/key_id}","collaborators_url":"https://api.github.com/repos/epam/NGB/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/epam/NGB/teams","hooks_url":"https://api.github.com/repos/epam/NGB/hooks","issue_events_url":"https://api.github.com/repos/epam/NGB/issues/events{/number}","events_url":"https://api.github.com/repos/epam/NGB/events","assignees_url":"https://api.github.com/repos/epam/NGB/assignees{/user}","branches_url":"https://api.github.com/repos/epam/NGB/branches{/branch}","tags_url":"https://api.github.com/repos/epam/NGB/tags","blobs_url":"https://api.github.com/repos/epam/NGB/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/epam/NGB/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/epam/NGB/git/refs{/sha}","trees_url":"https://api.github.com/repos/epam/NGB/git/trees{/sha}","statuses_url":"https://api.github.com/repos/epam/NGB/statuses/{sha}","languages_url":"https://api.github.com/repos/epam/NGB/languages","stargazers_url":"https://api.github.com/repos/epam/NGB/stargazers","contributors_url":"https://api.github.com/repos/epam/NGB/contributors","subscribers_url":"https://api.github.com/repos/epam/NGB/subscribers","subscription_url":"https://api.github.com/repos/epam/NGB/subscription","commits_url":"https://api.github.com/repos/epam/NGB/commits{/sha}","git_commits_url":"https://api.github.com/repos/epam/NGB/git/commits{/sha}","comments_url":"https://api.github.com/repos/epam/NGB/comments{/number}","issue_comment_url":"https://api.github.com/repos/epam/NGB/issues/comments{/number}","contents_url":"https://api.github.com/repos/epam/NGB/contents/{+path}","compare_url":"https://api.github.com/repos/epam/NGB/compare/{base}...{head}","merges_url":"https://api.github.com/repos/epam/NGB/merges","archive_url":"https://api.github.com/repos/epam/NGB/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/epam/NGB/downloads","issues_url":"https://api.github.com/repos/epam/NGB/issues{/number}","pulls_url":"https://api.github.com/repos/epam/NGB/pulls{/number}","milestones_url":"https://api.github.com/repos/epam/NGB/milestones{/number}","notifications_url":"https://api.github.com/repos/epam/NGB/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/epam/NGB/labels{/name}","releases_url":"https://api.github.com/repos/epam/NGB/releases{/id}","deployments_url":"https://api.github.com/repos/epam/NGB/deployments","created_at":"2016-10-28T16:07:22Z","updated_at":"2017-11-09T16:11:34Z","pushed_at":"2017-11-17T11:20:18Z","git_url":"git://github.com/epam/NGB.git","ssh_url":"git@github.com:epam/NGB.git","clone_url":"https://github.com/epam/NGB.git","svn_url":"https://github.com/epam/NGB","homepage":"http://ngb.opensource.epam.com/catgenome","size":33435,"stargazers_count":63,"watchers_count":63,"language":"Java","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":12,"mirror_url":null,"archived":false,"open_issues_count":50,"forks":12,"open_issues":50,"watchers":63,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/epam/NGB/pulls/114"},"html":{"href":"https://github.com/epam/NGB/pull/114"},"issue":{"href":"https://api.github.com/repos/epam/NGB/issues/114"},"comments":{"href":"https://api.github.com/repos/epam/NGB/issues/114/comments"},"review_comments":{"href":"https://api.github.com/repos/epam/NGB/pulls/114/comments"},"review_comment":{"href":"https://api.github.com/repos/epam/NGB/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/epam/NGB/pulls/114/commits"},"statuses":{"href":"https://api.github.com/repos/epam/NGB/statuses/0585f07185fa86b7f3b3856de94b7cebec799730"}},"author_association":"COLLABORATOR"}}
{"actor":{"display_login":"mzueva"}}