active_record_content_blob 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/Gemfile CHANGED
@@ -1,15 +1,20 @@
1
1
  source "http://rubygems.org"
2
2
 
3
3
  group :development do
4
- gem "rspec", "~> 2.14.0"
4
+ gem 'rspec', '~> 2.14.0'
5
+
5
6
  gem "bundler"
6
7
  gem "jeweler", "~> 1.8.4"
7
8
  gem 'database_cleaner'
8
9
  gem "pry"
9
10
  gem "rdoc", "~> 3.12"
11
+ # gem "generator_spec" # wished this helped...
12
+
13
+
10
14
  end
11
15
 
16
+ gem 'rails', '3.2.14'
12
17
 
13
18
  gem 'sqlite3'
14
- gem 'activesupport', ">=3.2.12"
15
- gem 'activerecord', ">=3.2.12"
19
+ #gem 'activesupport', ">=3.2.14"
20
+ #gem 'activerecord', ">=3.2.14"
@@ -1,28 +1,40 @@
1
1
  GEM
2
2
  remote: http://rubygems.org/
3
3
  specs:
4
- activemodel (4.0.0)
5
- activesupport (= 4.0.0)
6
- builder (~> 3.1.0)
7
- activerecord (4.0.0)
8
- activemodel (= 4.0.0)
9
- activerecord-deprecated_finders (~> 1.0.2)
10
- activesupport (= 4.0.0)
11
- arel (~> 4.0.0)
12
- activerecord-deprecated_finders (1.0.3)
13
- activesupport (4.0.0)
4
+ actionmailer (3.2.14)
5
+ actionpack (= 3.2.14)
6
+ mail (~> 2.5.4)
7
+ actionpack (3.2.14)
8
+ activemodel (= 3.2.14)
9
+ activesupport (= 3.2.14)
10
+ builder (~> 3.0.0)
11
+ erubis (~> 2.7.0)
12
+ journey (~> 1.0.4)
13
+ rack (~> 1.4.5)
14
+ rack-cache (~> 1.2)
15
+ rack-test (~> 0.6.1)
16
+ sprockets (~> 2.2.1)
17
+ activemodel (3.2.14)
18
+ activesupport (= 3.2.14)
19
+ builder (~> 3.0.0)
20
+ activerecord (3.2.14)
21
+ activemodel (= 3.2.14)
22
+ activesupport (= 3.2.14)
23
+ arel (~> 3.0.2)
24
+ tzinfo (~> 0.3.29)
25
+ activeresource (3.2.14)
26
+ activemodel (= 3.2.14)
27
+ activesupport (= 3.2.14)
28
+ activesupport (3.2.14)
14
29
  i18n (~> 0.6, >= 0.6.4)
15
- minitest (~> 4.2)
16
- multi_json (~> 1.3)
17
- thread_safe (~> 0.1)
18
- tzinfo (~> 0.3.37)
30
+ multi_json (~> 1.0)
19
31
  addressable (2.3.5)
20
- arel (4.0.0)
21
- atomic (1.1.12)
22
- builder (3.1.4)
32
+ arel (3.0.2)
33
+ builder (3.0.4)
23
34
  coderay (1.0.9)
24
35
  database_cleaner (1.1.1)
25
36
  diff-lcs (1.2.4)
37
+ erubis (2.7.0)
26
38
  faraday (0.8.8)
27
39
  multipart-post (~> 1.2.0)
28
40
  git (1.2.5)
@@ -35,9 +47,10 @@ GEM
35
47
  oauth2
36
48
  hashie (2.0.5)
37
49
  highline (1.6.19)
50
+ hike (1.2.3)
38
51
  httpauth (0.2.0)
39
52
  i18n (0.6.4)
40
- jeweler (1.8.6)
53
+ jeweler (1.8.7)
41
54
  builder
42
55
  bundler (~> 1.0)
43
56
  git (>= 1.2.5)
@@ -46,12 +59,16 @@ GEM
46
59
  nokogiri (= 1.5.10)
47
60
  rake
