factbase 0.12.1 → 0.13.0
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 +4 -4
- data/.github/workflows/typos.yml +1 -1
- data/Gemfile +1 -1
- data/Gemfile.lock +3 -3
- data/lib/factbase/version.rb +1 -1
- data/lib/factbase.rb +6 -1
- data/test/test_factbase.rb +9 -0
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cb06b280801b081a1ae2c02147b4c960017c52a0cdb2c38dcd895cff53943344
|
4
|
+
data.tar.gz: cde4f73ddf30a7d4b6d9f9b8dadf823c948f6bb5fa672ad180867a46ef7b9ce2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 42072d2fd692798e3dd25a16167416cc6afd601d12998a1d0a5d79b2ab18d66bc09fcf40ae11e2a53af4df6fd9f5cba56a6adf32b94edd11e5122c9992304bbc
|
7
|
+
data.tar.gz: e6ec47e6c0715ac9c8148bc5ac25e36f6e009dd7da34c32386a7b5d97dcdf11c6ed6e5ed17f27ca03e2ad454bf5dacae0624ec7ab5119a4396f4a4134a6f5b11
|
data/.github/workflows/typos.yml
CHANGED
data/Gemfile
CHANGED
@@ -11,7 +11,7 @@ gem 'minitest-reporters', '~>1.7', require: false
|
|
11
11
|
gem 'os', '~>1.1', require: false
|
12
12
|
gem 'qbash', '~>0.4', require: false
|
13
13
|
gem 'rake', '~>13.2', require: false
|
14
|
-
gem 'rdoc', '
|
14
|
+
gem 'rdoc', '6.14.1', require: false # GPL
|
15
15
|
gem 'rubocop', '~>1.74', require: false
|
16
16
|
gem 'rubocop-minitest', '~>0.38', require: false
|
17
17
|
gem 'rubocop-performance', '~>1.25', require: false
|
data/Gemfile.lock
CHANGED
@@ -24,7 +24,7 @@ GEM
|
|
24
24
|
date (3.4.1)
|
25
25
|
decoor (0.1.0)
|
26
26
|
docile (1.4.1)
|
27
|
-
elapsed (0.0
|
27
|
+
elapsed (0.1.0)
|
28
28
|
loog (> 0)
|
29
29
|
tago (> 0)
|
30
30
|
ellipsized (0.3.0)
|
@@ -67,7 +67,7 @@ GEM
|
|
67
67
|
racc (1.8.1)
|
68
68
|
rainbow (3.1.1)
|
69
69
|
rake (13.3.0)
|
70
|
-
rdoc (6.14.
|
70
|
+
rdoc (6.14.2)
|
71
71
|
erb
|
72
72
|
psych (>= 4.0.0)
|
73
73
|
regexp_parser (2.10.0)
|
@@ -134,7 +134,7 @@ DEPENDENCIES
|
|
134
134
|
os (~> 1.1)
|
135
135
|
qbash (~> 0.4)
|
136
136
|
rake (~> 13.2)
|
137
|
-
rdoc (
|
137
|
+
rdoc (= 6.14.1)
|
138
138
|
rubocop (~> 1.74)
|
139
139
|
rubocop-minitest (~> 0.38)
|
140
140
|
rubocop-performance (~> 1.25)
|
data/lib/factbase/version.rb
CHANGED
data/lib/factbase.rb
CHANGED
@@ -177,7 +177,12 @@ class Factbase
|
|
177
177
|
taped = Factbase::Taped.new(before)
|
178
178
|
catch :commit do
|
179
179
|
require_relative 'factbase/light'
|
180
|
-
|
180
|
+
commit = false
|
181
|
+
catch :rollback do
|
182
|
+
yield Factbase::Light.new(Factbase.new(taped))
|
183
|
+
commit = true
|
184
|
+
end
|
185
|
+
return 0 unless commit
|
181
186
|
rescue Factbase::Rollback
|
182
187
|
return 0
|
183
188
|
end
|
data/test/test_factbase.rb
CHANGED
@@ -486,6 +486,15 @@ class TestFactbase < Factbase::Test
|
|
486
486
|
assert_equal(1, fb.size)
|
487
487
|
end
|
488
488
|
|
489
|
+
def test_rolls_back
|
490
|
+
fb = Factbase.new
|
491
|
+
fb.txn do |fbt|
|
492
|
+
fbt.insert.foo = 1
|
493
|
+
throw :rollback
|
494
|
+
end
|
495
|
+
assert_equal(0, fb.size)
|
496
|
+
end
|
497
|
+
|
489
498
|
def test_get_raise_for_empty_fact
|
490
499
|
fb = Factbase.new
|
491
500
|
fb.txn do |fbt|
|