nilify_blanks 1.0.0 → 1.0.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/Appraisals ADDED
@@ -0,0 +1,15 @@
1
+ appraise "3.0" do
2
+ gem "rails", "~> 3.0.9"
3
+ end
4
+
5
+ appraise "3.1" do
6
+ gem "rails", "~> 3.1.6"
7
+ end
8
+
9
+ appraise "3.2" do
10
+ gem "rails", "~> 3.2.6"
11
+ end
12
+
13
+ appraise "4.0" do
14
+ gem "rails", "~> 4.0.0.beta1"
15
+ end
data/Gemfile ADDED
@@ -0,0 +1,3 @@
1
+ source "http://rubygems.org"
2
+
3
+ gemspec
data/Gemfile.lock ADDED
@@ -0,0 +1,50 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ nilify_blanks (1.0.0)
5
+ activerecord (>= 3.0.0)
6
+ activesupport (>= 3.0.0)
7
+
8
+ GEM
9
+ remote: http://rubygems.org/
10
+ specs:
11
+ activemodel (3.2.12)
12
+ activesupport (= 3.2.12)
13
+ builder (~> 3.0.0)
14
+ activerecord (3.2.12)
15
+ activemodel (= 3.2.12)
16
+ activesupport (= 3.2.12)
17
+ arel (~> 3.0.2)
18
+ tzinfo (~> 0.3.29)
19
+ activesupport (3.2.12)
20
+ i18n (~> 0.6)
21
+ multi_json (~> 1.0)
22
+ appraisal (0.5.1)
23
+ bundler
24
+ rake
25
+ arel (3.0.2)
26
+ builder (3.0.4)
27
+ diff-lcs (1.2.1)
28
+ i18n (0.6.4)
29
+ multi_json (1.6.1)
30
+ rake (10.0.3)
31
+ rspec (2.13.0)
32
+ rspec-core (~> 2.13.0)
33
+ rspec-expectations (~> 2.13.0)
34
+ rspec-mocks (~> 2.13.0)
35
+ rspec-core (2.13.0)
36
+ rspec-expectations (2.13.0)
37
+ diff-lcs (>= 1.1.3, < 2.0)
38
+ rspec-mocks (2.13.0)
39
+ sqlite3 (1.3.7)
40
+ tzinfo (0.3.35)
41
+
42
+ PLATFORMS
43
+ ruby
44
+
45
+ DEPENDENCIES
46
+ appraisal (~> 0.5.1)
47
+ nilify_blanks!
48
+ rake (~> 10.0.3)
49
+ rspec (~> 2.13)
50
+ sqlite3 (~> 1.3.6)
data/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2008 [name of plugin creator]
1
+ Copyright (c) 2010 Ben Hughes
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining
4
4
  a copy of this software and associated documentation files (the
data/README.rdoc CHANGED
@@ -1,3 +1,7 @@
1
+ {<img src="https://secure.travis-ci.org/rubiety/nilify_blanks.png?branch=master" alt="Build Status" />}[http://travis-ci.org/rubiety/nilify_blanks]
2
+ {<img src="https://gemnasium.com/rubiety/nilify_blanks.png" alt="Dependency Status" />}[https://gemnasium.com/rubiety/nilify_blanks]
3
+ {<img src="https://codeclimate.com/github/rubiety/nilify_blanks.png" />}[https://codeclimate.com/github/rubiety/nilify_blanks]
4
+
1
5
  == Nilify Blanks
2
6
 
3
7
  In Rails when saving a model from a form and values are not provided by the user, an empty string is recorded to the database instead of a NULL as many would prefer (mixing blanks and NULLs can become confusing). This plugin allows you to specify a list of attributes (or exceptions from all the attributes) that will be converted to nil if they are blank before a model is saved.
@@ -38,3 +42,9 @@ Checking uses an ActiveRecord before_save filter by default, but you can specify
38
42
  class Post < ActiveRecord::Before
39
43
  nilify_blanks :before => :validation_on_update
40
44
  end
45
+
46
+ == Running Tests
47
+
48
+ This gem uses appraisal to test with different versions of the dependencies. See Appraisal first for which versions are tested, then run to test all appraisals:
49
+
50
+ $ rake appraisal test
data/Rakefile CHANGED
@@ -1,15 +1,36 @@
1
1
  require 'rubygems'
2
+ require 'bundler/setup'
3
+
2
4
  require 'rake'
3
- require 'rake/rdoctask'
4
- require 'spec/rake/spectask'
5
+ require 'appraisal'
6
+ require 'rspec/core/rake_task'
7
+ require 'rdoc/task'
8
+
9
+ desc 'Default: run unit tests.'
10
+ task :default => [:clean, :test]
5
11
 
6
- desc "Run specs"
7
- Spec::Rake::SpecTask.new do |t|
8
- t.spec_files = Rake::FileList["spec/**/*_spec.rb"]
9
- t.spec_opts = ["-c"]
12
+ desc "Run Specs"
13
+ RSpec::Core::RakeTask.new(:spec) do |t|
10
14
  end
11
15
 
12
- task :default => :spec
16
+ task :test => :spec
17
+
18
+ desc 'Test the paperclip plugin under all supported Rails versions.'
19
+ task :all do |t|
20
+ if ENV['BUNDLE_GEMFILE']
21
+ exec('rake test')
22
+ else
23
+ Rake::Task["appraisal:install"].execute
24
+ exec('rake appraisal test')
25
+ end
26
+ end
27
+
28
+ desc "Clean up files."
29
+ task :clean do |t|
30
+ FileUtils.rm_rf "tmp"
31
+ Dir.glob("nilify_blanks-*.gem").each {|f| FileUtils.rm f }
32
+ Dir.glob("spec/db/*.sqlite3").each {|f| FileUtils.rm f }
33
+ end
13
34
 
14
35
  desc "Generate documentation for the plugin."
15
36
  Rake::RDocTask.new(:rdoc) do |rdoc|
@@ -21,3 +42,4 @@ Rake::RDocTask.new(:rdoc) do |rdoc|
21
42
  end
22
43
 
23
44
  Dir["#{File.dirname(__FILE__)}/lib/tasks/*.rake"].sort.each { |ext| load ext }
45
+
data/lib/nilify_blanks.rb CHANGED
@@ -22,8 +22,11 @@ module NilifyBlanks
22
22
 
23
23
  cattr_accessor :nilify_blanks_columns
24
24
 
25
- self.nilify_blanks_columns = self.content_columns.reject {|c| !c.null }.map {|c| c.name.to_s }
26
- self.nilify_blanks_columns = self.nilify_blanks_columns.select {|c| options[:only].include?(c) } if options[:only]
25
+ if options[:only]
26
+ self.nilify_blanks_columns = options[:only].clone
27
+ else
28
+ self.nilify_blanks_columns = self.content_columns.reject {|c| !c.null }.map {|c| c.name.to_s }
29
+ end
27
30
  self.nilify_blanks_columns -= options[:except] if options[:except]
28
31
  self.nilify_blanks_columns = self.nilify_blanks_columns.map(&:to_s)
29
32
 
@@ -1,3 +1,3 @@
1
1
  module NilifyBlanks
2
- VERSION = "1.0.0"
3
- end
2
+ VERSION = "1.0.1"
3
+ end
data/spec/db/test.sqlite3 CHANGED
Binary file
@@ -35,7 +35,7 @@ describe NilifyBlanks do
35
35
  context "Model with nilify_blanks :only => [:first_name, :title]" do
36
36
  before(:all) do
37
37
  class PostOnlyFirstNameAndTitle < ActiveRecord::Base
38
- set_table_name :posts
38
+ self.table_name = "posts"
39
39
  nilify_blanks :only => [:first_name, :title]
40
40
  end
41
41
 
@@ -61,7 +61,7 @@ describe NilifyBlanks do
61
61
  context "Model with nilify_blanks :except => [:first_name, :title]" do
62
62
  before(:all) do
63
63
  class PostExceptFirstNameAndTitle < ActiveRecord::Base
64
- set_table_name :posts
64
+ self.table_name = "posts"
65
65
  nilify_blanks :except => [:first_name, :title]
66
66
  end
67
67
 
@@ -84,4 +84,4 @@ describe NilifyBlanks do
84
84
  end
85
85
  end
86
86
 
87
- end
87
+ end
data/spec/spec_helper.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  require "rubygems"
2
- require "nilify_blanks"
2
+ require "rspec"
3
3
  require "active_support"
4
4
  require "active_record"
5
5
 
metadata CHANGED
@@ -1,64 +1,90 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: nilify_blanks
3
- version: !ruby/object:Gem::Version
4
- hash: 23
5
- prerelease: false
6
- segments:
7
- - 1
8
- - 0
9
- - 0
10
- version: 1.0.0
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.1
5
+ prerelease:
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Ben Hughes
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2010-10-14 00:00:00 +08:00
19
- default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
12
+ date: 2013-05-21 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
22
15
  name: activesupport
23
- prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: &70350387392160 !ruby/object:Gem::Requirement
25
17
  none: false
26
- requirements:
27
- - - ">="
28
- - !ruby/object:Gem::Version
29
- hash: 7
30
- segments:
31
- - 3
32
- - 0
33
- - 0
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
34
21
  version: 3.0.0
35
22
  type: :runtime
36
- version_requirements: *id001
37
- - !ruby/object:Gem::Dependency
38
- name: activerecord
39
23
  prerelease: false
40
- requirement: &id002 !ruby/object:Gem::Requirement
24
+ version_requirements: *70350387392160
25
+ - !ruby/object:Gem::Dependency
26
+ name: activerecord
27
+ requirement: &70350387391160 !ruby/object:Gem::Requirement
41
28
  none: false
42
- requirements:
43
- - - ">="
44
- - !ruby/object:Gem::Version
45
- hash: 7
46
- segments:
47
- - 3
48
- - 0
49
- - 0
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
50
32
  version: 3.0.0
51
33
  type: :runtime
52
- version_requirements: *id002
53
- description: Often times you'll end up with empty strings where you really want nil at the database level. This plugin automatically converts blanks to nil and is configurable.
34
+ prerelease: false
35
+ version_requirements: *70350387391160
36
+ - !ruby/object:Gem::Dependency
37
+ name: rake
38
+ requirement: &70350387390600 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ~>
42
+ - !ruby/object:Gem::Version
43
+ version: 10.0.3
44
+ type: :development
45
+ prerelease: false
46
+ version_requirements: *70350387390600
47
+ - !ruby/object:Gem::Dependency
48
+ name: rspec
49
+ requirement: &70350387390060 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: '2.13'
55
+ type: :development
56
+ prerelease: false
57
+ version_requirements: *70350387390060
58
+ - !ruby/object:Gem::Dependency
59
+ name: appraisal
60
+ requirement: &70350387389540 !ruby/object:Gem::Requirement
61
+ none: false
62
+ requirements:
63
+ - - ~>
64
+ - !ruby/object:Gem::Version
65
+ version: 0.5.1
66
+ type: :development
67
+ prerelease: false
68
+ version_requirements: *70350387389540
69
+ - !ruby/object:Gem::Dependency
70
+ name: sqlite3
71
+ requirement: &70350387389040 !ruby/object:Gem::Requirement
72
+ none: false
73
+ requirements:
74
+ - - ~>
75
+ - !ruby/object:Gem::Version
76
+ version: 1.3.6
77
+ type: :development
78
+ prerelease: false
79
+ version_requirements: *70350387389040
80
+ description: Often times you'll end up with empty strings where you really want nil
81
+ at the database level. This plugin automatically converts blanks to nil and is
82
+ configurable.
54
83
  email: ben@railsgarden.com
55
84
  executables: []
56
-
57
85
  extensions: []
58
-
59
86
  extra_rdoc_files: []
60
-
61
- files:
87
+ files:
62
88
  - lib/nilify_blanks/railtie.rb
63
89
  - lib/nilify_blanks/version.rb
64
90
  - lib/nilify_blanks.rb
@@ -67,46 +93,37 @@ files:
67
93
  - spec/db/test.sqlite3
68
94
  - spec/nilify_blanks_spec.rb
69
95
  - spec/spec_helper.rb
96
+ - Appraisals
70
97
  - CHANGELOG.rdoc
98
+ - Gemfile
99
+ - Gemfile.lock
71
100
  - LICENSE
72
101
  - Rakefile
73
102
  - README.rdoc
74
103
  - init.rb
75
- has_rdoc: true
76
104
  homepage: http://github.com/rubiety/nilify_blanks
77
105
  licenses: []
78
-
79
106
  post_install_message:
80
107
  rdoc_options: []
81
-
82
- require_paths:
108
+ require_paths:
83
109
  - lib
84
- required_ruby_version: !ruby/object:Gem::Requirement
110
+ required_ruby_version: !ruby/object:Gem::Requirement
85
111
  none: false
86
- requirements:
87
- - - ">="
88
- - !ruby/object:Gem::Version
89
- hash: 3
90
- segments:
91
- - 0
92
- version: "0"
93
- required_rubygems_version: !ruby/object:Gem::Requirement
112
+ requirements:
113
+ - - ! '>='
114
+ - !ruby/object:Gem::Version
115
+ version: '0'
116
+ required_rubygems_version: !ruby/object:Gem::Requirement
94
117
  none: false
95
- requirements:
96
- - - ">="
97
- - !ruby/object:Gem::Version
98
- hash: 19
99
- segments:
100
- - 1
101
- - 3
102
- - 4
118
+ requirements:
119
+ - - ! '>='
120
+ - !ruby/object:Gem::Version
103
121
  version: 1.3.4
104
122
  requirements: []
105
-
106
123
  rubyforge_project: nilify_blanks
107
- rubygems_version: 1.3.7
124
+ rubygems_version: 1.8.16
108
125
  signing_key:
109
126
  specification_version: 3
110
127
  summary: Auto-convert blank fields to nil.
111
128
  test_files: []
112
-
129
+ has_rdoc: