dir_processor 0.0.1 → 0.0.2
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.
- checksums.yaml +7 -0
- data/lib/dir_processor/version.rb +1 -1
- data/lib/dir_processor.rb +10 -1
- data/spec/example_spec.rb +8 -2
- metadata +5 -21
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 10d6f5ab5e6d49e35bd95242f55f3e5dd521d980
|
4
|
+
data.tar.gz: 674e9908a7439c5c17a889d974e0ec5ffcb243a2
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 2a2ca5162db8e1828165210f6e881954f2686c5f58e7dfd7aa7b931bbb8a16eb03ac5c615851baf368fcaabdaf8905215b26acaff61f5646516c772d431799ed
|
7
|
+
data.tar.gz: 511869bc930d2e7adcabcc61c6d715e682cdca2bf1c6d3c21b8371807e22a13fd369617a466f31fac67e017b5273a7406885d0ced7ea4ad76ceec6f2fcb0ccec
|
data/lib/dir_processor.rb
CHANGED
@@ -40,7 +40,7 @@ module DirProcessor
|
|
40
40
|
# DSL definition
|
41
41
|
class AFile < Struct.new :pattern
|
42
42
|
@dsl = :file
|
43
|
-
include RemembersBlock, AcceptPattern
|
43
|
+
include RemembersBlock, AcceptPattern
|
44
44
|
def feed given
|
45
45
|
@block.call given if accept? given
|
46
46
|
end
|
@@ -51,6 +51,11 @@ module DirProcessor
|
|
51
51
|
AFile = AFile
|
52
52
|
include AcceptPattern
|
53
53
|
|
54
|
+
class First
|
55
|
+
include RemembersBlock
|
56
|
+
def feed dir; @block.call dir end
|
57
|
+
end
|
58
|
+
|
54
59
|
def feed dir
|
55
60
|
return unless accept? dir
|
56
61
|
|
@@ -60,6 +65,10 @@ module DirProcessor
|
|
60
65
|
all_files = all[:files]
|
61
66
|
all_dirs = all[:dirs]
|
62
67
|
|
68
|
+
so2(:first).each do |processor|
|
69
|
+
processor.feed dir
|
70
|
+
end
|
71
|
+
|
63
72
|
so2(:file).each do |processor|
|
64
73
|
(all[:files] || []).each { |file| processor.feed long_name(dir,file) }
|
65
74
|
end
|
data/spec/example_spec.rb
CHANGED
@@ -25,13 +25,18 @@ describe 'DirProcessor method' do
|
|
25
25
|
DirProcessor(){}.send(:so).should_not == DirProcessor(){ dir('.'){} }.send(:so)
|
26
26
|
end
|
27
27
|
|
28
|
-
example '
|
28
|
+
example 'main' do
|
29
29
|
data = {}
|
30
30
|
this = DirProcessor do
|
31
31
|
file 'about.png' do |file|
|
32
32
|
data[:about] = file
|
33
33
|
end
|
34
34
|
dir 'mp3s' do
|
35
|
+
first do |dir|
|
36
|
+
Dir.exist?(dir).should == true
|
37
|
+
(data[:dirs] ||= []) << dir
|
38
|
+
end
|
39
|
+
|
35
40
|
file '*.mp3' do |file|
|
36
41
|
File.exist?(file).should == true
|
37
42
|
(data[:mp3s] ||= []) << file
|
@@ -50,9 +55,10 @@ describe 'DirProcessor method' do
|
|
50
55
|
this.feed '.'
|
51
56
|
end
|
52
57
|
|
53
|
-
data.keys.should =~ [:about, :mp3s]
|
58
|
+
data.keys.should =~ [:about, :dirs, :mp3s]
|
54
59
|
data[:about].should == 'about.png'
|
55
60
|
data[:mp3s].should =~ %w[ mp3s/one.mp3 mp3s/two.mp3 mp3s/three.mp3 ]
|
61
|
+
data[:dirs].should =~ %w[ mp3s ]
|
56
62
|
end
|
57
63
|
|
58
64
|
end
|
metadata
CHANGED
@@ -1,20 +1,18 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dir_processor
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.0.2
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Alexander K
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date: 2013-04-
|
11
|
+
date: 2013-04-24 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: bundler
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
17
|
- - ~>
|
20
18
|
- !ruby/object:Gem::Version
|
@@ -22,7 +20,6 @@ dependencies:
|
|
22
20
|
type: :development
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
24
|
- - ~>
|
28
25
|
- !ruby/object:Gem::Version
|
@@ -30,7 +27,6 @@ dependencies:
|
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: rake
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
31
|
- - '>='
|
36
32
|
- !ruby/object:Gem::Version
|
@@ -38,7 +34,6 @@ dependencies:
|
|
38
34
|
type: :development
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
38
|
- - '>='
|
44
39
|
- !ruby/object:Gem::Version
|
@@ -46,7 +41,6 @@ dependencies:
|
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: rspec
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
45
|
- - '>='
|
52
46
|
- !ruby/object:Gem::Version
|
@@ -54,7 +48,6 @@ dependencies:
|
|
54
48
|
type: :development
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
52
|
- - '>='
|
60
53
|
- !ruby/object:Gem::Version
|
@@ -62,7 +55,6 @@ dependencies:
|
|
62
55
|
- !ruby/object:Gem::Dependency
|
63
56
|
name: def_dsl
|
64
57
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
58
|
requirements:
|
67
59
|
- - '>='
|
68
60
|
- !ruby/object:Gem::Version
|
@@ -70,7 +62,6 @@ dependencies:
|
|
70
62
|
type: :runtime
|
71
63
|
prerelease: false
|
72
64
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
65
|
requirements:
|
75
66
|
- - '>='
|
76
67
|
- !ruby/object:Gem::Version
|
@@ -98,33 +89,26 @@ files:
|
|
98
89
|
homepage: https://github.com/sowcow/dir_processor
|
99
90
|
licenses:
|
100
91
|
- MIT
|
92
|
+
metadata: {}
|
101
93
|
post_install_message:
|
102
94
|
rdoc_options: []
|
103
95
|
require_paths:
|
104
96
|
- lib
|
105
97
|
required_ruby_version: !ruby/object:Gem::Requirement
|
106
|
-
none: false
|
107
98
|
requirements:
|
108
99
|
- - '>='
|
109
100
|
- !ruby/object:Gem::Version
|
110
101
|
version: '0'
|
111
|
-
segments:
|
112
|
-
- 0
|
113
|
-
hash: -1129910543518694584
|
114
102
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
115
|
-
none: false
|
116
103
|
requirements:
|
117
104
|
- - '>='
|
118
105
|
- !ruby/object:Gem::Version
|
119
106
|
version: '0'
|
120
|
-
segments:
|
121
|
-
- 0
|
122
|
-
hash: -1129910543518694584
|
123
107
|
requirements: []
|
124
108
|
rubyforge_project:
|
125
|
-
rubygems_version:
|
109
|
+
rubygems_version: 2.0.3
|
126
110
|
signing_key:
|
127
|
-
specification_version:
|
111
|
+
specification_version: 4
|
128
112
|
summary: dsl to define processor for directories/files structure
|
129
113
|
test_files:
|
130
114
|
- spec/example_spec.rb
|