{"action":"created","comment":{"url":"https://api.github.com/repos/systers/vms/pulls/comments/207706647","pull_request_review_id":143380535,"id":207706647,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIwNzcwNjY0Nw==","diff_hunk":"@@ -0,0 +1,479 @@\n+# third party\n+from selenium import webdriver\n+from selenium.common.exceptions import NoSuchElementException\n+from selenium.webdriver.support.ui import WebDriverWait\n+from selenium.webdriver.support import expected_conditions as EC\n+from selenium.webdriver.common.by import By\n+\n+# Django\n+from django.contrib.staticfiles.testing import LiveServerTestCase\n+\n+# local Django\n+from pom.pages.authenticationPage import AuthenticationPage\n+from pom.pages.eventSearchPage import EventSearchPage\n+from shift.utils import (create_country, create_city, create_state, create_admin, create_event_with_details,\n+                        create_job_with_details, get_city_by_name, get_state_by_name, get_country_by_name)\n+\n+\n+class SearchEvent(LiveServerTestCase):\n+    \"\"\"\n+    SearchEvent class contains tests to check '/event/search/' view.\n+    Choices of parameters contains\n+    - Name\n+    - Start Date\n+    - End Date\n+    - City\n+    - State\n+    - Country\n+    - Job\n+    Class contains 7 tests to check each parameter separately and also to check\n+    if a combination of parameters entered, then intersection of all results is\n+    obtained.\n+    \"\"\"\n+\n+    @classmethod\n+    def setUpClass(cls):\n+        \"\"\"\n+        Method to initiate class level objects.\n+\n+        This method initiates Firefox WebDriver, WebDriverWait and\n+        the corresponding POM objects for this Test Class\n+        \"\"\"\n+        cls.driver = webdriver.Firefox()\n+        cls.driver.implicitly_wait(5)\n+        cls.driver.maximize_window()\n+        cls.search_page = EventSearchPage(cls.driver)\n+        cls.authentication_page = AuthenticationPage(cls.driver)\n+        cls.wait = WebDriverWait(cls.driver, 10)\n+        super(SearchEvent, cls).setUpClass()\n+\n+    def setUp(self):\n+        \"\"\"\n+        Method consists of statements to be executed before\n+        start of each test\n+        \"\"\"\n+        create_admin()\n+        self.login_admin()\n+        self.wait_for_home_page()\n+\n+    def tearDown(self):\n+        \"\"\"\n+        Method contains statements to be executed at the end of\n+        each test.\n+        \"\"\"\n+        self.authentication_page.logout()\n+\n+    @classmethod\n+    def tearDownClass(cls):\n+        \"\"\"\n+        Class method to quit the Firefox WebDriver session after\n+        execution of all tests in class.\n+        \"\"\"\n+        cls.driver.quit()\n+        super(SearchEvent, cls).tearDownClass()\n+\n+    def login_admin(self):\n+        \"\"\"\n+        Utility function to login an admin user to perform all tests.\n+        \"\"\"\n+        self.authentication_page.server_url = self.live_server_url\n+        self.authentication_page.login({\n+            'username': 'admin',\n+            'password': 'admin'\n+        })\n+\n+    def wait_for_home_page(self):\n+        \"\"\"\n+\n+        \"\"\"\n+        self.wait.until(\n+            EC.presence_of_element_located(\n+                (By.XPATH, \"//h1[contains(text(), 'Volunteer Management System')]\")\n+            )\n+        )\n+\n+    def test_event_name_field(self):\n+        \"\"\"\n+        Test search results for event name\n+        \"\"\"\n+        search_page = self.search_page\n+        search_page.live_server_url = self.live_server_url\n+        search_page.navigate_to_event_search_page()\n+\n+        credentials_1 = ['event-name', '2015-01-01', '2015-03-01']\n+\n+        event_1 = create_event_with_details(credentials_1)\n+\n+        credentials_2 = [\n+            'event-nameq', '2015-02-01', '2015-04-01']\n+\n+        event_2 = create_event_with_details(credentials_2)\n+\n+        expected_result_one = ['event-name', 'Jan.', '1,', '2015', 'March', '1,', '2015', 'Details', 'Edit', 'Delete']\n+        expected_result_two = ['event-nameq', 'Feb.', '1,', '2015', 'April', '1,', '2015', 'Details', 'Edit', 'Delete']\n+\n+        search_page.search_name_field('event')\n+        search_page.submit_form()\n+        search_results = search_page.get_search_results()\n+        result = search_page.get_results_list(search_results)\n+        self.assertEqual(len(result), 2)\n+\n+        self.assertTrue(expected_result_one in result)\n+        self.assertTrue(expected_result_two in result)\n+\n+        search_page.search_name_field('n')\n+        search_page.submit_form()\n+        search_results = search_page.get_search_results()\n+        result = search_page.get_results_list(search_results)\n+        self.assertEqual(len(result), 2)\n+\n+        self.assertTrue(expected_result_one in result)\n+        self.assertTrue(expected_result_two in result)\n+\n+        search_page.search_name_field('eve-')\n+        search_page.submit_form()\n+\n+        self.assertRaisesRegexp(NoSuchElementException,\n+                                'Unable to locate element: //table//tbody',\n+                                search_page.get_search_results)\n+\n+        search_page.search_name_field('event-fail-test')\n+        search_page.submit_form()\n+\n+        self.assertRaisesRegexp(NoSuchElementException,\n+                                'Unable to locate element: //table//tbody',\n+                                search_page.get_search_results)\n+\n+        search_page.search_name_field('!@#$%^&*()_')\n+        search_page.submit_form()\n+        self.assertNotEqual(search_page.get_help_block(), None)\n+\n+    def test_event_start_and_end_date_field(self):\n+        \"\"\"\n+        Test search results for event start date and end date\n+        \"\"\"\n+        search_page = self.search_page\n+        search_page.live_server_url = self.live_server_url\n+        search_page.navigate_to_event_search_page()\n+\n+        credentials_1 = [\n+            'event-name', '2015-01-01', '2015-03-01'\n+        ]\n+\n+        event_1 = create_event_with_details(credentials_1)\n+\n+        credentials_2 = [\n+            'event-nameq', '2015-02-01', '2015-04-01'\n+        ]\n+\n+        event_2 = create_event_with_details(credentials_2)\n+\n+        expected_result_one = ['event-name', 'Jan.', '1,', '2015', 'March', '1,', '2015', 'Details', 'Edit', 'Delete']\n+        expected_result_two = ['event-nameq', 'Feb.', '1,', '2015', 'April', '1,', '2015', 'Details', 'Edit', 'Delete']\n+\n+        # search for events filling only start date\n+        search_page.search_start_date_field('12/01/2015')\n+        search_page.submit_form()\n+        self.assertRaisesRegexp(NoSuchElementException,\n+                                'Unable to locate element: //table//tbody',\n+                                search_page.get_search_results)\n+\n+        # search filling end date only\n+        search_page.navigate_to_event_search_page()\n+        search_page.search_end_date_field('02/15/2015')\n+        search_page.submit_form()\n+        search_results = search_page.get_search_results()\n+        result = search_page.get_results_list(search_results)\n+\n+        self.assertEqual(len(result), 2)\n+        self.assertTrue(expected_result_two in result)\n+        self.assertTrue(expected_result_one in result)\n+\n+        # search filling both start and end date\n+        search_page.navigate_to_event_search_page()\n+        search_page.search_start_date_field('01/01/2015')\n+        search_page.search_end_date_field('01/15/2015')\n+        search_page.submit_form()\n+        search_results = search_page.get_search_results()\n+        result = search_page.get_results_list(search_results)\n+        self.assertEqual(len(result), 1)\n+        self.assertTrue(expected_result_one in result)\n+\n+    def test_event_city_field(self):\n+        \"\"\"\n+        Test search results for event city\n+        \"\"\"\n+        search_page = self.search_page\n+        search_page.live_server_url = self.live_server_url\n+        search_page.navigate_to_event_search_page()\n+\n+        create_country()\n+        create_state()\n+        city = create_city()\n+        credentials_1 = ['event-name', '2015-01-01', '2015-03-01']\n+\n+        event_1 = create_event_with_details(credentials_1)\n+        event_1.city = city\n+        event_1.save()\n+\n+        credentials_2 = [\n+            'event-nameq', '2015-02-01', '2015-04-01']\n+\n+        city_name = 'Bothell'\n+        second_city = get_city_by_name(city_name)\n+        event_2 = create_event_with_details(credentials_2)\n+        event_2.city = second_city\n+        event_2.save()\n+\n+        expected_result_one = ['event-name', 'Jan.', '1,', '2015', 'March', '1,', '2015', 'Details', 'Edit', 'Delete']\n+        expected_result_two = ['event-nameq', 'Feb.', '1,', '2015', 'April', '1,', '2015', 'Details', 'Edit', 'Delete']\n+\n+        search_page.search_city_field('Roorkee')\n+        search_page.submit_form()\n+        search_results = search_page.get_search_results()\n+        result = search_page.get_results_list(search_results)\n+        self.assertEqual(len(result), 1)\n+        self.assertTrue(expected_result_one in result)\n+\n+        search_page.search_city_field('Bothell')\n+        search_page.submit_form()\n+        search_results = search_page.get_search_results()\n+        result = search_page.get_results_list(search_results)\n+        self.assertEqual(len(result), 1)\n+        self.assertTrue(expected_result_two in result)\n+\n+        search_page.search_city_field('eve-')\n+        search_page.submit_form()\n+\n+        self.assertRaisesRegexp(NoSuchElementException,\n+                                'Unable to locate element: //table//tbody',\n+                                search_page.get_search_results)\n+\n+        search_page.search_city_field('event-fail-test')\n+        search_page.submit_form()\n+\n+        self.assertRaisesRegexp(NoSuchElementException,\n+                                'Unable to locate element: //table//tbody',\n+                                search_page.get_search_results)\n+\n+        search_page.search_city_field('!@#$%^&*()_')\n+        search_page.submit_form()\n+        self.assertNotEqual(search_page.get_help_block(), None)\n+\n+    def test_event_state_field(self):\n+        \"\"\"\n+        Test search results for event state field\n+        \"\"\"\n+        search_page = self.search_page\n+        search_page.live_server_url = self.live_server_url\n+        search_page.navigate_to_event_search_page()\n+\n+        credentials_1 = ['event-name', '2015-01-01', '2015-03-01']\n+        event_1 = create_event_with_details(credentials_1)\n+        create_country()\n+        state = create_state()\n+        event_1.state = state\n+        event_1.save()\n+\n+        credentials_2 = [\n+            'event-nameq', '2015-02-01', '2015-04-01']\n+        event_2 = create_event_with_details(credentials_2)\n+\n+        state_name = 'Washington'\n+        second_state = get_state_by_name(state_name)\n+        event_2.state = second_state\n+        event_2.save()\n+\n+        expected_result_one = ['event-name', 'Jan.', '1,', '2015', 'March', '1,', '2015', 'Details', 'Edit', 'Delete']\n+        expected_result_two = ['event-nameq', 'Feb.', '1,', '2015', 'April', '1,', '2015', 'Details', 'Edit', 'Delete']\n+\n+        search_page.search_state_field('Uttarakhand')\n+        search_page.submit_form()\n+        search_results = search_page.get_search_results()\n+        result = search_page.get_results_list(search_results)\n+        self.assertEqual(len(result), 1)\n+        self.assertTrue(expected_result_one in result)\n+\n+        search_page.search_state_field('Washington')\n+        search_page.submit_form()\n+        search_results = search_page.get_search_results()\n+        result = search_page.get_results_list(search_results)\n+        self.assertEqual(len(result), 1)\n+        self.assertTrue(expected_result_two in result)\n+\n+        search_page.search_state_field('eve-')\n+        search_page.submit_form()\n+        self.assertRaisesRegexp(NoSuchElementException,\n+                                'Unable to locate element: //table//tbody',\n+                                search_page.get_search_results)\n+\n+        search_page.search_state_field('event-fail-test')\n+        search_page.submit_form()\n+        self.assertRaisesRegexp(NoSuchElementException,\n+                                'Unable to locate element: //table//tbody',\n+                                search_page.get_search_results)\n+\n+        search_page.search_state_field('!@#$%^&*()_')\n+        search_page.submit_form()\n+        self.assertNotEqual(search_page.get_help_block(), None)\n+\n+    def test_event_country_field(self):\n+        \"\"\"\n+        Test search results for event country field\n+        \"\"\"\n+        search_page = self.search_page\n+        search_page.live_server_url = self.live_server_url\n+        search_page.navigate_to_event_search_page()\n+\n+        credentials_1 = ['event-name', '2015-01-01', '2015-03-01']\n+\n+        country = create_country()\n+        event_1 = create_event_with_details(credentials_1)\n+        event_1.country = country\n+        event_1.save()\n+\n+        credentials_2 = [\n+            'event-nameq', '2015-02-01', '2015-04-01']\n+\n+        country_name = 'United States'\n+        second_country = get_country_by_name(country_name)\n+        event_2 = create_event_with_details(credentials_2)\n+        event_2.country = second_country\n+        event_2.save()\n+\n+        expected_result_one = ['event-name', 'Jan.', '1,', '2015', 'March', '1,', '2015', 'Details', 'Edit', 'Delete']\n+        expected_result_two = ['event-nameq', 'Feb.', '1,', '2015', 'April', '1,', '2015', 'Details', 'Edit', 'Delete']\n+\n+        search_page.search_country_field('India')\n+        search_page.submit_form()\n+        search_results = search_page.get_search_results()\n+        result = search_page.get_results_list(search_results)\n+        self.assertEqual(len(result), 1)\n+        self.assertTrue(expected_result_one in result)\n+\n+        search_page.search_country_field('United States')\n+        search_page.submit_form()\n+        search_results = search_page.get_search_results()\n+        result = search_page.get_results_list(search_results)\n+        self.assertEqual(len(result), 1)\n+        self.assertTrue(expected_result_two in result)\n+\n+        search_page.search_country_field('eve-')\n+        search_page.submit_form()\n+        self.assertRaisesRegexp(NoSuchElementException,\n+                                'Unable to locate element: //table//tbody',\n+                                search_page.get_search_results)\n+\n+        search_page.search_country_field('event-fail-test')\n+        search_page.submit_form()\n+        self.assertRaisesRegexp(NoSuchElementException,\n+                                'Unable to locate element: //table//tbody',\n+                                search_page.get_search_results)\n+\n+        search_page.search_country_field('!@#$%^&*()_')\n+        search_page.submit_form()\n+        self.assertNotEqual(search_page.get_help_block(), None)\n+\n+\n+    def test_event_job_field(self):\n+        \"\"\"\n+        Test search results for event job field\n+        \"\"\"\n+        search_page = self.search_page\n+        search_page.live_server_url = self.live_server_url\n+\n+        credentials_1 = ['event-name', '2015-01-01', '2015-03-01']\n+\n+        event_1 = create_event_with_details(credentials_1)\n+\n+        credentials_2 = [\n+            'event-nameq', '2015-02-01', '2015-04-01']\n+        event_2 = create_event_with_details(credentials_2)\n+\n+        expected_result_one = ['event-name', 'Jan.', '1,', '2015', 'March', '1,', '2015', 'Details', 'Edit', 'Delete']\n+        expected_result_two = ['event-nameq', 'Feb.', '1,', '2015', 'April', '1,', '2015', 'Details', 'Edit', 'Delete']\n+\n+        # job_1 for event_1, job_2 for event_2\n+        job = ['job-name', '2015-02-01', '2015-02-15', 'job-description', event_1]\n+        job_1 = create_job_with_details(job)\n+\n+        job = ['job-nameq', '2015-02-02', '2015-02-15', 'job-descriptionq', event_2]\n+        job_2 = create_job_with_details(job)","path":"vms/event/tests/test_searchEvent.py","position":401,"original_position":401,"commit_id":"45cbf78aaceff27d45ca69c0f1f64050998e6f89","original_commit_id":"45cbf78aaceff27d45ca69c0f1f64050998e6f89","user":{"login":"codacy-bot","id":19940114,"node_id":"MDQ6VXNlcjE5OTQwMTE0","avatar_url":"https://avatars1.githubusercontent.com/u/19940114?v=4","gravatar_id":"","url":"https://api.github.com/users/codacy-bot","html_url":"https://github.com/codacy-bot","followers_url":"https://api.github.com/users/codacy-bot/followers","following_url":"https://api.github.com/users/codacy-bot/following{/other_user}","gists_url":"https://api.github.com/users/codacy-bot/gists{/gist_id}","starred_url":"https://api.github.com/users/codacy-bot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/codacy-bot/subscriptions","organizations_url":"https://api.github.com/users/codacy-bot/orgs","repos_url":"https://api.github.com/users/codacy-bot/repos","events_url":"https://api.github.com/users/codacy-bot/events{/privacy}","received_events_url":"https://api.github.com/users/codacy-bot/received_events","type":"User","site_admin":false},"body":"![Codacy](https://app.codacy.com/assets/images/favicon.png) Issue found: [Unused variable 'job_2'](https://app.codacy.com/app/systers-opensource/vms/pullRequest?prid=1997454)","created_at":"2018-08-04T11:35:19Z","updated_at":"2018-08-04T11:35:19Z","html_url":"https://github.com/systers/vms/pull/845#discussion_r207706647","pull_request_url":"https://api.github.com/repos/systers/vms/pulls/845","author_association":"NONE","_links":{"self":{"href":"https://api.github.com/repos/systers/vms/pulls/comments/207706647"},"html":{"href":"https://github.com/systers/vms/pull/845#discussion_r207706647"},"pull_request":{"href":"https://api.github.com/repos/systers/vms/pulls/845"}}},"pull_request":{"url":"https://api.github.com/repos/systers/vms/pulls/845","id":206188707,"node_id":"MDExOlB1bGxSZXF1ZXN0MjA2MTg4NzA3","html_url":"https://github.com/systers/vms/pull/845","diff_url":"https://github.com/systers/vms/pull/845.diff","patch_url":"https://github.com/systers/vms/pull/845.patch","issue_url":"https://api.github.com/repos/systers/vms/issues/845","number":845,"state":"open","locked":false,"title":"Sync infra with code","user":{"login":"Monal5031","id":21009189,"node_id":"MDQ6VXNlcjIxMDA5MTg5","avatar_url":"https://avatars0.githubusercontent.com/u/21009189?v=4","gravatar_id":"","url":"https://api.github.com/users/Monal5031","html_url":"https://github.com/Monal5031","followers_url":"https://api.github.com/users/Monal5031/followers","following_url":"https://api.github.com/users/Monal5031/following{/other_user}","gists_url":"https://api.github.com/users/Monal5031/gists{/gist_id}","starred_url":"https://api.github.com/users/Monal5031/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Monal5031/subscriptions","organizations_url":"https://api.github.com/users/Monal5031/orgs","repos_url":"https://api.github.com/users/Monal5031/repos","events_url":"https://api.github.com/users/Monal5031/events{/privacy}","received_events_url":"https://api.github.com/users/Monal5031/received_events","type":"User","site_admin":false},"body":"# Description\r\nSync infra branch with commits from code branch and solving merge conflicts which have arrived.\r\n\r\n\r\n# Type of Change:\r\n\r\n- Code\r\n\r\n**Code/Quality Assurance Only**\r\n- Bug fix (non-breaking change which fixes an issue)\r\n- This change requires a documentation update (software upgrade on readme file)\r\n- New feature (non-breaking change which adds functionality pre-approved by mentors)\r\n\r\n\r\n\r\n# How Has This Been Tested?\r\nN/A\r\n\r\n\r\n# Checklist:\r\n**Delete irrelevant options.**\r\n\r\n- [ ] My PR follows the style guidelines of this project\r\n- [ ] I have performed a self-review of my own code or materials\r\n- [ ] I have commented my code or provided relevant documentation, particularly in hard-to-understand areas\r\n- [ ] I have made corresponding changes to the documentation\r\n- [ ] Any dependent changes have been merged \r\n\r\n**Code/Quality Assurance Only**\r\n- [ ] My changes generate no new warnings \r\n- [ ] My PR currently breaks something (fix or feature that would cause existing functionality to not work as expected)\r\n- [ ] I have added tests that prove my fix is effective or that my feature works\r\n- [ ] New and existing unit tests pass locally with my changes\r\n- [ ] Any dependent changes have been published in downstream modules\r\n","created_at":"2018-08-04T11:32:01Z","updated_at":"2018-08-04T11:35:19Z","closed_at":null,"merged_at":null,"merge_commit_sha":"9629bd069fe623e205aa6b8ee80ba3fbc3dc9540","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/systers/vms/pulls/845/commits","review_comments_url":"https://api.github.com/repos/systers/vms/pulls/845/comments","review_comment_url":"https://api.github.com/repos/systers/vms/pulls/comments{/number}","comments_url":"https://api.github.com/repos/systers/vms/issues/845/comments","statuses_url":"https://api.github.com/repos/systers/vms/statuses/45cbf78aaceff27d45ca69c0f1f64050998e6f89","head":{"label":"Monal5031:sync-infra-with-code","ref":"sync-infra-with-code","sha":"45cbf78aaceff27d45ca69c0f1f64050998e6f89","user":{"login":"Monal5031","id":21009189,"node_id":"MDQ6VXNlcjIxMDA5MTg5","avatar_url":"https://avatars0.githubusercontent.com/u/21009189?v=4","gravatar_id":"","url":"https://api.github.com/users/Monal5031","html_url":"https://github.com/Monal5031","followers_url":"https://api.github.com/users/Monal5031/followers","following_url":"https://api.github.com/users/Monal5031/following{/other_user}","gists_url":"https://api.github.com/users/Monal5031/gists{/gist_id}","starred_url":"https://api.github.com/users/Monal5031/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Monal5031/subscriptions","organizations_url":"https://api.github.com/users/Monal5031/orgs","repos_url":"https://api.github.com/users/Monal5031/repos","events_url":"https://api.github.com/users/Monal5031/events{/privacy}","received_events_url":"https://api.github.com/users/Monal5031/received_events","type":"User","site_admin":false},"repo":{"id":121634682,"node_id":"MDEwOlJlcG9zaXRvcnkxMjE2MzQ2ODI=","name":"vms","full_name":"Monal5031/vms","owner":{"login":"Monal5031","id":21009189,"node_id":"MDQ6VXNlcjIxMDA5MTg5","avatar_url":"https://avatars0.githubusercontent.com/u/21009189?v=4","gravatar_id":"","url":"https://api.github.com/users/Monal5031","html_url":"https://github.com/Monal5031","followers_url":"https://api.github.com/users/Monal5031/followers","following_url":"https://api.github.com/users/Monal5031/following{/other_user}","gists_url":"https://api.github.com/users/Monal5031/gists{/gist_id}","starred_url":"https://api.github.com/users/Monal5031/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Monal5031/subscriptions","organizations_url":"https://api.github.com/users/Monal5031/orgs","repos_url":"https://api.github.com/users/Monal5031/repos","events_url":"https://api.github.com/users/Monal5031/events{/privacy}","received_events_url":"https://api.github.com/users/Monal5031/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/Monal5031/vms","description":"Volunteer Management System","fork":true,"url":"https://api.github.com/repos/Monal5031/vms","forks_url":"https://api.github.com/repos/Monal5031/vms/forks","keys_url":"https://api.github.com/repos/Monal5031/vms/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Monal5031/vms/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Monal5031/vms/teams","hooks_url":"https://api.github.com/repos/Monal5031/vms/hooks","issue_events_url":"https://api.github.com/repos/Monal5031/vms/issues/events{/number}","events_url":"https://api.github.com/repos/Monal5031/vms/events","assignees_url":"https://api.github.com/repos/Monal5031/vms/assignees{/user}","branches_url":"https://api.github.com/repos/Monal5031/vms/branches{/branch}","tags_url":"https://api.github.com/repos/Monal5031/vms/tags","blobs_url":"https://api.github.com/repos/Monal5031/vms/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Monal5031/vms/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Monal5031/vms/git/refs{/sha}","trees_url":"https://api.github.com/repos/Monal5031/vms/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Monal5031/vms/statuses/{sha}","languages_url":"https://api.github.com/repos/Monal5031/vms/languages","stargazers_url":"https://api.github.com/repos/Monal5031/vms/stargazers","contributors_url":"https://api.github.com/repos/Monal5031/vms/contributors","subscribers_url":"https://api.github.com/repos/Monal5031/vms/subscribers","subscription_url":"https://api.github.com/repos/Monal5031/vms/subscription","commits_url":"https://api.github.com/repos/Monal5031/vms/commits{/sha}","git_commits_url":"https://api.github.com/repos/Monal5031/vms/git/commits{/sha}","comments_url":"https://api.github.com/repos/Monal5031/vms/comments{/number}","issue_comment_url":"https://api.github.com/repos/Monal5031/vms/issues/comments{/number}","contents_url":"https://api.github.com/repos/Monal5031/vms/contents/{+path}","compare_url":"https://api.github.com/repos/Monal5031/vms/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Monal5031/vms/merges","archive_url":"https://api.github.com/repos/Monal5031/vms/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Monal5031/vms/downloads","issues_url":"https://api.github.com/repos/Monal5031/vms/issues{/number}","pulls_url":"https://api.github.com/repos/Monal5031/vms/pulls{/number}","milestones_url":"https://api.github.com/repos/Monal5031/vms/milestones{/number}","notifications_url":"https://api.github.com/repos/Monal5031/vms/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Monal5031/vms/labels{/name}","releases_url":"https://api.github.com/repos/Monal5031/vms/releases{/id}","deployments_url":"https://api.github.com/repos/Monal5031/vms/deployments","created_at":"2018-02-15T13:45:58Z","updated_at":"2018-08-02T08:45:03Z","pushed_at":"2018-08-04T11:30:40Z","git_url":"git://github.com/Monal5031/vms.git","ssh_url":"git@github.com:Monal5031/vms.git","clone_url":"https://github.com/Monal5031/vms.git","svn_url":"https://github.com/Monal5031/vms","homepage":null,"size":3123,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"gpl-2.0","name":"GNU General Public License v2.0","spdx_id":"GPL-2.0","url":"https://api.github.com/licenses/gpl-2.0","node_id":"MDc6TGljZW5zZTg="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"develop"}},"base":{"label":"systers:gsoc18-infra","ref":"gsoc18-infra","sha":"26ee7ecfa397c2dbaab24b2beb112afe680cc72b","user":{"login":"systers","id":6520415,"node_id":"MDEyOk9yZ2FuaXphdGlvbjY1MjA0MTU=","avatar_url":"https://avatars0.githubusercontent.com/u/6520415?v=4","gravatar_id":"","url":"https://api.github.com/users/systers","html_url":"https://github.com/systers","followers_url":"https://api.github.com/users/systers/followers","following_url":"https://api.github.com/users/systers/following{/other_user}","gists_url":"https://api.github.com/users/systers/gists{/gist_id}","starred_url":"https://api.github.com/users/systers/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/systers/subscriptions","organizations_url":"https://api.github.com/users/systers/orgs","repos_url":"https://api.github.com/users/systers/repos","events_url":"https://api.github.com/users/systers/events{/privacy}","received_events_url":"https://api.github.com/users/systers/received_events","type":"Organization","site_admin":false},"repo":{"id":19032264,"node_id":"MDEwOlJlcG9zaXRvcnkxOTAzMjI2NA==","name":"vms","full_name":"systers/vms","owner":{"login":"systers","id":6520415,"node_id":"MDEyOk9yZ2FuaXphdGlvbjY1MjA0MTU=","avatar_url":"https://avatars0.githubusercontent.com/u/6520415?v=4","gravatar_id":"","url":"https://api.github.com/users/systers","html_url":"https://github.com/systers","followers_url":"https://api.github.com/users/systers/followers","following_url":"https://api.github.com/users/systers/following{/other_user}","gists_url":"https://api.github.com/users/systers/gists{/gist_id}","starred_url":"https://api.github.com/users/systers/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/systers/subscriptions","organizations_url":"https://api.github.com/users/systers/orgs","repos_url":"https://api.github.com/users/systers/repos","events_url":"https://api.github.com/users/systers/events{/privacy}","received_events_url":"https://api.github.com/users/systers/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/systers/vms","description":"Volunteer Management System","fork":false,"url":"https://api.github.com/repos/systers/vms","forks_url":"https://api.github.com/repos/systers/vms/forks","keys_url":"https://api.github.com/repos/systers/vms/keys{/key_id}","collaborators_url":"https://api.github.com/repos/systers/vms/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/systers/vms/teams","hooks_url":"https://api.github.com/repos/systers/vms/hooks","issue_events_url":"https://api.github.com/repos/systers/vms/issues/events{/number}","events_url":"https://api.github.com/repos/systers/vms/events","assignees_url":"https://api.github.com/repos/systers/vms/assignees{/user}","branches_url":"https://api.github.com/repos/systers/vms/branches{/branch}","tags_url":"https://api.github.com/repos/systers/vms/tags","blobs_url":"https://api.github.com/repos/systers/vms/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/systers/vms/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/systers/vms/git/refs{/sha}","trees_url":"https://api.github.com/repos/systers/vms/git/trees{/sha}","statuses_url":"https://api.github.com/repos/systers/vms/statuses/{sha}","languages_url":"https://api.github.com/repos/systers/vms/languages","stargazers_url":"https://api.github.com/repos/systers/vms/stargazers","contributors_url":"https://api.github.com/repos/systers/vms/contributors","subscribers_url":"https://api.github.com/repos/systers/vms/subscribers","subscription_url":"https://api.github.com/repos/systers/vms/subscription","commits_url":"https://api.github.com/repos/systers/vms/commits{/sha}","git_commits_url":"https://api.github.com/repos/systers/vms/git/commits{/sha}","comments_url":"https://api.github.com/repos/systers/vms/comments{/number}","issue_comment_url":"https://api.github.com/repos/systers/vms/issues/comments{/number}","contents_url":"https://api.github.com/repos/systers/vms/contents/{+path}","compare_url":"https://api.github.com/repos/systers/vms/compare/{base}...{head}","merges_url":"https://api.github.com/repos/systers/vms/merges","archive_url":"https://api.github.com/repos/systers/vms/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/systers/vms/downloads","issues_url":"https://api.github.com/repos/systers/vms/issues{/number}","pulls_url":"https://api.github.com/repos/systers/vms/pulls{/number}","milestones_url":"https://api.github.com/repos/systers/vms/milestones{/number}","notifications_url":"https://api.github.com/repos/systers/vms/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/systers/vms/labels{/name}","releases_url":"https://api.github.com/repos/systers/vms/releases{/id}","deployments_url":"https://api.github.com/repos/systers/vms/deployments","created_at":"2014-04-22T14:13:57Z","updated_at":"2018-08-02T21:15:03Z","pushed_at":"2018-08-04T11:32:02Z","git_url":"git://github.com/systers/vms.git","ssh_url":"git@github.com:systers/vms.git","clone_url":"https://github.com/systers/vms.git","svn_url":"https://github.com/systers/vms","homepage":"","size":3389,"stargazers_count":61,"watchers_count":61,"language":"Python","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":150,"mirror_url":null,"archived":false,"open_issues_count":75,"license":{"key":"gpl-2.0","name":"GNU General Public License v2.0","spdx_id":"GPL-2.0","url":"https://api.github.com/licenses/gpl-2.0","node_id":"MDc6TGljZW5zZTg="},"forks":150,"open_issues":75,"watchers":61,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/systers/vms/pulls/845"},"html":{"href":"https://github.com/systers/vms/pull/845"},"issue":{"href":"https://api.github.com/repos/systers/vms/issues/845"},"comments":{"href":"https://api.github.com/repos/systers/vms/issues/845/comments"},"review_comments":{"href":"https://api.github.com/repos/systers/vms/pulls/845/comments"},"review_comment":{"href":"https://api.github.com/repos/systers/vms/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/systers/vms/pulls/845/commits"},"statuses":{"href":"https://api.github.com/repos/systers/vms/statuses/45cbf78aaceff27d45ca69c0f1f64050998e6f89"}},"author_association":"MEMBER"}}
{"actor":{"display_login":"codacy-bot"}}