gitmodel 0.0.5 → 0.0.6

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'gitmodel'
3
- s.version = '0.0.5'
3
+ s.version = '0.0.6'
4
4
  s.platform = Gem::Platform::RUBY
5
5
 
6
6
  s.authors = ["Paul Dowman"]
@@ -79,7 +79,11 @@ module GitModel
79
79
  def new_record?
80
80
  @new_record || false
81
81
  end
82
-
82
+
83
+ def persisted?
84
+ !new_record?
85
+ end
86
+
83
87
  # Valid options are:
84
88
  # :transaction
85
89
  # OR:
@@ -1,32 +1,42 @@
1
1
  require 'spec_helper'
2
+ require 'active_model/lint'
2
3
 
3
- class LintTest < ActiveModel::TestCase
4
- include ActiveModel::Lint::Tests
5
-
6
- def setup
7
- @model = TestEntity.new
8
- end
9
- end
10
-
11
4
  describe GitModel::Persistable do
12
5
 
13
- it 'passes ActiveModel lint tests' do
6
+ context 'lint' do
7
+ let(:model) { TestEntity.new }
8
+
9
+ include ActiveModel::Lint::Tests
10
+
11
+ it 'must implement the #to_key interface' do
12
+ test_to_key
13
+ end
14
+
15
+ it 'must implement the #to_param interface' do
16
+ test_to_param
17
+ end
18
+
19
+ it 'must implement the #valid? interface' do
20
+ test_valid?
21
+ end
22
+
23
+ it 'must implement the #persisted? interface' do
24
+ test_persisted?
25
+ end
26
+
27
+ it 'must implement the #model_naming interface' do
28
+ test_model_naming
29
+ end
14
30
 
15
- o = LintTest.new("ActiveModel lint test")
16
- o.setup
31
+ it 'must implement the #errors interface' do
32
+ test_errors_aref
33
+ test_errors_full_messages
34
+ end
17
35
 
18
- # TODO get this list of methods dynamically
19
- o.test_to_key
20
- o.test_to_param
21
- o.test_valid?
22
- o.test_persisted?
23
- o.test_model_naming
24
- o.test_errors_aref
25
- o.test_errors_full_messages
26
36
  end
27
37
 
28
38
  describe '#save' do
29
-
39
+
30
40
  it 'raises an exception if the id is not set' do
31
41
  o = TestEntity.new
32
42
  lambda {o.save}.should raise_error(GitModel::NullId)
@@ -3,6 +3,7 @@ GitModel.git_user_name = 'GitModel Test'
3
3
  GitModel.git_user_email = 'foo@bar.com'
4
4
 
5
5
  RSpec.configure do |config|
6
+ config.expect_with :rspec, :stdlib
6
7
  config.before(:each) do
7
8
  GitModel.recreate_db!
8
9
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gitmodel
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2011-08-03 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activemodel
16
- requirement: &70218492110080 !ruby/object:Gem::Requirement
16
+ requirement: &70250239614100 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 3.0.1
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70218492110080
24
+ version_requirements: *70250239614100
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: activesupport
27
- requirement: &70218492109600 !ruby/object:Gem::Requirement
27
+ requirement: &70250239613620 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 3.0.1
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *70218492109600
35
+ version_requirements: *70250239613620
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: grit
38
- requirement: &70218492135740 !ruby/object:Gem::Requirement
38
+ requirement: &70250239639760 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: 2.3.0
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *70218492135740
46
+ version_requirements: *70250239639760
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: lockfile
49
- requirement: &70218492135280 !ruby/object:Gem::Requirement
49
+ requirement: &70250239639300 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 1.4.3
55
55
  type: :runtime
56
56
  prerelease: false
57
- version_requirements: *70218492135280
57
+ version_requirements: *70250239639300
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: memcache-client
60
- requirement: &70218492134820 !ruby/object:Gem::Requirement
60
+ requirement: &70250239638840 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: 1.8.5
66
66
  type: :runtime
67
67
  prerelease: false
68
- version_requirements: *70218492134820
68
+ version_requirements: *70250239638840
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: yajl-ruby
71
- requirement: &70218492134360 !ruby/object:Gem::Requirement
71
+ requirement: &70250239638380 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ! '>='
@@ -76,10 +76,10 @@ dependencies:
76
76
  version: 0.8.2
77
77
  type: :runtime
78
78
  prerelease: false
79
- version_requirements: *70218492134360
79
+ version_requirements: *70250239638380
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: ZenTest
82
- requirement: &70218492133900 !ruby/object:Gem::Requirement
82
+ requirement: &70250239637920 !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
85
85
  - - ! '>='
@@ -87,10 +87,10 @@ dependencies:
87
87
  version: 4.4.0
88
88
  type: :development
89
89
  prerelease: false
90
- version_requirements: *70218492133900
90
+ version_requirements: *70250239637920
91
91
  - !ruby/object:Gem::Dependency
92
92
  name: autotest
93
- requirement: &70218492133440 !ruby/object:Gem::Requirement
93
+ requirement: &70250239637460 !ruby/object:Gem::Requirement
94
94
  none: false
95
95
  requirements:
96
96
  - - ! '>='
@@ -98,10 +98,10 @@ dependencies:
98
98
  version: 4.4.1
99
99
  type: :development
100
100
  prerelease: false
101
- version_requirements: *70218492133440
101
+ version_requirements: *70250239637460
102
102
  - !ruby/object:Gem::Dependency
103
103
  name: rspec
104
- requirement: &70218492132980 !ruby/object:Gem::Requirement
104
+ requirement: &70250239637000 !ruby/object:Gem::Requirement
105
105
  none: false
106
106
  requirements:
107
107
  - - ! '>='
@@ -109,7 +109,7 @@ dependencies:
109
109
  version: 2.0.1
110
110
  type: :development
111
111
  prerelease: false
112
- version_requirements: *70218492132980
112
+ version_requirements: *70250239637000
113
113
  description: GitModel persists Ruby objects using Git as a data storage engine. It's
114
114
  an ActiveModel implementation so it works stand-alone or in Rails 3 as a drop-in
115
115
  replacement for ActiveRecord or DataMapper. Because the database is a Git repository