validatable_associations 0.1.0 → 0.1.1

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/README.rdoc CHANGED
@@ -1,12 +1,22 @@
1
1
  = ValidatableAssociations
2
2
 
3
- ValidatableAssociations is an add-on to Jay Fields
3
+ ValidatableAssociations is a Rails plugin and add-on to Jay Fields
4
4
  {Validatable}[http://validatable.rubyforge.org] library. This add-on lets you
5
- specify associations to other validatable classes and allows you to set up a
5
+ specify associations to other validatable Classes and allows you to set up a
6
6
  decent validatable structure.
7
7
 
8
8
  == Install
9
9
 
10
+ Install the gem (recommended):
11
+
12
+ $ gem install validatable_associations
13
+
14
+ Please notice that the validatable_associations gem is in the
15
+ {gemcutter}[http://gemcutter.org] repository. Please follow the instructions
16
+ provided on their website to set up your rubygems installation.
17
+
18
+ Or install as a Rails plugin:
19
+
10
20
  $ script/plugin install git://github.com/rubiii/validatable_associations.git
11
21
 
12
22
  == Associations
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.0
1
+ 0.1.1
@@ -1,13 +1,13 @@
1
1
  # == ValidatableAssociations
2
- #
3
- # ValidatableAssociations is an add-on to the Validatable gem by Jay Fields.
4
- # It adds the most common association methods provided by Rails to your
5
- # validatable Class and allows to set up a decent validatable structure.
2
+ #
3
+ # ValidatableAssociations is a Rails plugin and add-on to Jay Fields Validatable
4
+ # library. This add-on lets you specify associations to other validatable Classes
5
+ # and allows you to set up a decent validatable structure.
6
6
  module ValidatableAssociations
7
7
 
8
8
  # ValidatableAssociations::ClassMethods
9
9
  #
10
- # Includes class methods for setting up the associations.
10
+ # Includes Class methods for setting up the associations.
11
11
  module ClassMethods
12
12
 
13
13
  # Reader/writer method for has_one associations. Sets 1-n +associations+
@@ -16,7 +16,7 @@ module ValidatableAssociations
16
16
  def has_one(*associations)
17
17
  @has_one = [] unless @has_one
18
18
  return @has_one if associations.empty?
19
- @has_one = associations.map { |association| association.to_s }
19
+ @has_one += associations.map { |association| association.to_s }
20
20
  end
21
21
 
22
22
  end
@@ -36,7 +36,7 @@ module ValidatableAssociations
36
36
  # a reader/writer method of an association and handles the read/write process.
37
37
  # Delegates to super otherwise.
38
38
  def method_missing(method, *args)
39
- association_name = to_association_name(method)
39
+ association_name = association_name_from(method)
40
40
  super unless self.class.has_one.include? association_name
41
41
 
42
42
  association_to_set = find_or_create_association(association_name, args[0])
@@ -77,10 +77,10 @@ private
77
77
  # initialized already or in case of given +arguments+.
78
78
  def find_or_create_association(association_name, arguments = nil)
79
79
  if arguments
80
- to_constant(association_name).new arguments
80
+ constant_from(association_name).new arguments
81
81
  else
82
82
  association = self.instance_variable_get("@#{association_name}")
83
- association = to_constant(association_name).new unless association
83
+ association = constant_from(association_name).new unless association
84
84
  association
85
85
  end
86
86
  end
@@ -100,7 +100,7 @@ private
100
100
 
101
101
  # Expects the name of a reader/writer +method+ and turns it into a valid
102
102
  # name for an association.
103
- def to_association_name(method)
103
+ def association_name_from(method)
104
104
  association_name = method.to_s
105
105
  association_name.slice!(-1) if association_name[-1, 1] == "="
106
106
  association_name
@@ -109,7 +109,7 @@ private
109
109
  # Converts a given +symbol+ from snake_case into an existing Constant.
110
110
  # Note that the constanize method might raise a NameError in case the given
111
111
  # symbol could not be mapped to a Constant.
112
- def to_constant(symbol)
112
+ def constant_from(symbol)
113
113
  symbol.to_s.camelize.constantize
114
114
  end
115
115
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: validatable_associations
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
  - Daniel Harrington