ratonvirus-resty 0.1.1 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7ca674bbaa7388fe3abf005c42fab873240a3496ab2fd2abf12a0510a492f8a2
4
- data.tar.gz: 546e68bff0c07f0632e967faa1d9f8e8a4ae27dc900c25932bc8df65b0484e0e
3
+ metadata.gz: 15dd0661f5bc47ba5974958510bdb043f49bbdb5ffd29ac5495ea42c2c624630
4
+ data.tar.gz: db8e7fad6066f97c825ff8da1dfe1774e069fb8c485091cf358aa9f0854ffb62
5
5
  SHA512:
6
- metadata.gz: 1849cc1308c24d5de8830167009af88ddc0c346a8b248c4010ebb6a19a5728dc77bd24802885fe7b67c90020db0a109512c207a63edafacc681a100b1669ae4b
7
- data.tar.gz: ad858fa1e34e4c3f9c8a4fef415fcf35e8b9cfac3b9db72cdcf2a57bba74464f48717c0411f259e7488f96f8111af5dfaf8a47522bd5743fd037d417e5f60a62
6
+ metadata.gz: dc75b3e5e55c32314f2e57f9f820105f2799ac8bcd19f004e4ab70163d95fce2c3439b30c0ad87b801abd71aeb24be6f1f8412652ed38a9df26d66346d30b052
7
+ data.tar.gz: 69f714a9a6842e3443df38f176ee61809cee5caa4379e7c35977c751a043ce431aaa41bfd6174565645f04b2774eb1800bbceace4554d3f0e4b5c29bac61cbe5
@@ -1,15 +1,17 @@
1
+ require 'rails/generators'
2
+
1
3
  module Ratonvirus
2
4
  module Resty
3
5
  module Generators
4
- class InstallGenerator > Rails::Generators::Base
5
-
6
+ class InstallGenerator < ::Rails::Generators::Base
6
7
  desc 'Generates the initializer'
7
8
 
8
9
  source_root File.expand_path('../templates', __FILE__)
9
10
 
10
11
  def generate_initializer
11
- template 'initializer.rb', 'config/initializers/ratonvirus_resty.rb'
12
+ template 'initializer.rb', 'config/initializers/ratonvirus-resty.rb'
12
13
  end
14
+ end
13
15
  end
14
16
  end
15
17
  end
@@ -7,9 +7,9 @@ Ratonvirus::Resty.configure do |config|
7
7
 
8
8
  # Optional sets the username for api requests
9
9
  #
10
- # config.username = ENV.fetch('RESTY_USER', nil)
10
+ # config.username = ENV.fetch('RESTY_USERNAME', nil)
11
11
  #
12
- config.username = ENV.fetch('RESTY_USER', nil)
12
+ config.username = ENV.fetch('RESTY_USERNAME', nil)
13
13
  # Optional sets the password for api requests
14
14
  #
15
15
  # config.password = ENV.fetch('RESTY_PASSWORD', nil)
@@ -0,0 +1 @@
1
+ require 'ratonvirus/resty'
@@ -1,17 +1,17 @@
1
- require "ratonvirus/resty/version"
2
- require "ratonvirus/resty/configuration"
3
- require "faraday"
4
- require "mimemagic"
1
+ require 'faraday'
2
+ require 'mimemagic'
5
3
  require 'active_support'
6
-
7
- require_relative "scanner/resty"
8
- require_relative "resty/configuration"
4
+ require 'rails'
5
+ require 'ratonvirus/resty/version'
6
+ require 'ratonvirus/scanner/resty'
7
+ require 'ratonvirus/resty/configuration'
8
+ require 'ratonvirus/services/antivirus_check_service'
9
+ require 'ratonvirus/resty/engine' if defined?("Rails")
9
10
 
10
11
  module Ratonvirus
11
- autoload :AntivirusCheckService, 'ratonvirus/services/antivirus_check_service'
12
-
13
12
  module Resty
14
13
  extend Configuration
14
+
15
15
  class Error < StandardError; end
16
16
  end
17
17
  end
@@ -9,7 +9,7 @@ module Ratonvirus
9
9
  end
10
10
 
11
11
  mattr_accessor(:service_url) { ENV.fetch('RESTY_SERVICE_URL', 'http://localhost:9000/scan') }
12
- mattr_accessor(:username) { ENV.fetch('RESTY_USER', nil) }
12
+ mattr_accessor(:username) { ENV.fetch('RESTY_USERNAME', nil) }
13
13
  mattr_accessor(:password) { ENV.fetch('RESTY_PASSWORD', nil) }