48
61
  rdoc
62
+ journey (1.0.4)
49
63
  json (1.8.0)
50
64
  jwt (0.1.8)
51
65
  multi_json (>= 1.5)
66
+ mail (2.5.4)
67
+ mime-types (~> 1.16)
68
+ treetop (~> 1.4.8)
52
69
  method_source (0.8.2)
53
- minitest (4.7.5)
54
- multi_json (1.7.8)
70
+ mime-types (1.23)
71
+ multi_json (1.7.9)
55
72
  multi_xml (0.5.5)
56
73
  multipart-post (1.2.0)
57
74
  nokogiri (1.5.10)
@@ -62,11 +79,33 @@ GEM
62
79
  multi_json (~> 1.0)
63
80
  multi_xml (~> 0.5)
64
81
  rack (~> 1.2)
82
+ polyglot (0.3.3)
65
83
  pry (0.9.12.2)
66
84
  coderay (~> 1.0.5)
67
85
  method_source (~> 0.8)
68
86
  slop (~> 3.4)
69
- rack (1.5.2)
87
+ rack (1.4.5)
88
+ rack-cache (1.2)
89
+ rack (>= 0.4)
90
+ rack-ssl (1.3.3)
91
+ rack
92
+ rack-test (0.6.2)
93
+ rack (>= 1.0)
94
+ rails (3.2.14)
95
+ actionmailer (= 3.2.14)
96
+ actionpack (= 3.2.14)
97
+ activerecord (= 3.2.14)
98
+ activeresource (= 3.2.14)
99
+ activesupport (= 3.2.14)
100
+ bundler (~> 1.0)
101
+ railties (= 3.2.14)
102
+ railties (3.2.14)
103
+ actionpack (= 3.2.14)
104
+ activesupport (= 3.2.14)
105
+ rack-ssl (~> 1.3.2)
106
+ rake (>= 0.8.7)
107
+ rdoc (~> 3.4)
108
+ thor (>= 0.14.6, < 2.0)
70
109
  rake (10.1.0)
71
110
  rdoc (3.12.2)
72
111
  json (~> 1.4)
@@ -75,25 +114,32 @@ GEM
75
114
  rspec-expectations (~> 2.14.0)
76
115
  rspec-mocks (~> 2.14.0)
77
116
  rspec-core (2.14.4)
78
- rspec-expectations (2.14.0)
117
+ rspec-expectations (2.14.1)
79
118
  diff-lcs (>= 1.1.3, < 2.0)
80
- rspec-mocks (2.14.2)
119
+ rspec-mocks (2.14.3)
81
120
  slop (3.4.6)
121
+ sprockets (2.2.2)
122
+ hike (~> 1.2)
123
+ multi_json (~> 1.0)
124
+ rack (~> 1.0)
125
+ tilt (~> 1.1, != 1.3.0)
82
126
  sqlite3 (1.3.7)
83
- thread_safe (0.1.2)
84
- atomic
127
+ thor (0.18.1)
128
+ tilt (1.4.1)
129
+ treetop (1.4.14)
130
+ polyglot
131
+ polyglot (>= 0.3.1)
85
132
  tzinfo (0.3.37)
86
133
 
87
134
  PLATFORMS
88
135
  ruby
89
136
 
90
137
  DEPENDENCIES
91
- activerecord (>= 3.2.12)
92
- activesupport (>= 3.2.12)
93
138
  bundler
94
139
  database_cleaner
95
140
  jeweler (~> 1.8.4)
96
141
  pry
142
+ rails (= 3.2.14)
97
143
  rdoc (~> 3.12)
98
144
  rspec (~> 2.14.0)
99
145
  sqlite3
data/Rakefile CHANGED
@@ -47,3 +47,11 @@ Rake::RDocTask.new do |rdoc|
47
47
  rdoc.rdoc_files.include('README*')
48
48
  rdoc.rdoc_files.include('lib/**/*.rb')
49
49
  end
