act_as_enumerable 0.1.1 → 0.1.2

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/.coveralls.yml CHANGED
@@ -1 +1 @@
1
- repo_token: ZzfF046txNMxLkyoa2fpjrANjsILZNGuJ
1
+ service_name: travis-ci
data/.gitignore CHANGED
@@ -16,3 +16,4 @@ capybara-*.html
16
16
  rerun.txt
17
17
  pickle-email-*.html
18
18
  *.gem
19
+ Gemfile.lock
data/Gemfile CHANGED
@@ -1,11 +1,3 @@
1
1
  source 'http://rubygems.org'
2
2
 
3
3
  gemspec
4
-
5
- group :test do
6
- gem 'rake', '~> 10.0.3'
7
- gem 'minitest', '~> 4.4.0'
8
- gem 'turn', '~> 0.9.3'
9
- gem 'shoulda', '~> 3.3.2'
10
- gem 'coveralls', require: false
11
- end
data/README.md CHANGED
@@ -1,6 +1,10 @@
1
1
  # ActAsEnumerable
2
2
 
3
- [![Build Status][travis-img]][travis-url] [![Coveralls][coveralls-img]][coveralls-url] [![Dependency Status][gemnasium-img]][gemnasium-url] [![Code Climate][codeclimate-img]][codeclimate-url] [![Gem Version][gemversion-img]][gemversion-url]
3
+ [![Build Status][travis-img]][travis-url]
4
+ [![Coveralls][coveralls-img]][coveralls-url]
5
+ [![Dependency Status][gemnasium-img]][gemnasium-url]
6
+ [![Code Climate][codeclimate-img]][codeclimate-url]
7
+ [![Gem Version][gemversion-img]][gemversion-url]
4
8
 
5
9
  _Add enumeration to your ruby classes_
6
10
 
