maid 0.2.2 → 0.2.3.alpha.1

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/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