50
+
51
+
52
+ require 'rake/testtask'
53
+
54
+ Rake::TestTask.new do |t|
55
+ t.libs << "spec"
56
+ t.pattern = "spec/**/*_test.rb"
57
+ end
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.0
1
+ 0.1.1
@@ -0,0 +1,80 @@
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
+
6
+ Gem::Specification.new do |s|
7
+ s.name = "active_record_content_blob"
8
+ s.version = "0.1.1"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Dan Nguyen"]
12
+ s.date = "2013-08-14"
13
+ s.description = "Loading up TEXT/BLOB columns can be slow"
14
+ s.email = "dansonguyen@gmail.com"
15
+ s.extra_rdoc_files = [
16
+ "LICENSE.txt",
17
+ "README.rdoc"
18
+ ]
19
+ s.files = [
20
+ ".document",
21
+ ".rspec",
22
+ "Gemfile",
23
+ "Gemfile.lock",
24
+ "LICENSE.txt",
25
+ "README.rdoc",
26
+ "Rakefile",
27
+ "VERSION",
28
+ "active_record_content_blob.gemspec",
29
+ "lib/active_record_content_blob.rb",
30
+ "lib/content_blob.rb",
31
+ "lib/content_blob/blobable.rb",
32
+ "lib/generators/content_blob/migration_generator.rb",
33
+ "lib/generators/content_blob/templates/create_content_blobs.rb",
34
+ "spec/generator_helper.rb",
35
+ "spec/lib/generators/migration_generator_spec.rb",
36
+ "spec/lib/generators/migration_generator_test.rb",
37
+ "spec/spec_helper.rb",
38
+ "spec/unit/blobable_spec.rb",
39
+ "spec/unit/content_blob_spec.rb"
40
+ ]
41
+ s.homepage = "http://github.com/dannguyen/active_record_content_blob"
42
+ s.licenses = ["MIT"]
43
+ s.require_paths = ["lib"]
44
+ s.rubygems_version = "1.8.23"
45
+ s.summary = "Attach a TEXT/BLOB column to your model as a has_one"
46
+
47
+ if s.respond_to? :specification_version then
48
+ s.specification_version = 3
49
+
50
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
51
+ s.add_runtime_dependency(%q<rails>, ["= 3.2.14"])
52
+ s.add_runtime_dependency(%q<sqlite3>, [">= 0"])
53
+ s.add_development_dependency(%q<rspec>, ["~> 2.14.0"])
54
+ s.add_development_dependency(%q<bundler>, [">= 0"])
55
+ s.add_development_dependency(%q<jeweler>, ["~> 1.8.4"])
56
+ s.add_development_dependency(%q<database_cleaner>, [">= 0"])
57
+ s.add_development_dependency(%q<pry>, [">= 0"])
58
+ s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
59
+ else
60
+ s.add_dependency(%q<rails>, ["= 3.2.14"])
61
+ s.add_dependency(%q<sqlite3>, [">= 0"])
62
+ s.add_dependency(%q<rspec>, ["~> 2.14.0"])
63
+ s.add_dependency(%q<bundler>, [">= 0"])
64
+ s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
65
+ s.add_dependency(%q<database_cleaner>, [">= 0"])
66
+ s.add_dependency(%q<pry>, [">= 0"])
67
+ s.add_dependency(%q<rdoc>, ["~> 3.12"])
68
+ end
69
+ else
70
+ s.add_dependency(%q<rails>, ["= 3.2.14"])
71
+ s.add_dependency(%q<sqlite3>, [">= 0"])
72
+ s.add_dependency(%q<rspec>, ["~> 2.14.0"])
73
+ s.add_dependency(%q<bundler>, [">= 0"])
74
+ s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
75
+ s.add_dependency(%q<database_cleaner>, [">= 0"])
76
+ s.add_dependency(%q<pry>, [">= 0"])
77
+ s.add_dependency(%q<rdoc>, ["~> 3.12"])
78
+ end
79
+ end
80
+
@@ -3,4 +3,4 @@ require 'content_blob'
3
3
  module ActiveRecordContentBlob; end
4
4
  include ActiveRecordContentBlob
