muck-raker 0.2.5 → 0.2.6

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/Rakefile CHANGED
@@ -59,12 +59,12 @@ begin
59
59
  gemspec.description = "The aggregation and recommendation engine for the muck system."
60
60
  gemspec.authors = ["Joel Duffin Justin Ball"]
61
61
  gemspec.rubyforge_project = 'muck-raker'
62
- gemspec.add_dependency "mbleigh-acts-as-taggable-on"
62
+ gemspec.add_dependency "acts-as-taggable-on"
63
63
  gemspec.add_dependency "mislav-will_paginate"
64
64
  gemspec.add_dependency "httparty"
65
65
  gemspec.add_dependency "nokogiri"
66
66
  gemspec.add_dependency "muck-feedbag"
67
- gemspec.add_dependency "pauldix-feedzirra"
67
+ gemspec.add_dependency "feedzirra"
68
68
  gemspec.add_dependency "muck-engine"
69
69
  gemspec.add_dependency "muck-users"
70
70
  gemspec.add_dependency "muck-comments"
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.5
1
+ 0.2.6
data/muck-raker.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{muck-raker}
8
- s.version = "0.2.5"
8
+ s.version = "0.2.6"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Joel Duffin Justin Ball"]
12
- s.date = %q{2009-10-28}
12
+ s.date = %q{2009-10-29}
13
13
  s.description = %q{The aggregation and recommendation engine for the muck system.}
14
14
  s.email = %q{justinball@gmail.com}
15
15
  s.extra_rdoc_files = [
@@ -906,11 +906,7 @@ Gem::Specification.new do |s|
906
906
  "test/rails_root/vendor/plugins/jrails/lib/jrails.rb",
907
907
  "test/rails_root/vendor/plugins/jrails/rails/init.rb",
908
908
  "test/rails_root/vendor/plugins/ssl_requirement/lib/ssl_requirement.rb",
909
- "test/rails_root/vendor/plugins/ssl_requirement/test/ssl_requirement_test.rb",
910
- "test/rails_root/vendor/plugins/validation_reflection/init.rb",
911
- "test/rails_root/vendor/plugins/validation_reflection/lib/boiler_plate/validation_reflection.rb",
912
- "test/rails_root/vendor/plugins/validation_reflection/test/test_helper.rb",
913
- "test/rails_root/vendor/plugins/validation_reflection/test/validation_reflection_test.rb"
909
+ "test/rails_root/vendor/plugins/ssl_requirement/test/ssl_requirement_test.rb"
914
910
  ]
915
911
 
916
912
  if s.respond_to? :specification_version then
@@ -918,35 +914,35 @@ Gem::Specification.new do |s|
918
914
  s.specification_version = 3
919
915
 
920
916
  if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
921
- s.add_runtime_dependency(%q<mbleigh-acts-as-taggable-on>, [">= 0"])
917
+ s.add_runtime_dependency(%q<acts-as-taggable-on>, [">= 0"])
922
918
  s.add_runtime_dependency(%q<mislav-will_paginate>, [">= 0"])
923
919
  s.add_runtime_dependency(%q<httparty>, [">= 0"])
924
920
  s.add_runtime_dependency(%q<nokogiri>, [">= 0"])
925
921
  s.add_runtime_dependency(%q<muck-feedbag>, [">= 0"])
926
- s.add_runtime_dependency(%q<pauldix-feedzirra>, [">= 0"])
922
+ s.add_runtime_dependency(%q<feedzirra>, [">= 0"])
927
923
  s.add_runtime_dependency(%q<muck-engine>, [">= 0"])
928
924
  s.add_runtime_dependency(%q<muck-users>, [">= 0"])
929
925
  s.add_runtime_dependency(%q<muck-comments>, [">= 0"])
930
926
  s.add_runtime_dependency(%q<muck-solr>, [">= 0"])
931
927
  else
932
- s.add_dependency(%q<mbleigh-acts-as-taggable-on>, [">= 0"])
928
+ s.add_dependency(%q<acts-as-taggable-on>, [">= 0"])
933
929
  s.add_dependency(%q<mislav-will_paginate>, [">= 0"])
934
930
  s.add_dependency(%q<httparty>, [">= 0"])
935
931
  s.add_dependency(%q<nokogiri>, [">= 0"])
936
932
  s.add_dependency(%q<muck-feedbag>, [">= 0"])
937
- s.add_dependency(%q<pauldix-feedzirra>, [">= 0"])
933
+ s.add_dependency(%q<feedzirra>, [">= 0"])
938
934
  s.add_dependency(%q<muck-engine>, [">= 0"])
939
935
  s.add_dependency(%q<muck-users>, [">= 0"])
940
936
  s.add_dependency(%q<muck-comments>, [">= 0"])
941
937
  s.add_dependency(%q<muck-solr>, [">= 0"])
942
938
  end
943
939
  else
944
- s.add_dependency(%q<mbleigh-acts-as-taggable-on>, [">= 0"])
940
+ s.add_dependency(%q<acts-as-taggable-on>, [">= 0"])
945
941
  s.add_dependency(%q<mislav-will_paginate>, [">= 0"])
946
942
  s.add_dependency(%q<httparty>, [">= 0"])
947
943
  s.add_dependency(%q<nokogiri>, [">= 0"])
948
944
  s.add_dependency(%q<muck-feedbag>, [">= 0"])
949
- s.add_dependency(%q<pauldix-feedzirra>, [">= 0"])
945
+ s.add_dependency(%q<feedzirra>, [">= 0"])
950
946
  s.add_dependency(%q<muck-engine>, [">= 0"])
951
947
  s.add_dependency(%q<muck-users>, [">= 0"])
952
948
  s.add_dependency(%q<muck-comments>, [">= 0"])
data/rails/init.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  ActiveSupport::Dependencies.load_once_paths << lib_path
2
2
 
3
3
  if config.respond_to?(:gems)
4
- config.gem "mbleigh-acts-as-taggable-on", :source => "http://gems.github.com", :lib => "acts-as-taggable-on"
4
+ config.gem "acts-as-taggable-on"
5
5
  else
6
6
  begin
7
7
  require 'acts-as-taggable-on'
@@ -9,7 +9,7 @@ else
9
9
  begin
10
10
  gem 'mbleigh-acts-as-taggable-on'
11
11
  rescue Gem::LoadError
12
- puts "Please install the acts-as-taggable-on gem from http://gems.github.com"
12
+ puts "Please install the acts-as-taggable-on gem"
13
13
  end
14
14
  end
15
15
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: muck-raker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.5
4
+ version: 0.2.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Joel Duffin Justin Ball
@@ -9,11 +9,11 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-10-28 00:00:00 -06:00
12
+ date: 2009-10-29 00:00:00 -06:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
- name: mbleigh-acts-as-taggable-on
16
+ name: acts-as-taggable-on
17
17
  type: :runtime
18
18
  version_requirement:
19
19
  version_requirements: !ruby/object:Gem::Requirement
@@ -63,7 +63,7 @@ dependencies:
63
63
  version: "0"
64
64
  version:
65
65
  - !ruby/object:Gem::Dependency
66
- name: pauldix-feedzirra
66
+ name: feedzirra
67
67
  type: :runtime
68
68
  version_requirement:
69
69
  version_requirements: !ruby/object:Gem::Requirement
@@ -1033,7 +1033,3 @@ test_files:
1033
1033
  - test/rails_root/vendor/plugins/jrails/rails/init.rb
1034
1034
  - test/rails_root/vendor/plugins/ssl_requirement/lib/ssl_requirement.rb
1035
1035
  - test/rails_root/vendor/plugins/ssl_requirement/test/ssl_requirement_test.rb
1036
- - test/rails_root/vendor/plugins/validation_reflection/init.rb
1037
- - test/rails_root/vendor/plugins/validation_reflection/lib/boiler_plate/validation_reflection.rb
1038
- - test/rails_root/vendor/plugins/validation_reflection/test/test_helper.rb
1039
- - test/rails_root/vendor/plugins/validation_reflection/test/validation_reflection_test.rb
@@ -1,8 +0,0 @@
1
-
2
- require 'boiler_plate/validation_reflection'
3
-
4
- ActiveRecord::Base.class_eval do
5
- include BoilerPlate::ActiveRecordExtensions::ValidationReflection
6
- BoilerPlate::ActiveRecordExtensions::ValidationReflection.load_config
7
- BoilerPlate::ActiveRecordExtensions::ValidationReflection.install(self)
8
- end
@@ -1,129 +0,0 @@
1
- #--
2
- # Copyright (c) 2006-2008, Michael Schuerig, michael@schuerig.de
3
- #
4
- # Permission is hereby granted, free of charge, to any person obtaining
5
- # a copy of this software and associated documentation files (the
6
- # "Software"), to deal in the Software without restriction, including
7
- # without limitation the rights to use, copy, modify, merge, publish,
8
- # distribute, sublicense, and/or sell copies of the Software, and to
9
- # permit persons to whom the Software is furnished to do so, subject to
10
- # the following conditions:
11
- #
12
- # The above copyright notice and this permission notice shall be
13
- # included in all copies or substantial portions of the Software.
14
- #
15
- # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
16
- # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
17
- # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
18
- # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
19
- # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
20
- # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
21
- # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22
- #++
23
-
24
-
25
- require 'active_record/reflection'
26
- require 'ostruct'
27
-
28
- # Based on code by Sebastian Kanthak
29
- # See http://dev.rubyonrails.org/ticket/861
30
- module BoilerPlate # :nodoc:
31
- module ActiveRecordExtensions # :nodoc:
32
- module ValidationReflection # :nodoc:
33
- CONFIG_PATH = File.join(RAILS_ROOT, 'config', 'plugins', 'validation_reflection.rb')
34
-
35
- mattr_accessor :reflected_validations
36
- BoilerPlate::ActiveRecordExtensions::ValidationReflection.reflected_validations = %w(
37
- validates_acceptance_of
38
- validates_associated
39
- validates_confirmation_of
40
- validates_exclusion_of
41
- validates_format_of
42
- validates_inclusion_of
43
- validates_length_of
44
- validates_numericality_of
45
- validates_presence_of
46
- validates_uniqueness_of
47
- )
48
-
49
- mattr_accessor :in_ignored_subvalidation
50
- BoilerPlate::ActiveRecordExtensions::ValidationReflection.in_ignored_subvalidation = false
51
-
52
- def self.included(base)
53
- return if base.kind_of?(BoilerPlate::ActiveRecordExtensions::ValidationReflection::ClassMethods)
54
- base.extend(ClassMethods)
55
- end
56
-
57
- def self.load_config
58
- if File.file?(CONFIG_PATH)
59
- config = OpenStruct.new
60
- config.reflected_validations = reflected_validations
61
- silence_warnings do
62
- eval(IO.read(CONFIG_PATH), binding, CONFIG_PATH)
63
- end
64
- end
65
- end
66
-
67
- def self.install(base)
68
- reflected_validations.freeze
69
- reflected_validations.each do |validation_type|
70
- next if base.respond_to?("#{validation_type}_with_reflection")
71
- ignore_subvalidations = false
72
- if validation_type.kind_of?(Hash)
73
- ignore_subvalidations = validation_type[:ignore_subvalidations]
74
- validation_type = validation_type[:method]
75
- end
76
- base.class_eval <<-"end_eval"
77
- class << self
78
- def #{validation_type}_with_reflection(*attr_names)
79
- ignoring_subvalidations(#{ignore_subvalidations}) do
80
- #{validation_type}_without_reflection(*attr_names)
81
- remember_validation_metadata(:#{validation_type}, *attr_names)
82
- end
83
- end
84
-
85
- alias_method_chain :#{validation_type}, :reflection
86
- end
87
- end_eval
88
- end
89
- end
90
-
91
- module ClassMethods
92
-
93
- # Returns an array of MacroReflection objects for all validations in the class
94
- def reflect_on_all_validations
95
- read_inheritable_attribute(:validations) || []
96
- end
97
-
98
- # Returns an array of MacroReflection objects for all validations defined for the field +attr_name+.
99
- def reflect_on_validations_for(attr_name)
100
- attr_name = attr_name.to_sym
101
- reflect_on_all_validations.select do |reflection|
102
- reflection.name == attr_name
103
- end
104
- end
105
-
106
- private
107
-
108
- def remember_validation_metadata(validation_type, *attr_names)
109
- configuration = attr_names.last.is_a?(Hash) ? attr_names.pop : {}
110
- attr_names.each do |attr_name|
111
- write_inheritable_array :validations,
112
- [ ActiveRecord::Reflection::MacroReflection.new(validation_type, attr_name.to_sym, configuration, self) ]
113
- end
114
- end
115
-
116
- def ignoring_subvalidations(ignore)
117
- save_ignore = BoilerPlate::ActiveRecordExtensions::ValidationReflection.in_ignored_subvalidation
118
- unless BoilerPlate::ActiveRecordExtensions::ValidationReflection.in_ignored_subvalidation
119
- BoilerPlate::ActiveRecordExtensions::ValidationReflection.in_ignored_subvalidation = ignore
120
- yield
121
- end
122
- ensure
123
- BoilerPlate::ActiveRecordExtensions::ValidationReflection.in_ignored_subvalidation = save_ignore
124
- end
125
- end
126
-
127
- end
128
- end
129
- end
@@ -1,36 +0,0 @@
1
-
2
- ENV["RAILS_ENV"] = "test"
3
- RAILS_ROOT = File.join(File.dirname(__FILE__), '../../../..')
4
-
5
- $:.unshift File.join(File.dirname(__FILE__), '../lib')
6
- $:.unshift File.join(RAILS_ROOT, 'lib')
7
- $:.unshift File.join(RAILS_ROOT, 'vendor/rails/activerecord/lib')
8
- $:.unshift File.join(RAILS_ROOT, 'vendor/rails/actionpack/lib')
9
- $:.unshift File.join(RAILS_ROOT, 'vendor/rails/activesupport/lib')
10
-
11
-
12
- require 'test/unit'
13
- require 'logger'
14
- require 'active_support'
15
- require 'active_record'
16
- require 'action_controller'
17
- require 'action_controller/assertions'
18
- require 'html/document'
19
-
20
- require 'ruby-debug'
21
-
22
- RAILS_DEFAULT_LOGGER = Logger.new(STDERR)
23
- ### TODO why is this necessary?
24
- ActionController::Base.logger = RAILS_DEFAULT_LOGGER
25
- ActiveRecord::Base.logger = RAILS_DEFAULT_LOGGER
26
- ActiveRecord::Base.colorize_logging = false
27
-
28
-
29
- def with_log_level(level)
30
- old_level = RAILS_DEFAULT_LOGGER.level
31
- RAILS_DEFAULT_LOGGER.level = level
32
- yield
33
- ensure
34
- RAILS_DEFAULT_LOGGER.level = old_level
35
- end
36
-
@@ -1,126 +0,0 @@
1
-
2
- $:.unshift File.join(File.dirname(__FILE__))
3
- $:.unshift File.join(File.dirname(__FILE__), '/../lib')
4
-
5
- require 'test_helper'
6
-
7
- ActiveRecord::Base.class_eval do
8
- def self.validates_something_weird(*cols)
9
- cols.each do |col|
10
- validates_format_of col, :with => /weird/
11
- end
12
- end
13
- def self.validates_something_selfcontained(*cols)
14
- cols.each do |col|
15
- validates_format_of col, :with => /blablabla/
16
- end
17
- end
18
- end
19
-
20
- require 'boiler_plate/validation_reflection'
21
-
22
- ActiveRecord::Base.class_eval do
23
- include BoilerPlate::ActiveRecordExtensions::ValidationReflection
24
- BoilerPlate::ActiveRecordExtensions::ValidationReflection.reflected_validations << :validates_something_weird
25
- BoilerPlate::ActiveRecordExtensions::ValidationReflection.reflected_validations << {
26
- :method => :validates_something_selfcontained,
27
- :ignore_subvalidations => true
28
- }
29
- BoilerPlate::ActiveRecordExtensions::ValidationReflection.install(self)
30
- end
31
-
32
-
33
- class ValidationReflectionTest < Test::Unit::TestCase
34
-
35
- class Dummy < ActiveRecord::Base
36
- class << self
37
-
38
- def create_fake_column(name, null = true, limit = nil)
39
- sql_type = limit ? "varchar (#{limit})" : nil
40
- col = ActiveRecord::ConnectionAdapters::Column.new(name, nil, sql_type, null)
41
- col
42
- end
43
-
44
- def columns
45
- [
46
- create_fake_column('col0'),
47
- create_fake_column('col1'),
48
- create_fake_column('col2', false, 100),
49
- create_fake_column('col3'),
50
- create_fake_column('col4'),
51
- create_fake_column('col5'),
52
- create_fake_column('col6'),
53
- create_fake_column('col7')
54
- ]
55
- end
56
- end
57
-
58
- has_one :nothing
59
-
60
- validates_presence_of :col1
61
- validates_length_of :col2, :maximum => 100
62
- validates_format_of :col3, :with => /^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i
63
- validates_numericality_of :col4, :only_integer => true
64
- validates_numericality_of :col5, :less_than => 5
65
- validates_something_weird :col6
66
- validates_something_selfcontained :col7
67
- end
68
-
69
-
70
- def test_sanity
71
- assert_equal [], Dummy.reflect_on_validations_for(:col0)
72
- end
73
-
74
- def test_validates_presence_of_is_reflected
75
- refls = Dummy.reflect_on_validations_for(:col1)
76
- assert refls.all? { |r| r.name.to_s == 'col1' }
77
- assert refls.find { |r| r.macro == :validates_presence_of }
78
- end
79
-
80
- def test_string_limit_is_reflected
81
- refls = Dummy.reflect_on_validations_for(:col2)
82
- assert refls.any? { |r| r.macro == :validates_length_of && r.options[:maximum] == 100 }
83
- end
84
-
85
- def test_format_is_reflected
86
- refls = Dummy.reflect_on_validations_for(:col3)
87
- assert refls.any? { |r| r.macro == :validates_format_of && r.options[:with] == /^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i }
88
- end
89
-
90
- def test_numeric_integer_is_reflected
91
- refls = Dummy.reflect_on_validations_for(:col4)
92
- assert refls.any? { |r| r.macro == :validates_numericality_of && r.options[:only_integer] }
93
- end
94
-
95
- def test_numeric_is_reflected
96
- refls = Dummy.reflect_on_validations_for(:col5)
97
- assert refls.any? { |r| r.macro == :validates_numericality_of }
98
- end
99
-
100
- def test_validation_options_are_reflected
101
- refls = Dummy.reflect_on_validations_for(:col5)
102
- refl = refls[0]
103
- assert_equal 5, refl.options[:less_than]
104
- end
105
-
106
- def test_custom_validations_are_reflected
107
- refls = Dummy.reflect_on_validations_for(:col6)
108
- assert refls.any? { |r| r.macro == :validates_something_weird }
109
- assert refls.any? { |r| r.macro == :validates_format_of }
110
- end
111
-
112
- def test_custom_validations_with_options_are_reflected
113
- refls = Dummy.reflect_on_validations_for(:col7)
114
- assert refls.any? { |r| r.macro == :validates_something_selfcontained }
115
- end
116
-
117
- def test_subvalidations_are_reflected
118
- refls = Dummy.reflect_on_validations_for(:col6)
119
- assert_equal 2, refls.size
120
- end
121
-
122
- def test_ignored_subvalidations_are_not_reflected
123
- refls = Dummy.reflect_on_validations_for(:col7)
124
- assert_equal 1, refls.size
125
- end
126
- end