turnt 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- ZjcyN2FkMmYwZWI3N2YyMjcxOTExYWZiNGJiMjI1YzI5ZjQwZWEwZg==
4
+ NjdiNDY3ZjhhYmU0M2M2N2YwZWM3ZmU4YzU4MDA4MjQ3N2QzYmZiMA==
5
5
  data.tar.gz: !binary |-
6
- NDJkZGZhYTIzN2Y0N2E5OTIwMzI2ZTI0MDUxNTRiNjRlMmFmZWMyNQ==
6
+ NzFhOTRmYjAwN2I5NzBkZGU5MmJkZmI5YTQ1YjUyYmE5NmU1OTRhYQ==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- MThhYjgyOWExZTBhMWE4MTU3ZTg1MGQzNDdlMTVhM2E3OGJlMzJlNTdhODA1
10
- Zjc5ZDFlZTYyMjRmMDRhN2EzZjRjZDYwYzE0Nzc0NjkxZGY0MjI1ZWUzZTEw
11
- ZjNlNTdkMGFkZWRiZDM5Nzk1YzllNzQwYTY0MTNmZjk1MTBjNGE=
9
+ Y2VlMWZjMDQ5MzlkYjkxZjVlNjc0ODg3YzA4Mzc1MzFkMGRkOTVjNGFjOGE4
10
+ ZTNhM2JjMWRmNmFlZDZiYjBiZTE1ZjdkOWRhMjdhMTE5YjA1ZjE4ZGZlOTFl
11
+ YTVjMjQ3ODA1ZDcyZDk0ZWQ0NmViN2JkNWI4MGMxYTZhMTBkYzM=
12
12
  data.tar.gz: !binary |-
13
- NjY1YmJlMWQ5NTIwOWUxNDUxZTZhZmVmMTkyOWI0ZDlhNGZjYmJjNmU2YzY0
14
- YThkYjU0MTZkODZmODIwYWQ4NjhlMTc2NTIwZGZkZTM0NWYwYWIyZTMzYjRm
15
- MmVkYmViNTAwZjVjMDY2YjhlZDE3YjRiOWY0NTM5MDU2N2I1M2E=
13
+ YTMyNTFjODE2MjZkODJmOGFmZjhlMmNjYjhkMDkzNmNmNmVlZjIyZmJmYjg3
14
+ ZDlkNWFhMDkxNGM1ZWNmNGU0MDM0MDdhZDRmZTNkYjIxYjBkMTM2MTRjZTA2
15
+ ODk3NWE3MTBiNDEzMjNkOWJjMWFmMzRkNjY3ZGE3YzYwZmVlMTA=
data/Gemfile CHANGED
@@ -11,4 +11,5 @@ group :development do
11
11
  gem "bundler", "~> 1.0"
12
12
  gem "jeweler", "~> 2.0.1"
13
13
  gem "simplecov", ">= 0"
14
+ gem "debugger"
14
15
  end
@@ -10,6 +10,13 @@ GEM
10
10
  addressable (2.3.5)
11
11
  atomic (1.1.15)
12
12
  builder (3.2.2)
13
+ columnize (0.3.6)
14
+ debugger (1.6.2)
15
+ columnize (>= 0.3.1)
16
+ debugger-linecache (~> 1.2.0)
17
+ debugger-ruby_core_source (~> 1.2.3)
18
+ debugger-linecache (1.2.0)
19
+ debugger-ruby_core_source (1.2.4)
13
20
  descendants_tracker (0.0.3)
14
21
  docile (1.1.3)
15
22
  faraday (0.9.0)
@@ -75,6 +82,7 @@ PLATFORMS
75
82
 
76
83
  DEPENDENCIES
77
84
  bundler (~> 1.0)
85
+ debugger
78
86
  jeweler (~> 2.0.1)
79
87
  rdoc (~> 3.12)
80
88
  shoulda
@@ -5,20 +5,23 @@ How to use
5
5
  class Organization
6
6
  include Turnt
7
7
 
8
- def name
9
- "Turnt"
10
- end
11
-
12
- def employes
13
- end
8
+ attr_accessor :name, employes
14
9
  end
