Exemplo n.º 1
0
 def test_submission_rescan_text(self):
     with patch('polyswarm_api.api.PolyswarmAPI.rescan', return_value=mock_polyswarm_api_results.instances(self)[0]), \
          patch('polyswarm_api.api.PolyswarmAPI.lookup', return_value=mock_polyswarm_api_results.instances(self)[0]):
         result = self._run_cli([
             '--output-format', 'text', '-c', 'gamma', 'rescan',
             '275a021bbfb6489e54d471899f7db9d1663fc695ec2fe2a2c4538aabf651fd0f'
         ])
     self._assert_text_result(
         result,
         expected_output=mock_polyswarm_api_results.text_instances()[0],
         expected_return_code=0,
     )
Exemplo n.º 2
0
 def test_search_metadata_with_json_output(self):
     with patch(
             'polyswarm_api.api.PolyswarmAPI.search_by_metadata',
             return_value=[mock_polyswarm_api_results.instances(self)[0]]):
         result = self._run_cli([
             '--output-format', 'json', 'search', 'metadata',
             'hash.sha256:' + self.test_hash_value
         ])
     self._assert_json_result(
         result,
         expected_output=mock_polyswarm_api_results.instances(self)[0].json,
         expected_return_code=0)
Exemplo n.º 3
0
 def test_submission_rescan_id_json(self):
     with patch('polyswarm_api.api.PolyswarmAPI.rescan_id', return_value=mock_polyswarm_api_results.instances(self)[0]), \
          patch('polyswarm_api.api.PolyswarmAPI.lookup', return_value=mock_polyswarm_api_results.instances(self)[0]):
         result = self._run_cli([
             '--output-format', 'json', '-c', 'gamma', 'rescan-id',
             '11611818710765483'
         ])
     self._assert_json_result(
         result,
         expected_output=mock_polyswarm_api_results.instances(self)[0].json,
         expected_return_code=0,
     )
Exemplo n.º 4
0
 def test_submission_lookup_json(self):
     with patch('polyswarm_api.api.PolyswarmAPI.submit', return_value=mock_polyswarm_api_results.instances(self)[0]), \
          patch('polyswarm_api.api.PolyswarmAPI.lookup', return_value=mock_polyswarm_api_results.instances(self)[0]):
         result = self._run_cli([
             '--output-format', 'json', '-c', 'gamma', 'lookup',
             '49091542211453596'
         ])
     self._assert_json_result(
         result,
         expected_output=mock_polyswarm_api_results.instances(self)[0].json,
         expected_return_code=0,
     )
Exemplo n.º 5
0
 def test_submission_create_text(self):
     with patch('polyswarm_api.api.PolyswarmAPI.submit', return_value=mock_polyswarm_api_results.instances(self)[0]), \
          patch('polyswarm_api.api.PolyswarmAPI.lookup', return_value=mock_polyswarm_api_results.instances(self)[0]):
         result = self._run_cli([
             '--output-format', 'text', '-c', 'gamma', 'scan', 'file',
             self._get_test_resource_file_path('malicious')
         ])
     self._assert_text_result(
         result,
         expected_output=mock_polyswarm_api_results.text_instances()[0],
         expected_return_code=0,
     )
Exemplo n.º 6
0
    def test_search_hash(self):
        url = 'https://api.polyswarm.network/v2/search/hash/sha256?hash=275a021bbfb6489e54d471899f7db9d1663fc695ec2fe2a2c4538aabf651fd0f'
        responses.add(responses.GET, url, body=self.mock_search_response_page1)
        result = self._run_cli([
            '--output-format', 'json', 'search', 'hash', self.test_hash_value
        ])

        self._assert_json_result(
            result,
            expected_output=mock_polyswarm_api_results.instances(self)[0].json,
            expected_return_code=0)
