thingtank 0.0.3 → 0.0.4
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.
- data/VERSION +1 -1
- data/lib/thingtank/fakebase.rb +2 -2
- data/lib/thingtank/role_handling.rb +1 -1
- data/test/test_thingtank.rb +9 -0
- metadata +18 -18
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.4
|
data/lib/thingtank/fakebase.rb
CHANGED
@@ -1,11 +1,11 @@
|
|
1
1
|
# a replacement database for roles
|
2
2
|
class ThingTank::FakeBase
|
3
3
|
|
4
|
-
def initialize(doc, role)
|
4
|
+
def initialize(doc, role, add_dep = true)
|
5
5
|
@db = doc.database
|
6
6
|
@doc = doc
|
7
7
|
@role = role
|
8
|
-
@doc.dependencies.add_role(role)
|
8
|
+
@doc.dependencies.add_role(role) if add_dep
|
9
9
|
end
|
10
10
|
|
11
11
|
def method_missing(meth, *args)
|
@@ -145,7 +145,7 @@ class ThingTank
|
|
145
145
|
|
146
146
|
def to_role(klass, key=nil, add_role=true, &code)
|
147
147
|
@dependencies.add_role(klass) if add_role && key.nil?
|
148
|
-
role = key ? property_to_role(key, klass) : FakeBase.new(self, klass).get()
|
148
|
+
role = key ? property_to_role(key, klass) : FakeBase.new(self, klass, add_role).get()
|
149
149
|
(code.call(role) ; role.flush_to_doc) if code
|
150
150
|
role
|
151
151
|
end
|
data/test/test_thingtank.rb
CHANGED
@@ -39,6 +39,15 @@ describe "a general test" do
|
|
39
39
|
reset_test_db!
|
40
40
|
end
|
41
41
|
|
42
|
+
it "should add a role if set by is but not if just asked if it could be a role" do
|
43
|
+
doc1 = create
|
44
|
+
doc1.is(DrivingLicense)
|
45
|
+
could_it = doc1.could_be?(Car)
|
46
|
+
doc1.save
|
47
|
+
assert_equal false, could_it
|
48
|
+
assert_equal ["DrivingLicense"], load(doc1.id)["roles"]
|
49
|
+
end
|
50
|
+
|
42
51
|
it "should work with with" do
|
43
52
|
doc = create
|
44
53
|
doc.with('check') do |c|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: thingtank
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -13,7 +13,7 @@ date: 2012-02-05 00:00:00.000000000Z
|
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: couchrest
|
16
|
-
requirement: &
|
16
|
+
requirement: &17701800 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *17701800
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: couchrest_model
|
27
|
-
requirement: &
|
27
|
+
requirement: &17700880 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *17700880
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: yard
|
38
|
-
requirement: &
|
38
|
+
requirement: &17699960 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ~>
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: 0.6.0
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *17699960
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: bundler
|
49
|
-
requirement: &
|
49
|
+
requirement: &17699000 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ~>
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: 1.0.0
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *17699000
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: jeweler
|
60
|
-
requirement: &
|
60
|
+
requirement: &17692360 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ~>
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: 1.6.4
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *17692360
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: rcov
|
71
|
-
requirement: &
|
71
|
+
requirement: &17691300 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ! '>='
|
@@ -76,10 +76,10 @@ dependencies:
|
|
76
76
|
version: '0'
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *17691300
|
80
80
|
- !ruby/object:Gem::Dependency
|
81
81
|
name: linecache19
|
82
|
-
requirement: &
|
82
|
+
requirement: &17690100 !ruby/object:Gem::Requirement
|
83
83
|
none: false
|
84
84
|
requirements:
|
85
85
|
- - ! '>='
|
@@ -87,10 +87,10 @@ dependencies:
|
|
87
87
|
version: '0'
|
88
88
|
type: :development
|
89
89
|
prerelease: false
|
90
|
-
version_requirements: *
|
90
|
+
version_requirements: *17690100
|
91
91
|
- !ruby/object:Gem::Dependency
|
92
92
|
name: ruby-debug19
|
93
|
-
requirement: &
|
93
|
+
requirement: &17689000 !ruby/object:Gem::Requirement
|
94
94
|
none: false
|
95
95
|
requirements:
|
96
96
|
- - ! '>='
|
@@ -98,7 +98,7 @@ dependencies:
|
|
98
98
|
version: '0'
|
99
99
|
type: :development
|
100
100
|
prerelease: false
|
101
|
-
version_requirements: *
|
101
|
+
version_requirements: *17689000
|
102
102
|
description:
|
103
103
|
email: ! 'Base64.decode64(bGludXhAbWFyY3JlbmVhcm5zLmRl
|
104
104
|
|
@@ -156,7 +156,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
156
156
|
version: '0'
|
157
157
|
segments:
|
158
158
|
- 0
|
159
|
-
hash: -
|
159
|
+
hash: -1667695970233850533
|
160
160
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
161
161
|
none: false
|
162
162
|
requirements:
|