15
10
 
16
11
  So you can call:
17
12
 
18
- Organization.has_name? # => true
19
- Organization.has_employes? # => false
13
+ tux = Organization.new
14
+ tux.has_name? # => false
15
+ tux.has_employes? # => false
16
+
17
+ Now, I will set values to name
18
+
19
+ tux = Organization.new
20
+ tux.name = "Tux!"
21
+ tux.has_name? # => true
22
+ tux.has_employes? # => false
20
23
 
21
- This works with methods and attributes!
24
+ This works with methods!
22
25
 
23
26
 
24
27
  == Contributing to turnt
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.0
1
+ 0.1.1
@@ -1,16 +1,57 @@
1
1
  module Turnt
2
2
  def method_missing(method, *args)
3
- super(method, *args) unless has?(method) || methods.include?(method)
4
- value = send(instance_method(method))
5
- if value.nil?
6
- false
3
+ super(method, *args) unless has?(method)
4
+ @method = method; @value = send(instance_method); validate_data_types!
5
+ end
6
+
7
+ def nil_validation!
8
+ nil? if @value.nil?
9
+ end
10
+
11
+ def numeric_validation!
12
+ nil? if @value.is_a?(Numeric)
13
+ end
14
+
15
+ def string_validation!
16
+ empty? if @value.is_a?(String)
17
+ end
18
+
19
+ def symbol_validation!
20
+ nil? if @value.is_a?(Symbol)
21
+ end
22
+
23
+ def collection_validation!
24
+ empty? if @value.is_a?(Array) || @value.is_a?(Hash)
25
+ end
26
+
27
+ private
28
+
29
+ def validate_data_types!
30
+ validation_parts.first
31
+ end
32
+
33
+ def validation_parts
34
+ public_methods(true).grep(/_validation!$/).map{ |m| send(m) }.compact
35
+ end
36
+
37
+ def nil?
38
+ if @value.nil?
39
+ return false
40
+ else
41
+ return true
42
+ end
43
+ end
44
+
45
+ def empty?
46
+ if @value.empty?
47
+ return false
7
48
  else
8
- true
49
+ return true
9
50
  end
10
51
  end
11
52
 
12
- def instance_method(method)
13
- "#{method}".slice!(4..method.size - 2)
53
+ def instance_method
54
+ "#{@method}".slice!(4..@method.size - 2)
14
55
  end
15
56
 
16
57
  def has?(method)
@@ -16,6 +16,7 @@ ENV["COVERAGE"] && SimpleCov.start do
16
16
  end
17
17
  require 'rubygems'
18
18
  require 'bundler'
19
+ require 'debugger'
19
20
  begin
20
21
  Bundler.setup(:default, :development)
21
22
  rescue Bundler::BundlerError => e
@@ -1,33 +1,54 @@
1
1
  require 'helper'
2
2
 
3
3
  class TestTurnt < Test::Unit::TestCase
4
+ def setup
5
+ @organization = Organization.new
6
+ end
7
+
4
8
  def test_has_name
5
- organization = Organization.new
6
- assert_equal true, organization.has_name?
9
+ assert_equal true, @organization.has_name?
10
+ end
11
+
12
+ def test_has_street
13
+ assert_equal false, @organization.has_street?
7
14
  end
8
15
 
9
16
  def test_has_partners
10
- organization = Organization.new
11
- assert_equal false, organization.has_partners?
17
+ assert_equal true, @organization.has_partners?
18
+ end
19
+
20
+ def test_has_employes
21
+ assert_equal false, @organization.has_employes?
12
22
  end
13
23
 
14
24
  def test_method_missing_without_has
15
- organization = Organization.new
16
- assert_raise(NoMethodError) { organization.ha_partners? }
25
+ assert_raise(NoMethodError) { @organization.ha_partners? }
17
26
  end
18
27
 
19
28
  def test_method_missing_with_has
20
- organization = Organization.new
21
- assert_raise(NoMethodError) { organization.has_invalid_attribute? }
29
+ assert_raise(NoMethodError) { @organization.has_invalid_attribute? }
22
30
  end
