virustotal_api 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1 @@
1
+
@@ -0,0 +1,110 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://www.virustotal.com/vtapi/v2/file/report
6
+ body:
7
+ encoding: UTF-8
8
+ string: apikey=testapikey&resource=01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.9.0
12
+ Content-Type:
13
+ - application/x-www-form-urlencoded
14
+ Accept-Encoding:
15
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
+ Accept:
17
+ - "*/*"
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ Cache-Control:
24
+ - no-cache
25
+ Content-Type:
26
+ - application/json
27
+ Vary:
28
+ - Accept-Encoding
29
+ Date:
30
+ - Sun, 14 Dec 2014 04:14:07 GMT
31
+ Server:
32
+ - Google Frontend
33
+ Transfer-Encoding:
34
+ - chunked
35
+ body:
36
+ encoding: UTF-8
37
+ string: '{"scans": {"Bkav": {"detected": false, "version": "1.3.0.6267", "result":
38
+ null, "update": "20141206"}, "MicroWorld-eScan": {"detected": false, "version":
39
+ "12.0.250.0", "result": null, "update": "20141208"}, "nProtect": {"detected":
40
+ false, "version": "2014-12-05.01", "result": null, "update": "20141205"},
41
+ "CMC": {"detected": false, "version": "1.1.0.977", "result": null, "update":
42
+ "20141206"}, "CAT-QuickHeal": {"detected": false, "version": "14.00", "result":
43
+ null, "update": "20141208"}, "ALYac": {"detected": false, "version": "1.0.1.4",
44
+ "result": null, "update": "20141208"}, "Malwarebytes": {"detected": false,
45
+ "version": "1.75.0.1", "result": null, "update": "20141208"}, "Zillya": {"detected":
46
+ false, "version": "2.0.0.2000", "result": null, "update": "20141206"}, "SUPERAntiSpyware":
47
+ {"detected": false, "version": "5.6.0.1032", "result": null, "update": "20141207"},
48
+ "TheHacker": {"detected": false, "version": "6.8.0.5.498", "result": null,
49
+ "update": "20141205"}, "K7GW": {"detected": false, "version": "9.186.14262",
50
+ "result": null, "update": "20141208"}, "K7AntiVirus": {"detected": false,
51
+ "version": "9.186.14262", "result": null, "update": "20141208"}, "Agnitum":
52
+ {"detected": false, "version": "5.5.1.3", "result": null, "update": "20141205"},
53
+ "F-Prot": {"detected": false, "version": "4.7.1.166", "result": null, "update":
54
+ "20141208"}, "Symantec": {"detected": false, "version": "20141.1.0.330", "result":
55
+ null, "update": "20141208"}, "Norman": {"detected": false, "version": "7.04.04",
56
+ "result": null, "update": "20141208"}, "TotalDefense": {"detected": false,
57
+ "version": "37.0.11318", "result": null, "update": "20141207"}, "TrendMicro-HouseCall":
58
+ {"detected": false, "version": "9.700.0.1001", "result": null, "update": "20141208"},
59
+ "Avast": {"detected": false, "version": "8.0.1489.320", "result": null, "update":
60
+ "20141208"}, "ClamAV": {"detected": false, "version": "0.98.5.0", "result":
61
+ null, "update": "20141208"}, "Kaspersky": {"detected": false, "version": "15.0.1.10",
62
+ "result": null, "update": "20141208"}, "BitDefender": {"detected": false,
63
+ "version": "7.2", "result": null, "update": "20141208"}, "NANO-Antivirus":
64
+ {"detected": false, "version": "0.28.6.63850", "result": null, "update": "20141208"},
65
+ "AegisLab": {"detected": false, "version": "1.5", "result": null, "update":
66
+ "20141208"}, "ByteHero": {"detected": false, "version": "1.0.0.1", "result":
67
+ null, "update": "20141208"}, "Tencent": {"detected": false, "version": "1.0.0.1",
68
+ "result": null, "update": "20141208"}, "Ad-Aware": {"detected": false, "version":
69
+ "12.0.163.0", "result": null, "update": "20141208"}, "Comodo": {"detected":
70
+ false, "version": "20303", "result": null, "update": "20141208"}, "F-Secure":
71
+ {"detected": false, "version": "11.0.19100.45", "result": null, "update":
72
+ "20141207"}, "DrWeb": {"detected": false, "version": "7.0.10.8210", "result":
73
+ null, "update": "20141208"}, "VIPRE": {"detected": false, "version": "35530",
74
+ "result": null, "update": "20141208"}, "TrendMicro": {"detected": false, "version":
75
+ "9.740.0.1012", "result": null, "update": "20141208"}, "McAfee-GW-Edition":
76
+ {"detected": false, "version": "v2014.2", "result": null, "update": "20141208"},
77
+ "Sophos": {"detected": false, "version": "4.98.0", "result": null, "update":
78
+ "20141208"}, "Cyren": {"detected": false, "version": "5.4.1.7", "result":
79
+ null, "update": "20141208"}, "Jiangmin": {"detected": false, "version": "16.0.100",
80
+ "result": null, "update": "20141207"}, "Avira": {"detected": false, "version":
81
+ "7.11.193.118", "result": null, "update": "20141208"}, "Antiy-AVL": {"detected":
82
+ false, "version": "1.0.0.1", "result": null, "update": "20141208"}, "Kingsoft":
83
+ {"detected": false, "version": "2013.4.9.267", "result": null, "update": "20141208"},
84
+ "Microsoft": {"detected": false, "version": "1.11202", "result": null, "update":
85
+ "20141208"}, "ViRobot": {"detected": false, "version": "2014.3.20.0", "result":
86
+ null, "update": "20141208"}, "GData": {"detected": false, "version": "24",
87
+ "result": null, "update": "20141208"}, "AhnLab-V3": {"detected": false, "version":
88
+ "2014.12.08.04", "result": null, "update": "20141208"}, "McAfee": {"detected":
89
+ false, "version": "6.0.5.614", "result": null, "update": "20141208"}, "AVware":
90
+ {"detected": false, "version": "1.5.0.21", "result": null, "update": "20141208"},
91
+ "VBA32": {"detected": false, "version": "3.12.26.3", "result": null, "update":
92
+ "20141205"}, "Baidu-International": {"detected": false, "version": "3.5.1.41473",
93
+ "result": null, "update": "20141208"}, "Zoner": {"detected": false, "version":
94
+ "1.0", "result": null, "update": "20141204"}, "ESET-NOD32": {"detected": false,
95
+ "version": "10842", "result": null, "update": "20141208"}, "Rising": {"detected":
96
+ false, "version": "25.0.0.17", "result": null, "update": "20141207"}, "Ikarus":
97
+ {"detected": false, "version": "T3.1.8.5.0", "result": null, "update": "20141208"},
98
+ "Fortinet": {"detected": false, "version": "5.0.999.0", "result": null, "update":
99
+ "20141208"}, "AVG": {"detected": false, "version": "15.0.0.4235", "result":
100
+ null, "update": "20141208"}, "Panda": {"detected": false, "version": "4.6.4.2",
101
+ "result": null, "update": "20141208"}, "Qihoo-360": {"detected": false, "version":
102
+ "1.0.0.1015", "result": null, "update": "20141208"}}, "scan_id": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b-1418032127",
103
+ "sha1": "adc83b19e793491b1c6ea0fd8b46cd9f32e592fc", "resource": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b",
104
+ "response_code": 1, "scan_date": "2014-12-08 09:48:47", "permalink": "https://www.virustotal.com/file/01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b/analysis/1418032127/",
105
+ "verbose_msg": "Scan finished, information embedded", "total": 55, "positives":
106
+ 0, "sha256": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b",
107
+ "md5": "68b329da9893e34099c7d8ad5cb9c940"}'
108
+ http_version:
109
+ recorded_at: Sun, 14 Dec 2014 04:19:44 GMT
110
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,42 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://www.virustotal.com/vtapi/v2/file/report
6
+ body:
7
+ encoding: UTF-8
8
+ string: apikey=testapikey&resource=01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546c
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.9.0
12
+ Content-Type:
13
+ - application/x-www-form-urlencoded
14
+ Accept-Encoding:
15
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
+ Accept:
17
+ - "*/*"
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ Cache-Control:
24
+ - no-cache
25
+ Content-Type:
26
+ - application/json
27
+ Vary:
28
+ - Accept-Encoding
29
+ Date:
30
+ - Sun, 14 Dec 2014 04:24:42 GMT
31
+ Server:
32
+ - Google Frontend
33
+ Transfer-Encoding:
34
+ - chunked
35
+ body:
36
+ encoding: UTF-8
37
+ string: '{"response_code": 0, "resource": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546c",
38
+ "verbose_msg": "The requested resource is not among the finished, queued or
39
+ pending scans"}'
40
+ http_version:
41
+ recorded_at: Sun, 14 Dec 2014 04:30:19 GMT
42
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,38 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://www.virustotal.com/vtapi/v2/file/report
6
+ body:
7
+ encoding: UTF-8
8
+ string: apikey=testapikey&resource=01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.9.0
12
+ Content-Type:
13
+ - application/x-www-form-urlencoded
14
+ Accept-Encoding:
15
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
+ Accept:
17
+ - "*/*"
18
+ response:
19
+ status:
20
+ code: 403
21
+ message: Forbidden
22
+ headers:
23
+ Content-Type:
24
+ - text/html; charset=utf-8
25
+ Cache-Control:
26
+ - no-cache
27
+ Date:
28
+ - Sun, 14 Dec 2014 04:07:30 GMT
29
+ Server:
30
+ - Google Frontend
31
+ Content-Length:
32
+ - '0'
33
+ body:
34
+ encoding: UTF-8
35
+ string: ''
36
+ http_version:
37
+ recorded_at: Sun, 14 Dec 2014 04:13:07 GMT
38
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,49 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://www.virustotal.com/vtapi/v2/file/scan
6
+ body:
7
+ encoding: ASCII-8BIT
8
+ string: "--318862\r\nContent-Disposition: form-data; name=\"apikey\"\r\n\r\ntestapikey\r\n--318862\r\nContent-Disposition:
9
+ form-data; name=\"filename\"\r\n\r\nnull_file\r\n--318862\r\nContent-Disposition:
10
+ form-data; name=\"file\"; filename=\"null_file\"\r\nContent-Type: text/plain\r\n\r\n\n\r\n--318862--\r\n"
11
+ headers:
12
+ Accept:
13
+ - "*/*; q=0.5, application/xml"
14
+ Accept-Encoding:
15
+ - gzip, deflate
16
+ Content-Length:
17
+ - '317'
18
+ Content-Type:
19
+ - multipart/form-data; boundary=318862
20
+ User-Agent:
21
+ - Ruby
22
+ response:
23
+ status:
24
+ code: 200
25
+ message: OK
26
+ headers:
27
+ Cache-Control:
28
+ - no-cache
29
+ Content-Type:
30
+ - application/json
31
+ Vary:
32
+ - Accept-Encoding
33
+ Date:
34
+ - Wed, 24 Dec 2014 21:14:51 GMT
35
+ Server:
36
+ - Google Frontend
37
+ Transfer-Encoding:
38
+ - chunked
39
+ body:
40
+ encoding: UTF-8
41
+ string: '{"scan_id": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b-1419455691",
42
+ "sha1": "adc83b19e793491b1c6ea0fd8b46cd9f32e592fc", "resource": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b",
43
+ "response_code": 1, "sha256": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b",
44
+ "permalink": "https://www.virustotal.com/file/01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b/analysis/1419455691/",
45
+ "md5": "68b329da9893e34099c7d8ad5cb9c940", "verbose_msg": "Scan request successfully
46
+ queued, come back later for the report"}'
47
+ http_version:
48
+ recorded_at: Wed, 24 Dec 2014 21:21:00 GMT
49
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,95 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://www.virustotal.com/vtapi/v2/url/report
6
+ body:
7
+ encoding: US-ASCII
8
+ string: resource=http%3A%2F%2Fwww.google.com&apikey=testapikey
9
+ headers:
10
+ Accept:
11
+ - "*/*; q=0.5, application/xml"
12
+ Accept-Encoding:
13
+ - gzip, deflate
14
+ Content-Length:
15
+ - '108'
16
+ Content-Type:
17
+ - application/x-www-form-urlencoded
18
+ User-Agent:
19
+ - Ruby
20
+ response:
21
+ status:
22
+ code: 200
23
+ message: OK
24
+ headers:
25
+ Cache-Control:
26
+ - no-cache
27
+ Content-Type:
28
+ - application/json
29
+ Vary:
30
+ - Accept-Encoding
31
+ Date:
32
+ - Wed, 24 Dec 2014 21:52:52 GMT
33
+ Server:
34
+ - Google Frontend
35
+ Transfer-Encoding:
36
+ - chunked
37
+ body:
38
+ encoding: UTF-8
39
+ string: '{"permalink": "https://www.virustotal.com/url/dd014af5ed6b38d9130e3f466f850e46d21b951199d53a18ef29ee9341614eaf/analysis/1419457210/",
40
+ "resource": "http://www.google.com", "url": "http://www.google.com/", "response_code":
41
+ 1, "scan_date": "2014-12-24 21:40:10", "scan_id": "dd014af5ed6b38d9130e3f466f850e46d21b951199d53a18ef29ee9341614eaf-1419457210",
42
+ "verbose_msg": "Scan finished, scan information embedded in this object",
43
+ "filescan_id": null, "positives": 0, "total": 61, "scans": {"CLEAN MX": {"detected":
44
+ false, "result": "clean site"}, "MalwarePatrol": {"detected": false, "result":
45
+ "clean site"}, "ZDB Zeus": {"detected": false, "result": "clean site"}, "Tencent":
46
+ {"detected": false, "result": "clean site"}, "AutoShun": {"detected": false,
47
+ "result": "unrated site"}, "ZCloudsec": {"detected": false, "result": "clean
48
+ site"}, "PhishLabs": {"detected": false, "result": "unrated site"}, "K7AntiVirus":
49
+ {"detected": false, "result": "clean site"}, "Quttera": {"detected": false,
50
+ "result": "suspicious site"}, "Spam404": {"detected": false, "result": "clean
51
+ site"}, "AegisLab WebGuard": {"detected": false, "result": "clean site"},
52
+ "MalwareDomainList": {"detected": false, "result": "clean site", "detail":
53
+ "http://www.malwaredomainlist.com/mdl.php?search=www.google.com"}, "ZeusTracker":
54
+ {"detected": false, "result": "clean site", "detail": "https://zeustracker.abuse.ch/monitor.php?host=www.google.com"},
55
+ "zvelo": {"detected": false, "result": "clean site"}, "Google Safebrowsing":
56
+ {"detected": false, "result": "clean site"}, "Kaspersky": {"detected": false,
57
+ "result": "clean site"}, "BitDefender": {"detected": false, "result": "clean
58
+ site"}, "Dr.Web": {"detected": false, "result": "clean site"}, "ADMINUSLabs":
59
+ {"detected": false, "result": "clean site"}, "C-SIRT": {"detected": false,
60
+ "result": "clean site"}, "CyberCrime": {"detected": false, "result": "clean
61
+ site"}, "Websense ThreatSeeker": {"detected": false, "result": "clean site"},
62
+ "VX Vault": {"detected": false, "result": "clean site"}, "Webutation": {"detected":
63
+ false, "result": "clean site"}, "Trustwave": {"detected": false, "result":
64
+ "clean site"}, "Web Security Guard": {"detected": false, "result": "clean
65
+ site"}, "G-Data": {"detected": false, "result": "clean site"}, "Malwarebytes
66
+ hpHosts": {"detected": false, "result": "clean site"}, "Wepawet": {"detected":
67
+ false, "result": "clean site"}, "AlienVault": {"detected": false, "result":
68
+ "clean site"}, "Emsisoft": {"detected": false, "result": "clean site"}, "Malc0de
69
+ Database": {"detected": false, "result": "clean site", "detail": "http://malc0de.com/database/index.php?search=www.google.com"},
70
+ "SpyEyeTracker": {"detected": false, "result": "clean site", "detail": "https://spyeyetracker.abuse.ch/monitor.php?host=www.google.com"},
71
+ "malwares.com URL checker": {"detected": false, "result": "clean site"}, "Phishtank":
72
+ {"detected": false, "result": "clean site"}, "Malwared": {"detected": false,
73
+ "result": "clean site"}, "Avira": {"detected": false, "result": "clean site"},
74
+ "OpenPhish": {"detected": false, "result": "clean site"}, "Antiy-AVL": {"detected":
75
+ false, "result": "clean site"}, "SCUMWARE.org": {"detected": false, "result":
76
+ "clean site"}, "FraudSense": {"detected": false, "result": "clean site"},
77
+ "Opera": {"detected": false, "result": "clean site"}, "Comodo Site Inspector":
78
+ {"detected": false, "result": "clean site"}, "Malekal": {"detected": false,
79
+ "result": "clean site"}, "ESET": {"detected": false, "result": "clean site"},
80
+ "Sophos": {"detected": false, "result": "unrated site"}, "Yandex Safebrowsing":
81
+ {"detected": false, "result": "clean site", "detail": "http://yandex.com/infected?l10n=en&url=http://www.google.com/"},
82
+ "SecureBrain": {"detected": false, "result": "clean site"}, "Malware Domain
83
+ Blocklist": {"detected": false, "result": "clean site"}, "Blueliv": {"detected":
84
+ false, "result": "clean site"}, "Netcraft": {"detected": false, "result":
85
+ "unrated site"}, "PalevoTracker": {"detected": false, "result": "clean site"},
86
+ "CRDF": {"detected": false, "result": "clean site"}, "ThreatHive": {"detected":
87
+ false, "result": "clean site"}, "ParetoLogic": {"detected": false, "result":
88
+ "clean site"}, "Rising": {"detected": false, "result": "clean site"}, "URLQuery":
89
+ {"detected": false, "result": "unrated site"}, "StopBadware": {"detected":
90
+ false, "result": "unrated site"}, "Sucuri SiteCheck": {"detected": false,
91
+ "result": "clean site"}, "Fortinet": {"detected": false, "result": "clean
92
+ site"}, "Baidu-International": {"detected": false, "result": "clean site"}}}'
93
+ http_version:
94
+ recorded_at: Wed, 24 Dec 2014 21:59:01 GMT
95
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,23 @@
1
+ # encoding: utf-8
2
+ require './test/test_helper'
3
+
4
+ class VirustotalAPIIPReportTest < Minitest::Test
5
+ def setup
6
+ @ip = '8.8.8.8'
7
+ @api_key = 'testapikey'
8
+ end
9
+
10
+ def test_class_exists
11
+ assert VirustotalAPI::IPReport
12
+ end
13
+
14
+ def test_report_response
15
+ VCR.use_cassette('ip_report') do
16
+ vtip_report = VirustotalAPI::IPReport.find(@ip, @api_key)
17
+
18
+ # Make sure that the JSON was parsed
19
+ assert vtip_report.is_a?(VirustotalAPI::IPReport)
20
+ assert vtip_report.report.is_a?(Hash)
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,10 @@
1
+ # encoding: utf-8
2
+ require './lib/virustotal_api'
3
+ require 'minitest/autorun'
4
+ require 'webmock/minitest'
5
+ require 'vcr'
6
+
7
+ VCR.configure do |c|
8
+ c.cassette_library_dir = 'test/fixtures'
9
+ c.hook_into :webmock
10
+ end
data/test/uri_test.rb ADDED
@@ -0,0 +1,9 @@
1
+ # encoding: utf-8
2
+ require './test/test_helper'
3
+
4
+ class VirustotalAPIVTReportTest < Minitest::Test
5
+ def test_api_base_uri
6
+ assert VirustotalAPI::URI.is_a?(String)
7
+ assert VirustotalAPI::URI, 'https://www.virustotal.com/vtapi/v2'
8
+ end
9
+ end
@@ -0,0 +1,39 @@
1
+ # encoding: utf-8
2
+ require './test/test_helper'
3
+
4
+ class VirustotalAPIURLReportTest < Minitest::Test
5
+ def setup
6
+ @url = 'http://www.google.com'
7
+ @api_key = 'testapikey'
8
+ end
9
+
10
+ def test_class_exists
11
+ assert VirustotalAPI::URLReport
12
+ end
13
+
14
+ def test_report_response
15
+ VCR.use_cassette('url_report') do
16
+ vturl_report = VirustotalAPI::URLReport.find(@url, @api_key)
17
+
18
+ # Make sure that the JSON was parsed
19
+ assert vturl_report.is_a?(VirustotalAPI::URLReport)
20
+ assert vturl_report.report.is_a?(Hash)
21
+ end
22
+ end
23
+
24
+ def test_report_url
25
+ VCR.use_cassette('url_report') do
26
+ vturl_report = VirustotalAPI::URLReport.find(@url, @api_key)
27
+
28
+ assert vturl_report.report_url.is_a?(String)
29
+ end
30
+ end
31
+
32
+ def test_scan_url
33
+ VCR.use_cassette('url_report') do
34
+ vturl_report = VirustotalAPI::URLReport.find(@url, @api_key)
35
+
36
+ assert vturl_report.scan_id.is_a?(String)
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,9 @@
1
+ # encoding: utf-8
2
+ require './test/test_helper'
3
+
4
+ class VirustotalAPIVTReportTest < Minitest::Test
5
+ def test_version
6
+ assert VirustotalAPI::VERSION.is_a?(String)
7
+ assert VirustotalAPI::VERSION, '0.1.0'
8
+ end
9
+ end
@@ -0,0 +1,32 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'virustotal_api/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = 'virustotal_api'
8
+ spec.version = VirustotalAPI::VERSION
9
+ spec.authors = ['pwelch']
10
+ spec.email = ['paul@pwelch.net']
11
+ spec.summary = 'Gem for VirusTotal.com API'
12
+ spec.description = 'Gem for VirusTotal.com API'
13
+ spec.homepage = 'https://github.com/pwelch/virustotal_api'
14
+ spec.license = 'MIT'
15
+
16
+ spec.files = `git ls-files -z`.split("\x0")
17
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
18
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
+ spec.require_paths = ['lib']
20
+
21
+ spec.add_dependency 'rest-client'
22
+ spec.add_dependency 'json'
23
+
24
+ spec.add_development_dependency 'bundler', '~> 1.7'
25
+ spec.add_development_dependency 'rake', '~> 10.0'
26
+ spec.add_development_dependency 'minitest'
27
+ spec.add_development_dependency 'vcr'
28
+ spec.add_development_dependency 'webmock'
29
+ spec.add_development_dependency 'pry'
30
+ spec.add_development_dependency 'yard', '~> 0.8'
31
+ spec.add_development_dependency 'rubocop'
32
+ end