message_dir 1.0.1 → 1.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.
- data/lib/message_dir.rb +4 -1
- data/lib/message_dir/message.rb +15 -7
- data/lib/message_dir/version.rb +1 -1
- data/spec/objects/message_dir_spec.rb +18 -0
- metadata +3 -3
data/lib/message_dir.rb
CHANGED
@@ -91,7 +91,10 @@ class MessageDir
|
|
91
91
|
|
92
92
|
def rm(msg)
|
93
93
|
return false if msg.locked?
|
94
|
-
|
94
|
+
files = [ msg.path ]
|
95
|
+
files << msg.error_file if msg.error?
|
96
|
+
|
97
|
+
File.unlink(*files) == files.count ? true : false
|
95
98
|
end
|
96
99
|
|
97
100
|
class Path
|
data/lib/message_dir/message.rb
CHANGED
@@ -129,19 +129,27 @@ class MessageDir
|
|
129
129
|
@locked = false
|
130
130
|
end
|
131
131
|
|
132
|
+
def error_file
|
133
|
+
self.path + ".err"
|
134
|
+
end
|
135
|
+
|
132
136
|
def error?
|
133
|
-
File.exists?(self.
|
137
|
+
File.exists?(self.error_file)
|
134
138
|
end
|
135
139
|
|
136
|
-
def error
|
137
|
-
|
138
|
-
|
140
|
+
def error(&block)
|
141
|
+
unless block_given?
|
142
|
+
return nil unless self.error?
|
143
|
+
File.read(self.error_file)
|
144
|
+
else
|
145
|
+
File.open(self.error_file, File::WRONLY|File::CREAT|File::TRUNC, &block)
|
146
|
+
end
|
139
147
|
end
|
140
148
|
|
141
149
|
def error=(msg)
|
142
|
-
|
143
|
-
|
144
|
-
|
150
|
+
self.error do |fh|
|
151
|
+
fh.puts msg
|
152
|
+
end
|
145
153
|
end
|
146
154
|
|
147
155
|
def method_missing(method, *args, &block)
|
data/lib/message_dir/version.rb
CHANGED
@@ -334,5 +334,23 @@ describe MessageDir do
|
|
334
334
|
|
335
335
|
subject.msgs.should_not be_empty
|
336
336
|
end
|
337
|
+
|
338
|
+
it "should remove .err files when removing the message" do
|
339
|
+
msg = subject.new do |fh|
|
340
|
+
fh.error = "error"
|
341
|
+
end
|
342
|
+
msg.rm
|
343
|
+
File.exists?(msg.path + ".err").should_not be_true
|
344
|
+
end
|
345
|
+
|
346
|
+
it "should accept block form for error" do
|
347
|
+
msg = subject.new
|
348
|
+
msg.error do |efh|
|
349
|
+
efh.puts "Story of my live."
|
350
|
+
efh.puts "\n"
|
351
|
+
efh.puts "..."
|
352
|
+
end
|
353
|
+
msg.error.should =~ /Story of my live.\n\n.../m
|
354
|
+
end
|
337
355
|
end
|
338
356
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: message_dir
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -13,7 +13,7 @@ date: 2012-07-19 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: simple_uuid
|
16
|
-
requirement: &
|
16
|
+
requirement: &20644340 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,7 +21,7 @@ dependencies:
|
|
21
21
|
version: '0.2'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *20644340
|
25
25
|
description: Handle slow network messages with care
|
26
26
|
email:
|
27
27
|
- hartog.de.mik@gmail.com
|