23
31
  end
24
32
 
25
33
  class Organization
26
34
  include Turnt
27
35
  def name
28
- "fuu bazz"
36
+ "fill_string"
37
+ end
38
+
39
+ def street
40
+ ""
29
41
  end
30
42
 
31
43
  def partners
44
+ ["victor", "John"]
45
+ end
46
+
47
+ def employes
48
+ []
49
+ end
50
+
51
+ def hiring
52
+ false
32
53
  end
33
54
  end
@@ -0,0 +1,66 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
+ # -*- encoding: utf-8 -*-
5
+ # stub: turnt 0.1.1 ruby lib
6
+
7
+ Gem::Specification.new do |s|
8
+ s.name = "turnt"
9
+ s.version = "0.1.1"
10
+
11
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
+ s.authors = ["Victor Antoniazzi"]
13
+ s.date = "2014-03-17"
14
+ s.description = "A gem for check if attribute has value."
15
+ s.email = "vgsantoniazzi@gmail.com"
16
+ s.extra_rdoc_files = [
17
+ "LICENSE.txt",
18
+ "README.rdoc"
19
+ ]
20
+ s.files = [
21
+ ".document",
22
+ "Gemfile",
23
+ "Gemfile.lock",
24
+ "LICENSE.txt",
25
+ "README.rdoc",
26
+ "Rakefile",
27
+ "VERSION",
28
+ "lib/turnt.rb",
29
+ "test/helper.rb",
30
+ "test/test_turnt.rb",
31
+ "turnt.gemspec"
32
+ ]
33
+ s.homepage = "http://github.com/vgsantoniazzi/turnt"
34
+ s.licenses = ["MIT"]
35
+ s.require_paths = ["lib"]
36
+ s.rubygems_version = "2.1.11"
37
+ s.summary = "Organization.has_name?"
38
+
39
+ if s.respond_to? :specification_version then
40
+ s.specification_version = 4
41
+
42
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
43
+ s.add_development_dependency(%q<shoulda>, [">= 0"])
44
+ s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
45
+ s.add_development_dependency(%q<bundler>, ["~> 1.0"])
46
+ s.add_development_dependency(%q<jeweler>, ["~> 2.0.1"])
47
+ s.add_development_dependency(%q<simplecov>, [">= 0"])
48
+ s.add_development_dependency(%q<debugger>, [">= 0"])
49
+ else
50
+ s.add_dependency(%q<shoulda>, [">= 0"])
51
+ s.add_dependency(%q<rdoc>, ["~> 3.12"])
52
+ s.add_dependency(%q<bundler>, ["~> 1.0"])
53
+ s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
54
+ s.add_dependency(%q<simplecov>, [">= 0"])
55
+ s.add_dependency(%q<debugger>, [">= 0"])
56
+ end
57
+ else
58
+ s.add_dependency(%q<shoulda>, [">= 0"])
59
+ s.add_dependency(%q<rdoc>, ["~> 3.12"])
60
+ s.add_dependency(%q<bundler>, ["~> 1.0"])
61
+ s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
62
+ s.add_dependency(%q<simplecov>, [">= 0"])
63
+ s.add_dependency(%q<debugger>, [">= 0"])
64
+ end
65
+ end
66
+
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: turnt
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Victor Antoniazzi
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-02-28 00:00:00.000000000 Z
11
+ date: 2014-03-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: shoulda
@@ -80,6 +80,20 @@ dependencies:
80
80
  - - ! '>='
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: debugger
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ! '>='
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ! '>='
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
83
97
  description: A gem for check if attribute has value.
84
98
  email: vgsantoniazzi@gmail.com
85
99
  executables: []
@@ -98,6 +112,7 @@ files:
98
112
  - lib/turnt.rb
99
113
  - test/helper.rb
100
114
  - test/test_turnt.rb
115
+ - turnt.gemspec
101
116
  homepage: http://github.com/vgsantoniazzi/turnt
102
117
  licenses:
103
118
  - MIT