5
5
 
6
- require 'content_blob/blobable'
6
+ require 'content_blob/blobable'
@@ -0,0 +1,45 @@
1
+ require 'rails/generators'
2
+ require 'rails/generators/active_record'
3
+
4
+ module ActiveRecordContentBlob
5
+
6
+ class MigrationGenerator < ActiveRecord::Generators::Base
7
+ argument :name, type: :string, default: 'create_content_blobs'
8
+
9
+
10
+ source_root File.expand_path('../templates', __FILE__)
11
+
12
+ def self.next_migration_number(path)
13
+ ActiveRecord::Generators::Base.next_migration_number(path)
14
+ end
15
+ # Copies the migration template to db/migrate.
16
+ def copy_files
17
+ migration_template 'create_content_blobs.rb', 'db/migrate/create_content_blobs_migration.rb'
18
+ end
19
+ end
20
+ end
21
+
22
+
23
+ =begin
24
+ include Rails::Generators::Migration
25
+
26
+ desc "Creates the content_blobs table"
27
+
28
+ self.source_paths << File.join(File.dirname(__FILE__), 'templates')
29
+
30
+ def self.next_migration_number(path)
31
+ ActiveRecord::Generators::Base.next_migration_number(path)
32
+ end
33
+
34
+ def create_migration_file
35
+ create_migration_file_if_not_exist 'create_content_blobs'
36
+ end
37
+
38
+ private
39
+
40
+ def create_migration_file_if_not_exist(file_name)
41
+ unless self.class.migration_exists?(File.dirname(File.expand_path("db/migrate/#{file_name}")), file_name)
42
+ migration_template "#{file_name}.rb", "db/migrate/#{file_name}.rb"
43
+ end
44
+ end
45
+ =end
@@ -0,0 +1,5 @@
1
+ # because I have no earthly idea how to test
2
+ # generators with RSpec
3
+ require 'minitest/unit'
4
+ require 'minitest/autorun'
5
+ require 'minitest/pride'
@@ -0,0 +1,35 @@
1
+ =begin
2
+
3
+ # Leaving this as a testament to my failed attempt to
4
+ # test generators via RSpec, even with the generator_spec gem
5
+
6
+ require 'spec_helper'
7
+ require File.expand_path '../../../../lib/generators/content_blob/migration_generator', __FILE__
8
+
9
+ require "generator_spec"
10
+ require "generator_spec/test_case"
11
+
12
+ describe ActiveRecordContentBlob::MigrationGenerator, type: :generator do
13
+ include GeneratorSpec::TestCase
14
+
15
+ @val = destination File.expand_path("../../../../../tmp", __FILE__)
16
+
17
+ before(:each) do
18
+ prepare_destination
19
+ run_generator
20
+ # Rails::Generators.options[:rails][:orm] = :active_record
21
+ end
22
+
23
+ describe 'create migration file' do
24
+ it 'should create migration' do
25
+
26
+
27
+ puts "\n\n #{Dir.pwd}\n\n"
28
+ assert_file 'db/migrate/create_content_blobs_migration.rb'
29
+ end
30
+ #subject { file('db/migrate/create_content_blobs_migration.rb') }
31
+ #it { should be_a_migration }
32
+ end
33
+
34
+ end
35
+ =end
@@ -0,0 +1,21 @@
1
+ require 'generator_helper'
2
+ require "rails/generators"
3
+ require File.expand_path '../../../../lib/generators/content_blob/migration_generator', __FILE__
4
+
5
+
6
+ class MigrationGeneratorTest < Rails::Generators::TestCase
7
+
8
+ tests ActiveRecordContentBlob::MigrationGenerator
9
+ destination File.expand_path("../../tmp", __FILE__)
10
+
11
+ setup :prepare_destination
12
+
13
+ test "should generate a migration" do
14
+ begin
15
+ run_generator
16
+ assert_migration "db/migrate/create_content_blobs_migration"
17
+ ensure
18
+ FileUtils.rm_rf self.destination_root
19
+ end
20
+ end
21
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: active_record_content_blob
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,48 +9,32 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-08-08 00:00:00.000000000 Z
12
+ date: 2013-08-14 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
- name: sqlite3
15
+ name: rails
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
- - - ! '>='
19
+ - - '='
20
20
  - !ruby/object:Gem::Version
