rufus-cloche 0.1.3 → 0.1.4
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG.txt +5 -0
- data/lib/rufus/cloche.rb +6 -2
- data/test/test.rb +9 -2
- metadata +2 -2
data/CHANGELOG.txt
CHANGED
data/lib/rufus/cloche.rb
CHANGED
@@ -57,7 +57,7 @@ module Rufus
|
|
57
57
|
end
|
58
58
|
end
|
59
59
|
|
60
|
-
VERSION = '0.1.
|
60
|
+
VERSION = '0.1.4'
|
61
61
|
|
62
62
|
attr_reader :dir
|
63
63
|
|
@@ -135,6 +135,10 @@ module Rufus
|
|
135
135
|
#
|
136
136
|
def delete (doc)
|
137
137
|
|
138
|
+
drev = doc['_rev']
|
139
|
+
|
140
|
+
raise ArgumentError.new('cannot delete doc without _rev') unless drev
|
141
|
+
|
138
142
|
type, key = doc['type'], doc['_id']
|
139
143
|
|
140
144
|
lock(type, key) do |f|
|
@@ -142,7 +146,7 @@ module Rufus
|
|
142
146
|
cur = do_get(f)
|
143
147
|
|
144
148
|
return nil unless cur
|
145
|
-
return cur if cur['_rev'] !=
|
149
|
+
return cur if cur['_rev'] != drev
|
146
150
|
|
147
151
|
begin
|
148
152
|
File.delete(f.path)
|
data/test/test.rb
CHANGED
@@ -80,7 +80,7 @@ class ClocheTest < Test::Unit::TestCase
|
|
80
80
|
|
81
81
|
def test_delete_missing
|
82
82
|
|
83
|
-
r = @c.delete({ '_id' => 'john', 'type' => 'person', 'eyes' => 'green' })
|
83
|
+
r = @c.delete({ '_id' => 'john', 'type' => 'person', 'eyes' => 'green', '_rev' => 7 })
|
84
84
|
|
85
85
|
assert_not_nil r
|
86
86
|
end
|
@@ -99,11 +99,18 @@ class ClocheTest < Test::Unit::TestCase
|
|
99
99
|
|
100
100
|
@c.put({ '_id' => 'john', 'type' => 'person', 'eyes' => 'green' })
|
101
101
|
|
102
|
-
r = @c.delete({ '_id' => 'john', 'type' => 'person', 'eyes' => 'green' })
|
102
|
+
r = @c.delete({ '_id' => 'john', 'type' => 'person', 'eyes' => 'green', '_rev' => 9 })
|
103
103
|
|
104
104
|
assert_not_nil r
|
105
105
|
end
|
106
106
|
|
107
|
+
def test_delete_without_rev
|
108
|
+
|
109
|
+
assert_raise(ArgumentError) do
|
110
|
+
@c.delete({ '_id' => 'john', 'type' => 'person' })
|
111
|
+
end
|
112
|
+
end
|
113
|
+
|
107
114
|
def test_get_many
|
108
115
|
|
109
116
|
load_people
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rufus-cloche
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- John Mettraux
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-12-
|
12
|
+
date: 2009-12-14 00:00:00 +09:00
|
13
13
|
default_executable:
|
14
14
|
dependencies: []
|
15
15
|
|