clam_chowder 0.0.1 → 0.0.2

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
- SHA1:
3
- metadata.gz: 7c1bbdb6150fe272295b9d2c3bd648a7c93aa20d
4
- data.tar.gz: fdf79465aead5a27612b15aa223f94d182a096e2
2
+ SHA256:
3
+ metadata.gz: e4a2a74fba4fef14135cfbdb6217d65e46699a91bdc24f0104750a57b5246115
4
+ data.tar.gz: fb3ab3e44c1cb42dc199800a41fa028d71b83a630b7db83fc5e0e4935302d902
5
5
  SHA512:
6
- metadata.gz: 7d621c58a0e4bd9a41fca632f34f8dd0a976b365826bfa0f5820153b75cb051c7b6317af2756a819a0f9079b2e6bc0c666e227b570efbb5dc7340dd24660aaec
7
- data.tar.gz: c16eb0847811416a172010df2441d220cc71df5f4c3e4c3d6b13b41f7485973db173fe218a0787ab35c7ff9513322fa09a61ee8c53487db9c1239da012835d32
6
+ metadata.gz: 6dae1cbc7f4c82bcc4ad05dbe11ce1e7c8dbf1c6a463d278f60bf8632ef8d12681831c3d683d7ae5af897c0d86db127d6f7d9b3bb08de80b00e65e32ca654660
7
+ data.tar.gz: 2ce9e508769f0bbb7d7d01e2cde743dd9163f442f3a40e70d32141beda16c7bc416cd6335be948878cb708b5df66fcdbd9f54cb30fe599b7da93d1cef55a6a35
@@ -0,0 +1,30 @@
1
+ version: 2.1
2
+
3
+ orbs:
4
+ ruby: circleci/ruby@1.8.0
5
+
6
+ jobs:
7
+ test:
8
+ parameters:
9
+ ruby-version:
10
+ type: string
11
+ docker:
12
+ - image: cimg/ruby:<< parameters.ruby-version >>
13
+ steps:
14
+ - checkout
15
+ - run:
16
+ name: bundle install with no cache
17
+ command: |
18
+ bundle install
19
+ - run:
20
+ name: only run rspec
21
+ command: |
22
+ bundle exec rspec
23
+
24
+ workflows:
25
+ build_and_test:
26
+ jobs:
27
+ - test:
28
+ matrix:
29
+ parameters:
30
+ ruby-version: ["2.7", "3.0", "3.1", "3.2"]
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 2.0.0-p247
1
+ 3.2.2
data/README.md CHANGED
@@ -1,9 +1,7 @@
1
- # README
1
+ # clam_chowder
2
2
 