@@ -74,7 +78,7 @@ Released under the MIT License. See the [LICENSE](https://github.com/caedes/act_
74
78
  [coveralls-url]: https://coveralls.io/r/caedes/act_as_enumerable
75
79
  [gemnasium-img]: https://gemnasium.com/caedes/act_as_enumerable.png
76
80
  [gemnasium-url]: https://gemnasium.com/caedes/act_as_enumerable
77
- [codeclimate-img]: https://codeclimate.com/badge.png
81
+ [codeclimate-img]: https://codeclimate.com/github/caedes/act_as_enumerable.png
78
82
  [codeclimate-url]: https://codeclimate.com/github/caedes/act_as_enumerable
79
83
  [gemversion-img]: https://badge.fury.io/rb/act_as_enumerable.png
80
84
  [gemversion-url]: http://badge.fury.io/rb/act_as_enumerable
data/Rakefile CHANGED
@@ -1,12 +1,9 @@
1
1
  #!/usr/bin/env rake
2
- require 'bundler/gem_tasks'
3
2
 
4
- require 'rake/testtask'
3
+ require 'bundler/gem_tasks'
4
+ require 'rspec/core/rake_task'
5
5
 
6
- Rake::TestTask.new do |t|
7
- t.libs << 'lib'
8
- t.test_files = FileList['test/*_test.rb']
9
- t.verbose = true
10
- end
6
+ RSpec::Core::RakeTask.new
11
7
 
12
- task default: :test
8
+ task default: :spec
9
+ task test: :spec
@@ -14,6 +14,6 @@ Gem::Specification.new do |s|
14
14
  s.require_path = 'lib'
15
15
 
16
16
  s.add_development_dependency 'rake'
17
- s.add_development_dependency 'minitest'
18
- s.add_development_dependency 'shoulda', '~> 3.1.1'
17
+ s.add_development_dependency 'rspec', '~> 2.13'
18
+ s.add_development_dependency 'coveralls', '~> 0.6'
19
19
  end
@@ -1,3 +1,3 @@
1
1
  module ActAsEnumerable
2
- VERSION = '0.1.1'
2
+ VERSION = '0.1.2'
3
3
  end
@@ -0,0 +1,88 @@
1
+ require_relative '../spec_helper'
2
+
3
+ class EmptyTestModel
4
+ end
5
+
6
+ describe EmptyTestModel do
7
+ it 'defines enum class method' do
8
+ EmptyTestModel.singleton_methods.should include(:enum)
9
+ end
10
+ end
11
+
12
+ class GenderTestModel
13
+ enum :gender, %w(male female)
14
+ end
15
+
16
+ describe GenderTestModel do
17
+ it 'defines gender_values class method' do
18
+ GenderTestModel.singleton_methods.should include(:gender_values)
19
+ GenderTestModel.gender_values.should == %w(male female)
20
+ end
21
+
22
+ describe 'without I18n' do
23
+ subject { GenderTestModel.new }
24
+
25
+ it 'defines gender_caption class method' do
26
+ GenderTestModel.singleton_methods.should include(:gender_captions)
27
+ GenderTestModel.gender_captions.should == %w(male female)
28
+ end
29
+
30
+ it 'defines humanize_gender instance method' do
31
+ subject.methods.should include(:humanize_gender)
32
+ %w(male female).each do |value|
33
+ subject.humanize_gender(value.to_sym).should == value
34
+ end
35
+ end
36
+
37
+ describe 'without setting :gender' do
38
+ it 'defines gender_caption instance method' do
39
+ subject.methods.should include(:gender_caption)
40
+ subject.gender_caption.should be_nil
41
+ end
42
+
43
+ %w(male female).each do |value|
44
+ it "defines #{value}? instance method" do
45
+ subject.methods.should include("#{value}?".to_sym)
46
+ end
47
+ end
48
+
49
+ %w(male female).each do |value|
50
+ describe "#{value}?" do
51
+ it 'returns false' do
52
+ subject.send("#{value}?".to_sym).should be_false
53
+ end
54
+ end
55
+ end
56
+ end
57
+
58
+ describe 'with setting :gender' do
59
+ before do
60
+ @gender_value = 'male'
61
+ subject.gender = @gender_value
62
+ end
63
+
64
+ it 'defines gender_caption instance method' do
65
+ subject.methods.should include(:gender_caption)
66
+ subject.gender_caption.should == 'male'
67
+ end
68
+
69
+ %w(male female).each do |value|
70
+ it "defines #{value}? instance method" do
71
+ subject.methods.should include("#{value}?".to_sym)
72
+ end
73
+ end
74
+
75
+ describe 'male?' do
76
+ it 'returns true' do
77
+ subject.male?.should be_true
78
+ end
79
+ end
80
+
81
+ describe 'female?' do
82
+ it 'returns false' do
83
+ subject.female?.should be_false
84
+ end
85
+ end
86
+ end
87
+ end
88
+ end
@@ -0,0 +1,4 @@
1
+ require 'coveralls'
2
+ Coveralls.wear!
3
+
4
+ require 'act_as_enumerable'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: act_as_enumerable
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -28,29 +28,29 @@ dependencies:
28
28
  - !ruby/object:Gem::Version
29
29
  version: '0'
30
30
  - !ruby/object:Gem::Dependency
31
- name: minitest
31
+ name: rspec
32
32
  requirement: !ruby/object:Gem::Requirement
33
33
  none: false
34
34
  requirements:
35
- - - ! '>='
35
+ - - ~>
36
36
  - !ruby/object:Gem::Version
37
- version: '0'
37
+ version: '2.13'
38
38
  type: :development
39
39
  prerelease: false
40
40
  version_requirements: !ruby/object:Gem::Requirement
41
41
  none: false
42
42
  requirements:
43
- - - ! '>='
43
+ - - ~>
44
44
  - !ruby/object:Gem::Version
45
- version: '0'
45
+ version: '2.13'
46
46
  - !ruby/object:Gem::Dependency
47
- name: shoulda
47
+ name: coveralls
48
48
  requirement: !ruby/object:Gem::Requirement
49
49
  none: false
50
50
  requirements:
51
51
  - - ~>
52
52
  - !ruby/object:Gem::Version
53
- version: 3.1.1
53
+ version: '0.6'
54
54
  type: :development
55
55
  prerelease: false
56
56
  version_requirements: !ruby/object:Gem::Requirement
@@ -58,7 +58,7 @@ dependencies:
58
58
  requirements:
59
59
  - - ~>
60
60
  - !ruby/object:Gem::Version
61
- version: 3.1.1
61
+ version: '0.6'
62
62
  description: Add enumeration to your ruby classes
63
63
  email:
64
64
  - laurentromain@gmail.com
@@ -70,7 +70,6 @@ files:
70
70
  - .gitignore
71
71
  - .travis.yml
72
72
  - Gemfile
73
- - Gemfile.lock
74
73
  - LICENSE.md
75
74
  - README.md
76
75
  - Rakefile
@@ -78,7 +77,8 @@ files:
78
77
  - init.rb
79
78
  - lib/act_as_enumerable.rb
80
79
  - lib/act_as_enumerable/version.rb
81
- - test/act_as_enumerable_test.rb
80
+ - spec/lib/act_as_enumerable_spec.rb
81
+ - spec/spec_helper.rb
82
82
  homepage: https://github.com/caedes/act_as_enumerable
83
83
  licenses: []
84
84
  post_install_message:
data/Gemfile.lock DELETED
@@ -1,57 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- act_as_enumerable (0.1.0)
5
-
6
- GEM
7
- remote: http://rubygems.org/
8
- specs:
9
- activesupport (3.2.11)
10
- i18n (~> 0.6)
11
- multi_json (~> 1.0)
12
- ansi (1.4.3)
13
- bourne (1.1.2)
14
- mocha (= 0.10.5)
15
- colorize (0.5.8)
16
- coveralls (0.5.5)
17
- colorize
18
- json
19
- rest-client
20
- simplecov (>= 0.7)
21
- thor
22
- i18n (0.6.1)
23
- json (1.7.6)
24
- metaclass (0.0.1)
25
- mime-types (1.19)
26
- minitest (4.4.0)
27
- mocha (0.10.5)
28
- metaclass (~> 0.0.1)
29
- multi_json (1.5.0)
30
- rake (10.0.3)
31
- rest-client (1.6.7)
32
- mime-types (>= 1.16)
33
- shoulda (3.3.2)
34
- shoulda-context (~> 1.0.1)
35
- shoulda-matchers (~> 1.4.1)
36
- shoulda-context (1.0.2)
37
- shoulda-matchers (1.4.2)
38
- activesupport (>= 3.0.0)
39
- bourne (~> 1.1.2)
40
- simplecov (0.7.1)
41
- multi_json (~> 1.0)
42
- simplecov-html (~> 0.7.1)
43
- simplecov-html (0.7.1)
44
- thor (0.16.0)
45
- turn (0.9.6)
46
- ansi
47
-
48
- PLATFORMS
49
- ruby
50
-
51
- DEPENDENCIES
52
- act_as_enumerable!
53
- coveralls
54
- minitest (~> 4.4.0)
55
- rake (~> 10.0.3)
56
- shoulda (~> 3.3.2)
57
- turn (~> 0.9.3)
@@ -1,78 +0,0 @@
1
- require 'test/unit'
2
- require 'act_as_enumerable'
3
- require 'shoulda'
4
-
5
- require 'coveralls'
6
- Coveralls.wear!
7
-
8
- class EnumPlusTest < Test::Unit::TestCase
9
-
10
- context 'when defining a new object' do
11
- setup do
12
- class EnumPlusTest
13
- end
14
-
15
- @enum_plus_test = EnumPlusTest.new
16
- end
17
-
18
- should 'define :enum' do
19
- assert EnumPlusTest.singleton_methods.include? :enum
20
- end
21
- end
22
-
23
- context 'with an object using :enum method (e.g. :gender)' do
24
- setup do
25
- class EnumPlusTest
26
- enum :gender, %w(male female)
27
- end
28
-
29
- @enum_plus_test = EnumPlusTest.new
30
- end
31
-
32
- should 'define `gender_values` method' do
33
- assert EnumPlusTest.singleton_methods.include? :gender_values
34
- assert_equal %w(male female), EnumPlusTest.gender_values
35
- end
36
-
37
- context 'without I18n' do
38
- should 'define `gender_caption` method' do
39
- assert EnumPlusTest.singleton_methods.include? :gender_captions
40
- assert_equal %w(male female), EnumPlusTest.gender_captions
41
- end
42
-
43
- should 'define `.humanize_gender` method' do
44
- assert @enum_plus_test.methods.include? :humanize_gender
45
-
46
- %w(male female).each do |value|
47
- assert_equal value, @enum_plus_test.humanize_gender(value.to_sym)
48
- end
49
- end
50
-
51
- context 'without setting :gender' do
52
- should 'define `.gender_caption` method' do
53
- assert @enum_plus_test.methods.include? :gender_caption
54
- assert_equal nil, @enum_plus_test.gender_caption
55
- end
56
- %w(male female).each do |value|
57
- should "define `.#{value}?` method" do
58
- assert @enum_plus_test.methods.include? "#{value}?".to_sym
59
- %w(male female).each do |value2|
60
- assert_equal false, @enum_plus_test.send("#{value}?".to_sym)
61
- end
62
- end
63
- end
64
- end
65
-
66
- context 'with setting :gender' do
67
- %w(male female).each do |value|
68
- setup { @enum_plus_test.gender = value }
69
-
70
- should "define `.#{value}?` method" do
71
- assert @enum_plus_test.methods.include? "#{value}?".to_sym
72
- end
73
- end
74
- end
75
- end
76
- end
77
-
78
- end