yeti 0.3.14 → 0.3.15

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/lib/yeti/editor.rb CHANGED
@@ -136,11 +136,12 @@ module Yeti
136
136
  end
137
137
  accessor_module.module_eval """
138
138
  def #{name}
139
- unless defined? @#{name}
139
+ if defined? @#{name}
140
+ @#{name}
141
+ else
140
142
  opts = self.class.attribute_options[:#{name}]
141
- @#{name} = format_output #{from}, opts
143
+ format_output #{from}, opts
142
144
  end
143
- @#{name}
144
145
  end
145
146
  def #{name}=(value)
146
147
  opts = self.class.attribute_options[:#{name}]
data/lib/yeti/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Yeti
2
- VERSION = "0.3.14"
2
+ VERSION = "0.3.15"
3
3
  end
@@ -242,6 +242,7 @@ describe ::Yeti::Editor do
242
242
  attribute :timestamp, from: ".timestamp_str"
243
243
  attribute :related_id, from: "related.id"
244
244
  attribute :invalid
245
+ attribute :with_default_from_another_attribute, from: ".related_id"
245
246
 
246
247
  def related
247
248
  Struct.new(:id, :description).new 2, "Business man"
@@ -274,6 +275,10 @@ describe ::Yeti::Editor do
274
275
  it "attribute raises if value cannot be found in source" do
275
276
  expect{ subject.invalid }.to raise_error NoMethodError
276
277
  end
278
+ it "do not assign default value on access" do
279
+ subject.with_default_from_another_attribute.should eq(2)
280
+ subject.instance_variable_get(:@with_default_from_another_attribute).should be_nil
281
+ end
277
282
  end
278
283
  describe "#mandatory?" do
279
284
  subject do
metadata CHANGED
@@ -1,72 +1,81 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: yeti
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.14
4
+ version: 0.3.15
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - Joseph HALTER
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2013-08-13 00:00:00.000000000 Z
12
+ date: 2013-09-30 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: activemodel
15
16
  requirement: !ruby/object:Gem::Requirement
17
+ none: false
16
18
  requirements:
17
- - - '>='
19
+ - - ! '>='
18
20
  - !ruby/object:Gem::Version
19
21
  version: '0'
20
22
  type: :runtime
21
23
  prerelease: false
22
24
  version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
23
26
  requirements:
24
- - - '>='
27
+ - - ! '>='
25
28
  - !ruby/object:Gem::Version
26
29
  version: '0'
27
30
  - !ruby/object:Gem::Dependency
28
31
  name: string_cleaner
29
32
  requirement: !ruby/object:Gem::Requirement
33
+ none: false
30
34
  requirements:
31
- - - '>='
35
+ - - ! '>='
32
36
  - !ruby/object:Gem::Version
33
37
  version: '0'
34
38
  type: :runtime
35
39
  prerelease: false
36
40
  version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
37
42
  requirements:
38
- - - '>='
43
+ - - ! '>='
39
44
  - !ruby/object:Gem::Version
40
45
  version: '0'
41
46
  - !ruby/object:Gem::Dependency
42
47
  name: rake
43
48
  requirement: !ruby/object:Gem::Requirement
49
+ none: false
44
50
  requirements:
45
- - - '>='
51
+ - - ! '>='
46
52
  - !ruby/object:Gem::Version
47
53
  version: '0'
48
54
  type: :development
49
55
  prerelease: false
50
56
  version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
51
58
  requirements:
52
- - - '>='
59
+ - - ! '>='
53
60
  - !ruby/object:Gem::Version
54
61
  version: '0'
55
62
  - !ruby/object:Gem::Dependency
56
63
  name: rspec
57
64
  requirement: !ruby/object:Gem::Requirement
65
+ none: false
58
66
  requirements:
59
- - - '>='
67
+ - - ! '>='
60
68
  - !ruby/object:Gem::Version
61
69
  version: '0'
62
70
  type: :development
63
71
  prerelease: false
64
72
  version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
65
74
  requirements:
66
- - - '>='
75
+ - - ! '>='
67
76
  - !ruby/object:Gem::Version
68
77
  version: '0'
69
- description: 'Yeti: Context, Editor and Search patterns'
78
+ description: ! 'Yeti: Context, Editor and Search patterns'
70
79
  email:
71
80
  - joseph@openhood.com
72
81
  executables: []
@@ -95,26 +104,27 @@ files:
95
104
  - yeti.gemspec
96
105
  homepage: ''
97
106
  licenses: []
98
- metadata: {}
99
107
  post_install_message:
100
108
  rdoc_options: []
101
109
  require_paths:
102
110
  - lib
103
111
  required_ruby_version: !ruby/object:Gem::Requirement
112
+ none: false
104
113
  requirements:
105
- - - '>='
114
+ - - ! '>='
106
115
  - !ruby/object:Gem::Version
107
116
  version: '0'
108
117
  required_rubygems_version: !ruby/object:Gem::Requirement
118
+ none: false
109
119
  requirements:
110
- - - '>='
120
+ - - ! '>='
111
121
  - !ruby/object:Gem::Version
112
122
  version: '0'
113
123
  requirements: []
114
124
  rubyforge_project:
115
- rubygems_version: 2.0.3
125
+ rubygems_version: 1.8.23
116
126
  signing_key:
117
- specification_version: 4
127
+ specification_version: 3
118
128
  summary: Editor pattern simplifies edition of multiple objects at once using ActiveModel
119
129
  test_files:
120
130
  - spec/spec_helper.rb
checksums.yaml DELETED
@@ -1,7 +0,0 @@
1
- ---
2
- SHA1:
3
- metadata.gz: 145a74cad12c6112a80a599647cf928007430f08
4
- data.tar.gz: 4121ad4c8a7dbddb0f839740f9ccb0441acd0e07
5
- SHA512:
6
- metadata.gz: c8f4c71f9d98231a3878b54db2706e258faf39a22d3d827672a60ca31b136fa55a1be879963a1bbcbe90f13a0330317b66a04003197fb009b16e0373b8bdcfe2
7
- data.tar.gz: 433275a0ad3e8ff1ca689a49f58dbce2e7df34f93e707c4b88d5625a65d7d46b7b67e8d0c7b3c3b5173e2e349777656671889f869b9e0373774ceff3793c229d