3
- ## Name
4
- clam_chower
3
+ [![Build Status](https://travis-ci.org/nexway/clam_chowder.svg?branch=master)](https://travis-ci.org/nexway/clam_chowder) [![Code Climate](https://codeclimate.com/github/nexway/clam_chowder.png)](https://codeclimate.com/github/nexway/clam_chowder)
5
4
 
6
- ## Description
7
5
  Nicely application-level wrapper for anti-virus software.
8
6
  now supports on clamd only.
9
7
 
@@ -61,8 +59,10 @@ ClamChowder.default_backend = Rails.env.production? ? :clamd : :stub
61
59
  ```
62
60
 
63
61
  ## Supported versions
64
- - Ruby 2.0
65
- - Ruby 2.1
62
+ - Ruby 2.0.0
63
+ - Ruby 2.1.8
64
+ - Ruby 2.2.4
65
+ - Ruby 2.3.1
66
66
 
67
67
  ## Dependencies
68
68
  - clamd >= 1.0.1
data/Rakefile CHANGED
@@ -1,2 +1,7 @@
1
1
  require "bundler/gem_tasks"
2
+ require "rspec/core/rake_task"
3
+
4
+ RSpec::Core::RakeTask.new(:spec)
5
+
6
+ task :default => :spec
2
7
 
data/bin/clam_chowder CHANGED
File without changes
data/clam_chowder.gemspec CHANGED
@@ -6,11 +6,11 @@ require 'clam_chowder/version'
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = "clam_chowder"
8
8
  spec.version = ClamChowder::VERSION
9
- spec.authors = ["NEXWAY", "Iori ONDA"]
10
- spec.email = ["n2developer@nexway.co.jp", "iori.onda@gmail.com"]
9
+ spec.authors = ["NEXWAY"]
10
+ spec.email = ["n2developer@nexway.co.jp"]
11
11
  spec.summary = %q{Nicely application-level wrapper for anti-virus software.}
12
12
  spec.description = %q{Nicely application-level wrapper for anti-virus software.}
13
- spec.homepage = ""
13
+ spec.homepage = "https://github.com/nexway/clam_chowder"
14
14
  spec.license = "MIT"
15
15
 
16
16
  spec.files = `git ls-files -z`.split("\x0")
@@ -18,10 +18,10 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.required_ruby_version = '~> 2.0'
21
+ spec.required_ruby_version = '>= 2.0'
22
22
 
23
23
  spec.add_dependency "clamd"
24
- spec.add_development_dependency "bundler", "~> 1.6"
24
+ spec.add_development_dependency "bundler", ">= 2.2.33"
25
25
  spec.add_development_dependency "rake"
26
26
  spec.add_development_dependency "rspec"
27
27
  end
@@ -1,3 +1,3 @@
1
1
  module ClamChowder
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
@@ -14,23 +14,32 @@ describe 'Scanner' do
14
14
  describe '.infected_stream?' do
15
15
  subject { ClamChowder::Scanner.infected_stream?(File::open(file_path)) }
16
16
 
17
+ before do
18
+ scan_mock = instance_double('::Clamd::Client')
19
+ allow(scan_mock).to receive(:scan) { "#{file_path}: #{result}" }
20
+ allow(::Clamd::Client).to receive(:new) { scan_mock }
21
+ end
22
+
17
23
  context 'ウイルスが未検知の場合' do
18
24
  let(:file_path) { 'spec/fixtures/innocent.txt' }
25
+ let(:result) { 'OK' }
19
26
 
20
- it { should be_false }
27
+ it { is_expected.to eq false }
21
28
  end
22
29
 
23
30
  context 'ウイルスが検知された場合' do
24
31
  let(:file) { create_virus_file }
25
32
  let(:file_path) { file.path }
33
+ let(:result) { 'TEST.VIRUS FOUND' }
26
34
 
27
35
  after { file.close }
28
36
 
29
- it { should be_true }
37
+ it { is_expected.to eq true }
30
38
  end
31
39
 
32
40
  context '検知/未検知以外の場合' do
33
41
  let(:file_path) { 'path/to/file' }
42
+ let(:result) { 'Timeout' }
34
43
 
35
44
  specify 'ScanException 例外が発生すること' do
36
45
  expect { ClamChowder::Scanner.infected_stream?(file_path) }.to raise_error(ClamChowder::ScanException)
@@ -45,8 +54,15 @@ describe 'Scanner' do
45
54
  let(:scanner) { ClamChowder::Scanner.new }
46
55
  let(:scan_result) { scanner.scan_io File::open(file_path) }
47
56
 
57
+ before do
58
+ scan_mock = instance_double('::Clamd::Client')
59
+ allow(scan_mock).to receive(:scan) { "#{file_path}: #{scan_message}" }
60
+ allow(::Clamd::Client).to receive(:new) { scan_mock }
61
+ end
62
+
48
63
  context 'ウィルス未検知の場合' do
49
64
  let(:file_path) { 'spec/fixtures/innocent.txt' }
65
+ let(:scan_message) { 'OK' }
50
66
 
51
67
  specify do
52
68
  expect(scan_result).to_not be_infected
@@ -56,17 +72,19 @@ describe 'Scanner' do
56
72
  context 'ウィルス検知の場合' do
57
73
  let(:file) { create_virus_file }
58
74
  let(:file_path) { file.path }
75
+ let(:scan_message) { 'Eicar-Test-Signature FOUND' }
59
76
 
60
77
  after { file.close }
61
78
 
62
79
  specify do
63
80
  expect(scan_result).to be_infected
64
- expect(scan_result.virus_name).to eq 'Eicar-Test-Signature'
81
+ expect(scan_result.virus_name.upcase).to include 'EICAR'
65
82
  end
66
83
  end
67
84
 
68
85
  context '検知/未検知以外の場合' do
69
86
  let(:file_path) { "/path/to/file" }
87
+ let(:scan_message) { 'Timeout' }
70
88
 
71
89
  specify "例外が発生すること" do
72
90
  expect { ClamChowder::Scanner.new.scan_io(file_path) }.to raise_error(ClamChowder::ScanException)
metadata CHANGED
@@ -1,83 +1,82 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: clam_chowder
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - NEXWAY
8
- - Iori ONDA
9
- autorequire:
8
+ autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2014-06-10 00:00:00.000000000 Z
11
+ date: 2023-07-27 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: clamd
16
15
  requirement: !ruby/object:Gem::Requirement
17
16
  requirements:
18
- - - '>='
17
+ - - ">="
19
18
  - !ruby/object:Gem::Version
20
19
  version: '0'
21
20
  type: :runtime
22
21
  prerelease: false
23
22
  version_requirements: !ruby/object:Gem::Requirement
24
23
  requirements:
25
- - - '>='
24
+ - - ">="
26
25
  - !ruby/object:Gem::Version
27
26
  version: '0'
28
27
  - !ruby/object:Gem::Dependency
29
28
  name: bundler
30
29
  requirement: !ruby/object:Gem::Requirement
31
30
  requirements:
32
- - - ~>
31
+ - - ">="
33
32
  - !ruby/object:Gem::Version
34
- version: '1.6'
33
+ version: 2.2.33
35
34
  type: :development
36
35
  prerelease: false
37
36
  version_requirements: !ruby/object:Gem::Requirement
38
37
  requirements:
39
- - - ~>
38
+ - - ">="
40
39
  - !ruby/object:Gem::Version
41
- version: '1.6'
40
+ version: 2.2.33
42
41
  - !ruby/object:Gem::Dependency
43
42
  name: rake
44
43
  requirement: !ruby/object:Gem::Requirement
45
44
  requirements:
46
- - - '>='
45
+ - - ">="
47
46
  - !ruby/object:Gem::Version
48
47
  version: '0'
49
48
  type: :development
50
49
  prerelease: false
51
50
  version_requirements: !ruby/object:Gem::Requirement
52
51
  requirements:
53
- - - '>='
52
+ - - ">="
54
53
  - !ruby/object:Gem::Version
55
54
  version: '0'
56
55
  - !ruby/object:Gem::Dependency
57
56
  name: rspec
58
57
  requirement: !ruby/object:Gem::Requirement
59
58
  requirements:
60
- - - '>='
59
+ - - ">="
61
60
  - !ruby/object:Gem::Version
62
61
  version: '0'
63
62
  type: :development
64
63
  prerelease: false
65
64
  version_requirements: !ruby/object:Gem::Requirement
66
65
  requirements:
67
- - - '>='
66
+ - - ">="
68
67
  - !ruby/object:Gem::Version
69
68
  version: '0'
70
69
  description: Nicely application-level wrapper for anti-virus software.
71
70
  email:
72
71
  - n2developer@nexway.co.jp
73
- - iori.onda@gmail.com
74
72
  executables:
75
73
  - clam_chowder
76
74
  extensions: []
77
75
  extra_rdoc_files: []
78
76
  files:
79
- - .gitignore
80
- - .ruby-version
77
+ - ".circleci/config.yml"
78
+ - ".gitignore"
79
+ - ".ruby-version"
81
80
  - Gemfile
82
81
  - LICENSE.txt
83
82
  - README.md
@@ -93,28 +92,27 @@ files:
93
92
  - lib/clam_chowder/version.rb
94
93
  - spec/clam_chowder_spec.rb
95
94
  - spec/fixtures/innocent.txt
96
- homepage: ''
95
+ homepage: https://github.com/nexway/clam_chowder
97
96
  licenses:
98
97
  - MIT
99
98
  metadata: {}
100
- post_install_message:
99
+ post_install_message:
101
100
  rdoc_options: []
102
101
  require_paths:
103
102
  - lib
104
103
  required_ruby_version: !ruby/object:Gem::Requirement
105
104
  requirements:
106
- - - ~>
105
+ - - ">="
107
106
  - !ruby/object:Gem::Version
108
107
  version: '2.0'
109
108
  required_rubygems_version: !ruby/object:Gem::Requirement
110
109
  requirements:
111
- - - '>='
110
+ - - ">="
112
111
  - !ruby/object:Gem::Version
113
112
  version: '0'
114
113
  requirements: []
115
- rubyforge_project:
116
- rubygems_version: 2.2.2
117
- signing_key:
114
+ rubygems_version: 3.4.10
115
+ signing_key:
118
116
  specification_version: 4
119
117
  summary: Nicely application-level wrapper for anti-virus software.
120
118
  test_files: