act_as_enumerable 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
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