14
14
  mattr_accessor(:proxy_url) { ENV.fetch('PROXY_URL') { nil } }
15
15
  end
@@ -0,0 +1,7 @@
1
+ module Ratonvirus
2
+ module Resty
3
+ class Engine < ::Rails::Engine
4
+ isolate_namespace Ratonvirus::Resty
5
+ end
6
+ end
7
+ end
@@ -1,5 +1,5 @@
1
1
  module Ratonvirus
2
2
  module Resty
3
- VERSION = "0.1.1"
3
+ VERSION = "0.1.3"
4
4
  end
5
5
  end
@@ -1,8 +1,10 @@
1
1
  require 'ratonvirus'
2
+ require "ratonvirus/services/antivirus_check_service"
2
3
 
3
4
  module Ratonvirus
4
5
  module Scanner
5
6
  class Resty < Ratonvirus::Scanner::Base
7
+
6
8
  class << self
7
9
  def executable?
8
10
  AntivirusCheckService.installed?
@@ -15,7 +17,7 @@ module Ratonvirus
15
17
  if File.file?(path)
16
18
  result = AntivirusCheckService.new(path).call
17
19
  if result.virus?
18
- errors << :antivirus_virus_deteced
20
+ errors << :antivirus_virus_detected
19
21
  end
20
22
  else
21
23
  errors << :antivirus_file_not_found
@@ -17,7 +17,7 @@ module Ratonvirus
17
17
  @result = Result.new
18
18
  end
19
19
 
20
- def installed?
20
+ def self.installed?
21
21
  true
22
22
  end
23
23
 
@@ -31,7 +31,10 @@ module Ratonvirus
31
31
  def perform_request
32
32
  @logger.debug { "Performing request to #{base_url}" }
33
33
  begin
34
- @response = connection.post(base_url, { file: initialize_upload_file })
34
+ @response = connection.post(base_url) do |request|
35
+ request.headers['Content-Type'] = 'multipart/form-data'
36
+ request.body = { file: initialize_upload_file }
37
+ end
35
38
  @result.parsed_response = parse_response
36
39
  unless @response.success?
37
40
  @logger.debug { "API request respond with status code #{@response.status}: #{parse_response}"}
@@ -42,8 +45,9 @@ module Ratonvirus
42
45
  end
43
46
 
44
47
  def parse_response
45
- @logger.debug { "Parsing response #{@response}"}
46
- JSON.parse(@response.body).transform_keys(&:downcase)
48
+ @logger.debug { "Parsing response #{@response.body}"}
49
+ string_to_parse = @response.body.gsub("Status","\"Status\"").gsub("Description","\"Description\"")
50
+ JSON.parse(string_to_parse).transform_keys(&:downcase)
47
51
  end
48
52
 
49
53
  def connection
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ratonvirus-resty
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eugen Müller
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-10-19 00:00:00.000000000 Z
11
+ date: 2020-10-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -80,6 +80,20 @@ dependencies:
80
80
  - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: vcr
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
83
97
  - !ruby/object:Gem::Dependency
84
98
  name: pry
85
99
  requirement: !ruby/object:Gem::Requirement
@@ -94,6 +108,20 @@ dependencies:
94
108
  - - "~>"
95
109
  - !ruby/object:Gem::Version
96
110
  version: 0.13.1
111
+ - !ruby/object:Gem::Dependency
112
+ name: generator_spec
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
97
125
  - !ruby/object:Gem::Dependency
98
126
  name: simplecov
99
127
  requirement: !ruby/object:Gem::Requirement
@@ -145,10 +173,12 @@ extensions: []
145
173
  extra_rdoc_files: []
146
174
  files:
147
175
  - README.md
148
- - lib/generators/ratonviurs/resty/install_generator.rb
149
- - lib/generators/ratonviurs/resty/templates/initializer.rb
176
+ - lib/generators/ratonvirus/resty/install_generator.rb
177
+ - lib/generators/ratonvirus/resty/templates/initializer.rb
178
+ - lib/ratonvirus-resty.rb
150
179
  - lib/ratonvirus/resty.rb
151
180
  - lib/ratonvirus/resty/configuration.rb
181
+ - lib/ratonvirus/resty/engine.rb
152
182
  - lib/ratonvirus/resty/version.rb
153
183
  - lib/ratonvirus/scanner/resty.rb
154
184
  - lib/ratonvirus/services/antivirus_check_service.rb