persist 0.0.7 → 0.0.8

Sign up to get free protection for your applications and to get access to all the features.
@@ -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: