persist 0.0.7 → 0.0.8

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.
@@ -2,7 +2,8 @@ require 'pstore'
2
2
 
3
3
  # Public: Implements a DSL around Ruby Standard Library's PStore to facilitate
4
4
  # simple file-persistant storage of Ruby objects in a transactional NoSQL
5
- # database.
5
+ # database. All methods are module methods and should be called on the Persist
6
+ # module.
6
7
  module Persist
7
8
  class << self
8
9
  # Public: Returns the persistant store Object if initialized.
@@ -1,3 +1,7 @@
1
1
  module Persist
2
- VERSION = '0.0.7'
3
- end
2
+ MAJOR, MINOR, TINY = 0, 0, 8
3
+
4
+ def self.version
5
+ [MAJOR, MINOR, TINY].join '.'
6
+ end
7
+ end
data/persist.gemspec CHANGED
@@ -13,5 +13,7 @@ Gem::Specification.new do |gem|
13
13
  gem.test_files = gem.files.grep(%r{^test/})
14
14
  gem.name = 'persist'
15
15
  gem.require_paths = ['lib']
16
- gem.version = Persist::VERSION
16
+ gem.version = Persist.version
17
+
18
+ gem.add_development_dependency 'minitest'
17
19
  end
data/test/helper.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  require 'minitest/autorun'
2
2
  require 'minitest/pride'
3
- require 'persist'
3
+ require '../lib/persist'
data/test/test_persist.rb CHANGED
@@ -67,9 +67,24 @@ describe Persist do
67
67
  end
68
68
  end
69
69
 
70
- describe "setting multiple key's values with Persist.transaction do" do
71
- it "blends" do
72
- assert false #TODO: test.
70
+ describe "a Persist.transaction do" do
71
+ it "sets multiple keys when commited" do
72
+ Persist.transaction do
73
+ Persist.db[:one] = 'first'
74
+ Persist.db[:two] = 'second'
75
+ end
76
+ assert_equal 'first', Persist[:one]
77
+ assert_equal 'second', Persist[:two]
78
+ end
79
+
80
+ it "sets no keys when aborted" do
81
+ Persist.transaction do
82
+ Persist.db[:pre] = 'before'
83
+ Persist.db.abort
84
+ Persist.db[:post] = 'after'
85
+ end
86
+ assert_nil Persist[:pre]
87
+ assert_nil Persist[:post]
73
88
  end
74
89
  end
75
90
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: persist
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.7
4
+ version: 0.0.8
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,8 +9,24 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-05-25 00:00:00.000000000 Z
13
- dependencies: []
12
+ date: 2012-06-25 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: minitest
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
14
30
  description: A DSL for storing Ruby Objects transactionally in a persistent NoSQL
15
31
  database
16
32
  email: