security_guard 0.0.5 → 0.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/README.md CHANGED
@@ -75,6 +75,15 @@ SecurityGuard::Deduplication.new(
75
75
 
76
76
  ## Changelog
77
77
 
78
+ ### v0.0.6 [2012-03-07]
79
+
80
+ - Output file names are now automatically mapped from the input file names
81
+
82
+ ### v0.0.5 [2012-03-07]
83
+
84
+ - Fixed the file ordering issue on some OSes like Linux
85
+ - Fixed the non-existing `specs/tmp` directory that causes specs to fail
86
+
78
87
  ### v0.0.4 [2012-02-08]
79
88
 
80
89
  - Fixed `Concerns::Initializable` for `CountryIps`
@@ -3,11 +3,12 @@ module SecurityGuard
3
3
  include Concerns::Initializable
4
4
 
5
5
  initializable :input_folder, :output_folder
6
- attr_accessor :source_data, :deduped_data
6
+ attr_accessor :source_data, :deduped_data, :filenames
7
7
 
8
8
  def initialize(args = nil)
9
9
  @source_data ||= []
10
10
  @deduped_data ||= []
11
+ @filenames ||= []
11
12
  initializable_attrs args
12
13
  end
13
14
 
@@ -25,13 +26,14 @@ module SecurityGuard
25
26
  raise Exception.new('Input folder is invalid or is empty.') if files.empty?
26
27
 
27
28
  files.each do |file|
29
+ filenames << File.basename(file)
28
30
  source_data << File.readlines(file).map{ |line| line.downcase.strip }
29
31
  end
30
32
  end
31
33
 
32
34
  def write_data_to(folder)
33
35
  deduped_data.each_with_index do |array, index|
34
- File.open("#{folder}/#{index+1}.txt", 'w') do |f|
36
+ File.open("#{folder}/#{filenames[index]}", 'w') do |f|
35
37
  f.puts array
36
38
  end
37
39
  end
@@ -1,3 +1,3 @@
1
1
  module SecurityGuard
2
- VERSION = '0.0.5'
2
+ VERSION = '0.0.6'
3
3
  end
@@ -25,23 +25,29 @@ describe SecurityGuard::Deduplication do
25
25
  dedupe.source_data.must_equal source_data
26
26
  end
27
27
 
28
+ it 'records filenames' do
29
+ dedupe.send :read_data_from, fixture_file('dedupe_lists/')
30
+ dedupe.send(:filenames).must_equal ['a.txt', 'b.txt', 'c.txt']
31
+ end
32
+
28
33
  it 'writes data to the output folder' do
34
+ dedupe.send :filenames=, ['a.txt', 'b.txt']
29
35
  dedupe.deduped_data = [
30
36
  [1, 2, 3],
31
37
  [4, 5, 6],
32
38
  ]
33
39
  dedupe.send :write_data_to, fixture_file('../tmp/')
34
40
 
35
- File.read(fixture_file('../tmp/1.txt')).must_equal "1\n2\n3\n"
36
- File.read(fixture_file('../tmp/2.txt')).must_equal "4\n5\n6\n"
41
+ File.read(fixture_file('../tmp/a.txt')).must_equal "1\n2\n3\n"
42
+ File.read(fixture_file('../tmp/b.txt')).must_equal "4\n5\n6\n"
37
43
  end
38
44
 
39
45
  it 'reads input and writes output' do
40
46
  dedupe.process
41
47
 
42
- File.read(fixture_file('../tmp/1.txt')).must_equal "a@example.com\nb@example.com\nc@example.com\n"
43
- File.read(fixture_file('../tmp/2.txt')).must_equal "d@example.com\n"
44
- File.read(fixture_file('../tmp/3.txt')).must_equal "e@example.com\n"
48
+ File.read(fixture_file('../tmp/a.txt')).must_equal "a@example.com\nb@example.com\nc@example.com\n"
49
+ File.read(fixture_file('../tmp/b.txt')).must_equal "d@example.com\n"
50
+ File.read(fixture_file('../tmp/c.txt')).must_equal "e@example.com\n"
45
51
  end
46
52
 
47
53
  it 'dedupes an array with another array' do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: security_guard
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2012-03-07 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: clamp
16
- requirement: &70171759282640 !ruby/object:Gem::Requirement
16
+ requirement: &70344773855680 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70171759282640
24
+ version_requirements: *70344773855680
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: awesome_print
27
- requirement: &70171759282220 !ruby/object:Gem::Requirement
27
+ requirement: &70344773855260 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *70171759282220
35
+ version_requirements: *70344773855260
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: geoip
38
- requirement: &70171759281800 !ruby/object:Gem::Requirement
38
+ requirement: &70344773854840 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *70171759281800
46
+ version_requirements: *70344773854840
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rake
49
- requirement: &70171759281380 !ruby/object:Gem::Requirement
49
+ requirement: &70344773854420 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: '0'
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *70171759281380
57
+ version_requirements: *70344773854420
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: simplecov
60
- requirement: &70171759280960 !ruby/object:Gem::Requirement
60
+ requirement: &70344773854000 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: '0'
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *70171759280960
68
+ version_requirements: *70344773854000
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: minitest-colorize
71
- requirement: &70171759280540 !ruby/object:Gem::Requirement
71
+ requirement: &70344773853580 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ! '>='
@@ -76,7 +76,7 @@ dependencies:
76
76
  version: '0'
77
77
  type: :development
78
78
  prerelease: false
79
- version_requirements: *70171759280540
79
+ version_requirements: *70344773853580
80
80
  description: A collection of useful tools for auditing data and performing security
81
81
  checks.
82
82
  email:
@@ -129,7 +129,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
129
129
  version: '0'
130
130
  segments:
131
131
  - 0
132
- hash: 1500545349619429618
132
+ hash: 2907249137378969452
133
133
  required_rubygems_version: !ruby/object:Gem::Requirement
134
134
  none: false
135
135
  requirements:
@@ -138,7 +138,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
138
138
  version: '0'
139
139
  segments:
140
140
  - 0
141
- hash: 1500545349619429618
141
+ hash: 2907249137378969452
142
142
  requirements: []
143
143
  rubyforge_project:
144
144
  rubygems_version: 1.8.16