21
- version: '0'
21
+ version: 3.2.14
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  none: false
26
26
  requirements:
27
- - - ! '>='
27
+ - - '='
28
28
  - !ruby/object:Gem::Version
29
- version: '0'
29
+ version: 3.2.14
30
30
  - !ruby/object:Gem::Dependency
31
- name: activesupport
32
- requirement: !ruby/object:Gem::Requirement
33
- none: false
34
- requirements:
35
- - - ! '>='
36
- - !ruby/object:Gem::Version
37
- version: 3.2.12
38
- type: :runtime
39
- prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
- requirements:
43
- - - ! '>='
44
- - !ruby/object:Gem::Version
45
- version: 3.2.12
46
- - !ruby/object:Gem::Dependency
47
- name: activerecord
31
+ name: sqlite3
48
32
  requirement: !ruby/object:Gem::Requirement
49
33
  none: false
50
34
  requirements:
51
35
  - - ! '>='
52
36
  - !ruby/object:Gem::Version
53
- version: 3.2.12
37
+ version: '0'
54
38
  type: :runtime
55
39
  prerelease: false
56
40
  version_requirements: !ruby/object:Gem::Requirement
@@ -58,7 +42,7 @@ dependencies:
58
42
  requirements:
59
43
  - - ! '>='
60
44
  - !ruby/object:Gem::Version
61
- version: 3.2.12
45
+ version: '0'
62
46
  - !ruby/object:Gem::Dependency
63
47
  name: rspec
64
48
  requirement: !ruby/object:Gem::Requirement
@@ -171,11 +155,15 @@ files:
171
155
  - README.rdoc
172
156
  - Rakefile
173
157
  - VERSION
158
+ - active_record_content_blob.gemspec
174
159
  - lib/active_record_content_blob.rb
175
160
  - lib/content_blob.rb
176
161
  - lib/content_blob/blobable.rb
177
- - lib/generators/content_blob/content_blob_generator.rb
162
+ - lib/generators/content_blob/migration_generator.rb
178
163
  - lib/generators/content_blob/templates/create_content_blobs.rb
164
+ - spec/generator_helper.rb
165
+ - spec/lib/generators/migration_generator_spec.rb
166
+ - spec/lib/generators/migration_generator_test.rb
179
167
  - spec/spec_helper.rb
180
168
  - spec/unit/blobable_spec.rb
181
169
  - spec/unit/content_blob_spec.rb
@@ -194,7 +182,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
194
182
  version: '0'
195
183
  segments:
196
184
  - 0
197
- hash: -996606693736125422
185
+ hash: -1268456544472009919
198
186
  required_rubygems_version: !ruby/object:Gem::Requirement
199
187
  none: false
200
188
  requirements:
@@ -1,27 +0,0 @@
1
- require 'rails/generators'
2
- require 'rails/generators/migration'
3
- require 'rails/generators/active_record'
4
-
5
- class ContentBlobGenerator < Rails::Generators::Base
6
- include Rails::Generators::Migration
7
-
8
- desc "Creates the content_blobs table"
9
-
10
- self.source_paths << File.join(File.dirname(__FILE__), 'templates')
11
-
12
- def self.next_migration_number(path)
13
- ActiveRecord::Generators::Base.next_migration_number(path)
14
- end
15
-
16
- def create_migration_files
17
- create_migration_file_if_not_exist 'create_content_blobs'
18
- end
19
-
20
- private
21
-
22
- def create_migration_file_if_not_exist(file_name)
23
- unless self.class.migration_exists?(File.dirname(File.expand_path("db/migrate/#{file_name}")), file_name)
24
- migration_template "#{file_name}.rb", "db/migrate/#{file_name}.rb"
25
- end
26
- end
27
- end