enumerize 2.4.0 → 2.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/ruby.yml +73 -0
- data/CHANGELOG.md +7 -0
- data/Gemfile.global +1 -8
- data/Gemfile.rails70 +9 -0
- data/Gemfile.railsmaster +5 -0
- data/README.md +182 -101
- data/lib/enumerize/activerecord.rb +6 -2
- data/lib/enumerize/scope/activerecord.rb +4 -0
- data/lib/enumerize/scope/mongoid.rb +4 -0
- data/lib/enumerize/scope/sequel.rb +4 -0
- data/lib/enumerize/version.rb +1 -1
- data/test/activemodel_test.rb +22 -22
- data/test/activerecord_test.rb +129 -106
- data/test/attribute_map_test.rb +7 -7
- data/test/attribute_test.rb +31 -31
- data/test/base_test.rb +35 -35
- data/test/module_attributes_test.rb +8 -8
- data/test/mongo_mapper_test.rb +8 -8
- data/test/mongoid_test.rb +30 -27
- data/test/multiple_test.rb +8 -8
- data/test/predicates_test.rb +18 -18
- data/test/rails_admin_test.rb +2 -2
- data/test/sequel_test.rb +56 -53
- data/test/set_test.rb +23 -23
- data/test/value_test.rb +28 -35
- metadata +10 -30
- data/.travis.yml +0 -35
data/test/activemodel_test.rb
CHANGED
@@ -24,50 +24,50 @@ describe Enumerize do
|
|
24
24
|
|
25
25
|
it 'initialize value' do
|
26
26
|
user = model.new(:name => 'active_model_user', :sex => :male, :role => :user, :interests => [:music, :programming])
|
27
|
-
user.sex.must_equal 'male'
|
28
|
-
user.sex_text.must_equal 'Male'
|
29
|
-
user.role.must_equal 'user'
|
30
|
-
user.role_text.must_equal 'User'
|
31
|
-
user.interests.must_equal %w(music programming)
|
27
|
+
expect(user.sex).must_equal 'male'
|
28
|
+
expect(user.sex_text).must_equal 'Male'
|
29
|
+
expect(user.role).must_equal 'user'
|
30
|
+
expect(user.role_text).must_equal 'User'
|
31
|
+
expect(user.interests).must_equal %w(music programming)
|
32
32
|
end
|
33
33
|
|
34
34
|
it 'sets nil if invalid value is passed' do
|
35
35
|
user = model.new
|
36
36
|
user.sex = :invalid
|
37
|
-
user.sex.must_be_nil
|
37
|
+
expect(user.sex).must_be_nil
|
38
38
|
end
|
39
39
|
|
40
40
|
it 'stores value' do
|
41
41
|
user = model.new
|
42
42
|
user.sex = :female
|
43
|
-
user.sex.must_equal 'female'
|
43
|
+
expect(user.sex).must_equal 'female'
|
44
44
|
end
|
45
45
|
|
46
46
|
it 'has default value' do
|
47
|
-
model.new.role.must_equal 'user'
|
47
|
+
expect(model.new.role).must_equal 'user'
|
48
48
|
end
|
49
49
|
|
50
50
|
it 'validates inclusion' do
|
51
51
|
user = model.new
|
52
52
|
user.role = 'wrong'
|
53
|
-
user.wont_be :valid?
|
53
|
+
expect(user).wont_be :valid?
|
54
54
|
end
|
55
55
|
|
56
56
|
it 'supports multiple attributes' do
|
57
57
|
user = ActiveModelUser.new
|
58
|
-
user.interests.must_be_instance_of Enumerize::Set
|
59
|
-
user.interests.must_be_empty
|
58
|
+
expect(user.interests).must_be_instance_of Enumerize::Set
|
59
|
+
expect(user.interests).must_be_empty
|
60
60
|
user.interests << :music
|
61
|
-
user.interests.must_equal %w(music)
|
61
|
+
expect(user.interests).must_equal %w(music)
|
62
62
|
user.interests << :sports
|
63
|
-
user.interests.must_equal %w(music sports)
|
63
|
+
expect(user.interests).must_equal %w(music sports)
|
64
64
|
|
65
65
|
user.interests = []
|
66
66
|
interests = user.interests
|
67
67
|
interests << :music
|
68
|
-
interests.must_equal %w(music)
|
68
|
+
expect(interests).must_equal %w(music)
|
69
69
|
interests << :dancing
|
70
|
-
interests.must_equal %w(music dancing)
|
70
|
+
expect(interests).must_equal %w(music dancing)
|
71
71
|
end
|
72
72
|
|
73
73
|
it 'returns invalid multiple value for validation' do
|
@@ -75,19 +75,19 @@ describe Enumerize do
|
|
75
75
|
user.interests << :music
|
76
76
|
user.interests << :invalid
|
77
77
|
values = user.read_attribute_for_validation(:interests)
|
78
|
-
values.must_equal %w(music invalid)
|
78
|
+
expect(values).must_equal %w(music invalid)
|
79
79
|
end
|
80
80
|
|
81
81
|
it 'validates multiple attributes' do
|
82
82
|
user = ActiveModelUser.new
|
83
83
|
user.interests << :invalid
|
84
|
-
user.wont_be :valid?
|
84
|
+
expect(user).wont_be :valid?
|
85
85
|
|
86
86
|
user.interests = Object.new
|
87
|
-
user.wont_be :valid?
|
87
|
+
expect(user).wont_be :valid?
|
88
88
|
|
89
89
|
user.interests = ['music', '']
|
90
|
-
user.must_be :valid?
|
90
|
+
expect(user).must_be :valid?
|
91
91
|
end
|
92
92
|
|
93
93
|
it 'validates presence with multiple attributes' do
|
@@ -95,17 +95,17 @@ describe Enumerize do
|
|
95
95
|
user.interests = []
|
96
96
|
user.valid?
|
97
97
|
|
98
|
-
user.errors[:interests].wont_be :empty?
|
98
|
+
expect(user.errors[:interests]).wont_be :empty?
|
99
99
|
|
100
100
|
user.interests = ['']
|
101
101
|
user.valid?
|
102
102
|
|
103
|
-
user.errors[:interests].wont_be :empty?
|
103
|
+
expect(user.errors[:interests]).wont_be :empty?
|
104
104
|
|
105
105
|
user.interests = [:dancing, :programming]
|
106
106
|
user.valid?
|
107
107
|
|
108
|
-
user.errors[:interests].must_be_empty
|
108
|
+
expect(user.errors[:interests]).must_be_empty
|
109
109
|
end
|
110
110
|
end
|
111
111
|
|