Exemplo n.º 7
0
 def test_search_hash_with_text_output(self):
     with patch(
             'polyswarm_api.api.PolyswarmAPI.search',
             return_value=[mock_polyswarm_api_results.instances(self)[0]]):
         result = self._run_cli([
             '--output-format', 'text', 'search', 'hash',
             self.test_hash_value
         ])
     self._assert_text_result(
         result,
         expected_output=mock_polyswarm_api_results.text_instances()[0],
         expected_return_code=0,
     )
Exemplo n.º 8
0
    def test_scan_submission_lookup(self):
        url = 'https://api.polyswarm.network/v2/consumer/submission/lima/49091542211453596'
        responses.add(responses.GET, url, body=self.mock_submission_response)

        result = self._run_cli([
            '--output-format', 'json', '-c', self.community, 'lookup',
            self.test_submission_uuid
        ])

        self._assert_json_result(
            result,
            expected_output=mock_polyswarm_api_results.instances(self)[0].json,
            expected_return_code=0,
        )
Exemplo n.º 9
0
    def __init__(self, *args, **kwargs):
        super(IntegrationTest, self).__init__(*args, **kwargs)
        self.mock_search_response_page1 = self._create_response(
            [mock_polyswarm_api_results.instances(self)[0].json],
            offset=1,
            limit=1,
            has_more=False)

        self.mock_metadata_search_response = self._create_response(
            [mock_polyswarm_api_results.metadata(self)[0].json],
            offset=1,
            limit=1,
            has_more=False)

        self.mock_submission_response = \
            self._create_response(mock_polyswarm_api_results.instances(self)[0].json)

        self.mock_hunt_live_results_response_page1 = \
            self._create_response([mock_polyswarm_api_results.live_results(self)[0].json], offset=1, limit=1, has_more=False)

        self.mock_hunt_historical_results_response_page1 = \
            self._create_response([mock_polyswarm_api_results.historical_results(self)[0].json], offset=1, limit=1, has_more=False)

        self.mock_hunt_response = self._create_response(
            mock_polyswarm_api_results.hunts(self)[0].json)
        self.mock_hunt_response_page1 = self._create_response(
            [mock_polyswarm_api_results.hunts(self)[0].json],
            offset=1,
            limit=1,
            has_more=False)

        self.mock_stream_response_page1 = self._create_response([
            mock_polyswarm_api_results.stream_results(self.test_s3_file_url)[0]
        ],
                                                                offset=1,
                                                                limit=1,
                                                                has_more=False)
Exemplo n.º 10
0
    def test_scan_submission_rescan(self):
        url = 'https://api.polyswarm.network/v2/consumer/submission/lima/rescan/sha256/275a021bbfb6489e54d471899f7db9d1663fc695ec2fe2a2c4538aabf651fd0f'
        responses.add(responses.POST, url, body=self.mock_submission_response)
        url = 'https://api.polyswarm.network/v2/consumer/submission/lima/49091542211453596'
        responses.add(responses.GET, url, body=self.mock_submission_response)

        result = self._run_cli([
            '--output-format', 'json', '-c', self.community, 'rescan',
            self.test_hash_value
        ])

        self._assert_json_result(
            result,
            expected_output=mock_polyswarm_api_results.instances(self)[0].json,
            expected_return_code=0,
        )
Exemplo n.º 11
0
    def test_scan_submission_create(self):
        url = 'https://api.polyswarm.network/v2/consumer/submission/lima/49091542211453596'
        responses.add(responses.GET, url, body=self.mock_submission_response)
        url = 'https://api.polyswarm.network/v2/consumer/submission/lima'
        responses.add(responses.POST, url, body=self.mock_submission_response)

        malicious_file = self._get_test_resource_file_path('malicious')
        result = self._run_cli([
            '--output-format', 'json', '-c', self.community, 'scan', 'file',
            malicious_file
        ])

        self._assert_json_result(
            result,
            expected_output=mock_polyswarm_api_results.instances(self)[0].json,
            expected_return_code=0,
        )