maid 0.2.2 → 0.2.3.alpha.1

Sign up to get free protection for your applications and to get access to all the features.
data/AUTHORS.md CHANGED
@@ -1,7 +1,9 @@
1
1
  In alphabetical order:
2
2
 
3
3
  * Benjamin Oakes (@benjaminoakes)
4
+ * Bradley Smith (@bradleyd)
4
5
  * Larry Lv (@larrylv)
5
6
  * Lewis O'Driscoll (@loddy1234)
6
7
  * Lloyd Philbrook (@phoolish)
7
8
  * Mark Jaquith (@markjaquith)
9
+ * Mu Ye (@yemutex)
data/ChangeLog CHANGED
@@ -1,3 +1,12 @@
1
+ maid (0.2.3.alpha.1) unstable; urgency=low
2
+
3
+ * Mu Ye: Improve command line spec coverage (Closes: #97)
4
+ * Changed from ArgumentError to NotImplementedError when a command is
5
+ unsupported on the host OS.
6
+ * Bradley Smith: Add locate support on Ubuntu (Closes: #67)
7
+
8
+ -- Benjamin Oakes <hello@benjaminoakes.com> Fri, 8 Mar 2013 00:00:00 +0000
9
+
1
10
  maid (0.2.2) stable; urgency=high
2
11
 
3
12
  * Stats! { 'collaborators' => 11, 'downloads' => 5017, 'forks' => 36,
@@ -98,7 +98,7 @@ class Maid::Maid
98
98
  if supported_command?(command)
99
99
  %x(#{ command })
100
100
  else
101
- raise ArgumentError, "Unsupported system command: #{ command.inspect }"
101
+ raise NotImplementedError, "Unsupported system command: #{ command.inspect }"
102
102
  end
103
103
  end
104
104
 
@@ -13,5 +13,16 @@ module Maid::Platform
13
13
  def osx?
14
14
  !!(host_os =~ /darwin/i)
15
15
  end
16
+
17
+ end
18
+
19
+ # Commands based on OS type
20
+ class Commands
21
+ class << self
22
+ # logicaly decides which locate command to use
23
+ def locate
24
+ Maid::Platform.linux? ? 'locate' : 'mdfind -name'
25
+ end
26
+ end
16
27
  end
17
28
  end
@@ -244,7 +244,7 @@ module Maid::Tools
244
244
  #
245
245
  # locate('foo.zip') # => ['/a/foo.zip', '/b/foo.zip']
246
246
  def locate(name)
247
- cmd("mdfind -name #{ sh_escape(name) }").split("\n")
247
+ cmd("#{Maid::Platform::Commands.locate} #{ sh_escape(name) }").split("\n")
248
248
  end
249
249
 
250
250
  # [Mac OS X] Use Spotlight metadata to determine the site from which a file was downloaded.
@@ -1,3 +1,3 @@
1
1
  module Maid
2
- VERSION = '0.2.2'
2
+ VERSION = '0.2.3.alpha.1'
3
3
  end
@@ -77,7 +77,7 @@ module Maid
77
77
  end
78
78
 
79
79
  it 'is mapped as --version' do
80
- # TODO: Test via Rspec (it's only in the smoke test script for now)
80
+ App.start(['--version']).should == @app.version
81
81
  end
82
82
 
83
83
  context 'with the "long" option' do
@@ -189,11 +189,11 @@ module Maid
189
189
  end
190
190
 
191
191
  it 'should report `not-a-real-command` as not being a supported command' do
192
- lambda { @maid.cmd('not-a-real-command arg1 arg2') }.should raise_error(ArgumentError)
192
+ lambda { @maid.cmd('not-a-real-command arg1 arg2') }.should raise_error(NotImplementedError)
193
193
  end
194
194
 
195
195
  it 'should report `echo` as a real command' do
196
- lambda { @maid.cmd('echo .') }.should_not raise_error(ArgumentError)
196
+ lambda { @maid.cmd('echo .') }.should_not raise_error(NotImplementedError)
197
197
  end
198
198
  end
199
199
  end
@@ -25,6 +25,10 @@ module Maid
25
25
  it 'is not identified as OS X' do
26
26
  subject.osx?.should be_false
27
27
  end
28
+
29
+ it 'locate is "locate"' do
30
+ Platform::Commands.locate.should match(/locate/)
31
+ end
28
32
  end
29
33
 
30
34
  context 'when running on Mac OS X' do
@@ -39,6 +43,10 @@ module Maid
39
43
  it 'is identified as OS X' do
40
44
  subject.osx?.should be_true
41
45
  end
46
+
47
+ it 'locate is "mdfind"' do
48
+ Platform::Commands.locate.should match(/mdfind/)
49
+ end
42
50
  end
43
51
  end
44
52
  end
metadata CHANGED
@@ -1,19 +1,19 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: maid
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
5
- prerelease:
4
+ version: 0.2.3.alpha.1
5
+ prerelease: 6
6
6
  platform: ruby
7
7
  authors:
8
8
  - Benjamin Oakes
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-02-27 00:00:00.000000000 Z
12
+ date: 2013-03-08 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: escape
16
- requirement: &10475240 !ruby/object:Gem::Requirement
16
+ requirement: &15830020 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -24,10 +24,10 @@ dependencies:
24
24
  version: 0.1.0
25
25
  type: :runtime
26
26
  prerelease: false
27
- version_requirements: *10475240
27
+ version_requirements: *15830020
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: thor
30
- requirement: &10474440 !ruby/object:Gem::Requirement
30
+ requirement: &15829220 !ruby/object:Gem::Requirement
31
31
  none: false
32
32
  requirements:
33
33
  - - ! '>='
@@ -38,10 +38,10 @@ dependencies:
38
38
  version: 0.18.0
39
39
  type: :runtime
40
40
  prerelease: false
41
- version_requirements: *10474440
41
+ version_requirements: *15829220
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: deprecated
44
- requirement: &10433640 !ruby/object:Gem::Requirement
44
+ requirement: &15828480 !ruby/object:Gem::Requirement
45
45
  none: false
46
46
  requirements:
47
47
  - - ~>
@@ -49,10 +49,10 @@ dependencies:
49
49
  version: 3.0.0
50
50
  type: :runtime
51
51
  prerelease: false
52
- version_requirements: *10433640
52
+ version_requirements: *15828480
53
53
  - !ruby/object:Gem::Dependency
54
54
  name: ohai
55
- requirement: &10433140 !ruby/object:Gem::Requirement
55
+ requirement: &15827940 !ruby/object:Gem::Requirement
56
56
  none: false
57
57
  requirements:
58
58
  - - ! '>='
@@ -63,10 +63,10 @@ dependencies:
63
63
  version: 6.17.0
64
64
  type: :runtime
65
65
  prerelease: false
66
- version_requirements: *10433140
66
+ version_requirements: *15827940
67
67
  - !ruby/object:Gem::Dependency
68
68
  name: xdg
69
- requirement: &10432400 !ruby/object:Gem::Requirement
69
+ requirement: &15827100 !ruby/object:Gem::Requirement
70
70
  none: false
71
71
  requirements:
72
72
  - - ~>
@@ -74,10 +74,10 @@ dependencies:
74
74
  version: 2.2.3
75
75
  type: :runtime
76
76
  prerelease: false
77
- version_requirements: *10432400
77
+ version_requirements: *15827100
78
78
  - !ruby/object:Gem::Dependency
79
79
  name: fakefs
80
- requirement: &10431900 !ruby/object:Gem::Requirement
80
+ requirement: &15826520 !ruby/object:Gem::Requirement
81
81
  none: false
82
82
  requirements:
83
83
  - - ~>
@@ -85,10 +85,10 @@ dependencies:
85
85
  version: 0.4.2
86
86
  type: :development
87
87
  prerelease: false
88
- version_requirements: *10431900
88
+ version_requirements: *15826520
89
89
  - !ruby/object:Gem::Dependency
90
90
  name: guard
91
- requirement: &10431400 !ruby/object:Gem::Requirement
91
+ requirement: &15825380 !ruby/object:Gem::Requirement
92
92
  none: false
93
93
  requirements:
94
94
  - - ~>
@@ -96,10 +96,10 @@ dependencies:
96
96
  version: 1.6.2
97
97
  type: :development
98
98
  prerelease: false
99
- version_requirements: *10431400
99
+ version_requirements: *15825380
100
100
  - !ruby/object:Gem::Dependency
101
101
  name: guard-rspec
102
- requirement: &10430840 !ruby/object:Gem::Requirement
102
+ requirement: &15824120 !ruby/object:Gem::Requirement
103
103
  none: false
104
104
  requirements:
105
105
  - - ~>
@@ -107,10 +107,10 @@ dependencies:
107
107
  version: 2.4.0
108
108
  type: :development
109
109
  prerelease: false
110
- version_requirements: *10430840
110
+ version_requirements: *15824120
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: rake
113
- requirement: &10430260 !ruby/object:Gem::Requirement
113
+ requirement: &15823480 !ruby/object:Gem::Requirement
114
114
  none: false
115
115
  requirements:
116
116
  - - ~>
@@ -118,10 +118,10 @@ dependencies:
118
118
  version: 10.0.3
119
119
  type: :development
120
120
  prerelease: false
121
- version_requirements: *10430260
121
+ version_requirements: *15823480
122
122
  - !ruby/object:Gem::Dependency
123
123
  name: redcarpet
124
- requirement: &10429120 !ruby/object:Gem::Requirement
124
+ requirement: &15822800 !ruby/object:Gem::Requirement
125
125
  none: false
126
126
  requirements:
127
127
  - - ~>
@@ -129,10 +129,10 @@ dependencies:
129
129
  version: 2.2.2
130
130
  type: :development
131
131
  prerelease: false
132
- version_requirements: *10429120
132
+ version_requirements: *15822800
133
133
  - !ruby/object:Gem::Dependency
134
134
  name: rspec
135
- requirement: &10427880 !ruby/object:Gem::Requirement
135
+ requirement: &15720280 !ruby/object:Gem::Requirement
136
136
  none: false
137
137
  requirements:
138
138
  - - ~>
@@ -140,10 +140,10 @@ dependencies:
140
140
  version: 2.12.0
141
141
  type: :development
142
142
  prerelease: false
143
- version_requirements: *10427880
143
+ version_requirements: *15720280
144
144
  - !ruby/object:Gem::Dependency
145
145
  name: timecop
146
- requirement: &10427240 !ruby/object:Gem::Requirement
146
+ requirement: &15718860 !ruby/object:Gem::Requirement
147
147
  none: false
148
148
  requirements:
149
149
  - - ~>
@@ -151,10 +151,10 @@ dependencies:
151
151
  version: 0.5.9.1
152
152
  type: :development
153
153
  prerelease: false
154
- version_requirements: *10427240
154
+ version_requirements: *15718860
155
155
  - !ruby/object:Gem::Dependency
156
156
  name: yard
157
- requirement: &10426540 !ruby/object:Gem::Requirement
157
+ requirement: &15717940 !ruby/object:Gem::Requirement
158
158
  none: false
159
159
  requirements:
160
160
  - - ~>
@@ -162,10 +162,10 @@ dependencies:
162
162
  version: 0.8.4
163
163
  type: :development
164
164
  prerelease: false
165
- version_requirements: *10426540
165
+ version_requirements: *15717940
166
166
  - !ruby/object:Gem::Dependency
167
167
  name: rb-inotify
168
- requirement: &10324080 !ruby/object:Gem::Requirement
168
+ requirement: &15717240 !ruby/object:Gem::Requirement
169
169
  none: false
170
170
  requirements:
171
171
  - - ~>
@@ -173,10 +173,10 @@ dependencies:
173
173
  version: 0.9.0
174
174
  type: :development
175
175
  prerelease: false
176
- version_requirements: *10324080
176
+ version_requirements: *15717240
177
177
  - !ruby/object:Gem::Dependency
178
178
  name: rb-fsevent
179
- requirement: &10322500 !ruby/object:Gem::Requirement
179
+ requirement: &15716540 !ruby/object:Gem::Requirement
180
180
  none: false
181
181
  requirements:
182
182
  - - ~>
@@ -184,7 +184,7 @@ dependencies:
184
184
  version: 0.9.2
185
185
  type: :development
186
186
  prerelease: false
187
- version_requirements: *10322500
187
+ version_requirements: *15716540
188
188
  description: Be lazy. Let Maid clean up after you, based on rules you define. Think
189
189
  of it as "Hazel for hackers".
190
190
  email:
@@ -256,9 +256,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
256
256
  required_rubygems_version: !ruby/object:Gem::Requirement
257
257
  none: false
258
258
  requirements:
259
- - - ! '>='
259
+ - - ! '>'
260
260
  - !ruby/object:Gem::Version
261
- version: '0'
261
+ version: 1.3.1
262
262
  requirements: []
263
263
  rubyforge_project: maid
264
264
  rubygems_version: 1.8.11