sequel 5.15.0 → 5.16.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -41,6 +41,55 @@ describe "Model attribute setters" do
41
41
  end
42
42
  end
43
43
 
44
+ describe "Model attribute getters/setters" do
45
+ before do
46
+ a = @a = []
47
+ @c = Class.new(Sequel::Model(:items)) do
48
+ columns :id, :x, :"x y", :require_modification
49
+
50
+ [:x, :"x y"].each do |c|
51
+ define_method(c) do
52
+ a << c
53
+ super()
54
+ end
55
+ define_method(:"#{c}=") do |v|
56
+ a << :"#{c}=" << v
57
+ super(v)
58
+ end
59
+ end
60
+ end
61
+ DB.reset
62
+ end
63
+
64
+ it "should not override existing methods" do
65
+ @o = @c.new
66
+ @o.values.merge!(:x=>4, :"x y"=>5, :require_modification=>6)
67
+ @o.x.must_equal 4
68
+ @o.x = 1
69
+ @o.send(:"x y").must_equal 5
70
+ @o.send(:"x y=", 2)
71
+ @o.require_modification.must_equal true
72
+ @o.require_modification = 3
73
+ @o.values.must_equal(:x=>1, :"x y"=>2, :require_modification=>6)
74
+ @a.must_equal [:x, :x=, 1, :"x y", :"x y=", 2]
75
+ end
76
+
77
+ it "should not override existing methods in subclasses" do
78
+ @c = Class.new(@c)
79
+ @c.columns(:id, :x, :y, :"x y", :require_modification)
80
+ @o = @c.new
81
+ @o.values.merge!(:x=>4, :"x y"=>5, :require_modification=>6)
82
+ @o.x.must_equal 4
83
+ @o.x = 1
84
+ @o.send(:"x y").must_equal 5
85
+ @o.send(:"x y=", 2)
86
+ @o.require_modification.must_equal true
87
+ @o.require_modification = 3
88
+ @o.values.must_equal(:x=>1, :"x y"=>2, :require_modification=>6)
89
+ @a.must_equal [:x, :x=, 1, :"x y", :"x y=", 2]
90
+ end
91
+ end
92
+
44
93
  describe "Model.def_column_alias" do
45
94
  before do
46
95
  @o = Class.new(Sequel::Model(:items)) do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sequel
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.15.0
4
+ version: 5.16.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeremy Evans
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-12-02 00:00:00.000000000 Z
11
+ date: 2019-01-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: minitest
@@ -199,6 +199,7 @@ extra_rdoc_files:
199
199
  - doc/release_notes/5.13.0.txt
200
200
  - doc/release_notes/5.14.0.txt
201
201
  - doc/release_notes/5.15.0.txt
202
+ - doc/release_notes/5.16.0.txt
202
203
  files:
203
204
  - CHANGELOG
204
205
  - MIT-LICENSE
@@ -284,6 +285,7 @@ files:
284
285
  - doc/release_notes/5.13.0.txt
285
286
  - doc/release_notes/5.14.0.txt
286
287
  - doc/release_notes/5.15.0.txt
288
+ - doc/release_notes/5.16.0.txt
287
289
  - doc/release_notes/5.2.0.txt
288
290
  - doc/release_notes/5.3.0.txt
289
291
  - doc/release_notes/5.4.0.txt
@@ -837,8 +839,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
837
839
  - !ruby/object:Gem::Version
838
840
  version: '0'
839
841
  requirements: []
840
- rubyforge_project:
841
- rubygems_version: 2.7.6
842
+ rubygems_version: 3.0.1
842
843
  signing_key:
843
844
  specification_version: 4
844
845
  summary: The Database Toolkit for Ruby