sequel-rails 0.7.0 → 0.8.0

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.
Files changed (58) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/.rubocop.yml +13 -0
  4. data/.travis.yml +15 -43
  5. data/Gemfile +10 -10
  6. data/History.md +8 -0
  7. data/README.md +36 -0
  8. data/Rakefile +70 -2
  9. data/ci/rails-3.2.gemfile +15 -12
  10. data/ci/rails-4.0.gemfile +12 -12
  11. data/config.ru +1 -1
  12. data/lib/generators/sequel/migration/migration_generator.rb +10 -13
  13. data/lib/generators/sequel/model/model_generator.rb +11 -9
  14. data/lib/generators/sequel/observer/observer_generator.rb +6 -7
  15. data/lib/generators/sequel/session_migration/session_migration_generator.rb +30 -0
  16. data/lib/generators/sequel/session_migration/templates/migration.rb.erb +10 -0
  17. data/lib/generators/sequel.rb +9 -13
  18. data/lib/sequel-rails.rb +1 -1
  19. data/lib/sequel_rails/configuration.rb +29 -35
  20. data/lib/sequel_rails/migrations.rb +4 -4
  21. data/lib/sequel_rails/railtie.rb +16 -20
  22. data/lib/sequel_rails/railties/controller_runtime.rb +2 -8
  23. data/lib/sequel_rails/railties/database.rake +42 -46
  24. data/lib/sequel_rails/railties/i18n_support.rb +0 -2
  25. data/lib/sequel_rails/railties/legacy_model_config.rb +1 -1
  26. data/lib/sequel_rails/railties/log_subscriber.rb +5 -9
  27. data/lib/sequel_rails/sequel/database/active_support_notification.rb +4 -6
  28. data/lib/sequel_rails/sequel/plugins/rails_extensions.rb +2 -3
  29. data/lib/sequel_rails/session_store.rb +6 -42
  30. data/lib/sequel_rails/shellwords.rb +3 -3
  31. data/lib/sequel_rails/storage/abstract.rb +14 -16
  32. data/lib/sequel_rails/storage/jdbc.rb +8 -10
  33. data/lib/sequel_rails/storage/mysql.rb +13 -15
  34. data/lib/sequel_rails/storage/postgres.rb +42 -45
  35. data/lib/sequel_rails/storage/sqlite.rb +0 -1
  36. data/lib/sequel_rails/storage.rb +10 -10
  37. data/lib/sequel_rails/version.rb +1 -1
  38. data/lib/sequel_rails.rb +3 -3
  39. data/rubocop-todo.yml +24 -0
  40. data/sequel-rails.gemspec +21 -19
  41. data/spec/internal/Rakefile +2 -2
  42. data/spec/internal/config/initializers/session.rb +1 -1
  43. data/spec/internal/db/schema.rb.init +6 -0
  44. data/spec/lib/generators/sequel/migration_spec.rb +77 -77
  45. data/spec/lib/generators/sequel/session_migration_spec.rb +41 -0
  46. data/spec/lib/sequel_rails/configuration_spec.rb +161 -161
  47. data/spec/lib/sequel_rails/jdbc_spec.rb +4 -4
  48. data/spec/lib/sequel_rails/migrations_spec.rb +29 -29
  49. data/spec/lib/sequel_rails/railtie_spec.rb +31 -29
  50. data/spec/lib/sequel_rails/railties/database_rake_spec.rb +16 -15
  51. data/spec/lib/sequel_rails/railties/log_subscriber_spec.rb +6 -6
  52. data/spec/lib/sequel_rails/storage/mysql_spec.rb +31 -31
  53. data/spec/lib/sequel_rails/storage/postgres_spec.rb +67 -67
  54. data/spec/lib/sequel_rails/storage/sqlite_spec.rb +40 -40
  55. data/spec/lib/sequel_rails/storage_spec.rb +77 -89
  56. data/spec/spec_helper.rb +16 -10
  57. metadata +61 -28
  58. data/tasks/spec.rake +0 -81
@@ -1,138 +1,126 @@
1
- require "spec_helper"
1
+ require 'spec_helper'
2
2
 
3
3
  describe SequelRails::Storage do
4
4
  let(:environments) do
5
5
  {
6
- "development" => {
7
- "adapter" => "postgres",
8
- "owner" => (ENV["TEST_OWNER"] || ENV["USER"]),
9
- "username" => (ENV["TEST_OWNER"] || ENV["USER"]),
10
- "database" => "sequel_rails_test_storage_dev",
11
- "host" => "127.0.0.1",
6
+ 'development' => {
7
+ 'adapter' => 'postgres',
8
+ 'owner' => (ENV['TEST_OWNER'] || ENV['USER']),
9
+ 'username' => (ENV['TEST_OWNER'] || ENV['USER']),
10
+ 'database' => 'sequel_rails_test_storage_dev',
11
+ 'host' => '127.0.0.1',
12
12
  },
13
- "test" => {
14
- "adapter" => "postgres",
15
- "owner" => (ENV["TEST_OWNER"] || ENV["USER"]),
16
- "username" => (ENV["TEST_OWNER"] || ENV["USER"]),
17
- "database" => "sequel_rails_test_storage_test",
18
- "host" => "127.0.0.1",
13
+ 'test' => {
14
+ 'adapter' => 'postgres',
15
+ 'owner' => (ENV['TEST_OWNER'] || ENV['USER']),
16
+ 'username' => (ENV['TEST_OWNER'] || ENV['USER']),
17
+ 'database' => 'sequel_rails_test_storage_test',
18
+ 'host' => '127.0.0.1',
19
19
  },
20
- "remote" => {
21
- "adapter" => "postgres",
22
- "host" => "10.0.0.1",
23
- "database" => "sequel_rails_test_storage_remote",
20
+ 'remote' => {
21
+ 'adapter' => 'postgres',
22
+ 'host' => '10.0.0.1',
23
+ 'database' => 'sequel_rails_test_storage_remote',
24
24
  },
25
- "production" => {
26
- "host" => "10.0.0.1",
27
- "database" => "sequel_rails_test_storage_production",
25
+ 'production' => {
26
+ 'host' => '10.0.0.1',
27
+ 'database' => 'sequel_rails_test_storage_production',
28
28
  },
29
- "bogus" => {},
29
+ 'bogus' => {},
30
30
  }
31
31
  end
32
32
  before do
33
- SequelRails.configuration.stub(:environments).and_return environments
33
+ allow(SequelRails.configuration).to receive(:environments).and_return(environments)
34
34
  end
35
- describe ".create_all" do
36
- it "creates all databases skipping ones on remote host or with no database name" do
37
- adapter = mock :storage_adapter
38
- environments.except("remote", "production", "bogus").values.each do |env|
39
- SequelRails::Storage::Postgres.should_receive(:new).
40
- with(env).
41
- and_return adapter
35
+ describe '.create_all' do
36
+ it 'creates all databases skipping ones on remote host or with no database name' do
37
+ adapter = double(:storage_adapter)
38
+ environments.except('remote', 'production', 'bogus').values.each do |env|
39
+ expect(SequelRails::Storage::Postgres).to receive(:new).with(env).and_return(adapter)
42
40
  end
43
- adapter.should_receive(:create).twice
41
+ expect(adapter).to receive(:create).twice
44
42
  capture(:stdout) do
45
43
  described_class.create_all
46
44
  end
47
45
  end
48
46
  end
49
- describe ".drop_all" do
50
- it "drop all databases skipping ones on remote host or with no database name" do
51
- adapter = mock :storage_adapter
52
- environments.except("remote", "production", "bogus").values.each do |env|
53
- SequelRails::Storage::Postgres.should_receive(:new).
54
- with(env).
55
- and_return adapter
47
+ describe '.drop_all' do
48
+ it 'drop all databases skipping ones on remote host or with no database name' do
49
+ adapter = double(:storage_adapter)
50
+ environments.except('remote', 'production', 'bogus').values.each do |env|
51
+ expect(SequelRails::Storage::Postgres).to receive(:new).with(env).and_return(adapter)
56
52
  end
57
- adapter.should_receive(:close_connections).twice
58
- adapter.should_receive(:drop).twice
53
+ expect(adapter).to receive(:close_connections).twice
54
+ expect(adapter).to receive(:drop).twice
59
55
  capture(:stdout) do
60
56
  described_class.drop_all
61
57
  end
62
58
  end
63
59
  end
64
- describe ".create_environment" do
65
- it "creates database for specified environment" do
66
- adapter = mock :storage_adapter
67
- SequelRails::Storage::Postgres.should_receive(:new).
68
- with(environments["development"]).
69
- and_return adapter
70
- adapter.should_receive :create
71
- described_class.create_environment "development"
60
+ describe '.create_environment' do
61
+ it 'creates database for specified environment' do
62
+ adapter = double(:storage_adapter)
63
+ expect(SequelRails::Storage::Postgres).to receive(:new).with(environments['development']).and_return(adapter)
64
+ expect(adapter).to receive(:create)
65
+ described_class.create_environment 'development'
72
66
  end
73
67
  end
74
- describe ".drop_environment" do
75
- it "drops database for specified environment" do
76
- adapter = mock :storage_adapter
77
- SequelRails::Storage::Postgres.should_receive(:new).
78
- with(environments["development"]).
79
- and_return adapter
80
- adapter.should_receive :close_connections
81
- adapter.should_receive :drop
82
- described_class.drop_environment "development"
68
+ describe '.drop_environment' do
69
+ it 'drops database for specified environment' do
70
+ adapter = double(:storage_adapter)
71
+ expect(SequelRails::Storage::Postgres).to receive(:new).with(environments['development']).and_return(adapter)
72
+ expect(adapter).to receive(:close_connections)
73
+ expect(adapter).to receive(:drop)
74
+ described_class.drop_environment 'development'
83
75
  end
84
76
  end
85
- describe ".close_all_connections" do
86
- it "drops opened connections to all databases on config" do
87
- adapter = mock :storage_adapter
88
- environments.except("production", "bogus").values.each do |env|
89
- SequelRails::Storage::Postgres.should_receive(:new).
90
- with(env).
91
- and_return adapter
77
+ describe '.close_all_connections' do
78
+ it 'drops opened connections to all databases on config' do
79
+ adapter = double(:storage_adapter)
80
+ environments.except('production', 'bogus').values.each do |env|
81
+ expect(SequelRails::Storage::Postgres).to receive(:new).with(env).and_return(adapter)
92
82
  end
93
- adapter.should_receive(:close_connections).exactly(3).times
83
+ expect(adapter).to receive(:close_connections).exactly(3).times
94
84
  capture(:stdout) do
95
85
  described_class.close_all_connections
96
86
  end
97
87
  end
98
88
  end
99
- describe ".close_connections_environment" do
100
- it "drops opened connections to database for specified environment" do
101
- adapter = mock :storage_adapter
102
- SequelRails::Storage::Postgres.should_receive(:new).
103
- with(environments["development"]).
104
- and_return adapter
105
- adapter.should_receive :close_connections
106
- described_class.close_connections_environment "development"
89
+ describe '.close_connections_environment' do
90
+ it 'drops opened connections to database for specified environment' do
91
+ adapter = double(:storage_adapter)
92
+ expect(SequelRails::Storage::Postgres).to receive(:new).with(environments['development']).and_return(adapter)
93
+ expect(adapter).to receive(:close_connections)
94
+ described_class.close_connections_environment 'development'
107
95
  end
108
96
  end
109
- describe ".adapter_for" do
110
- context "when passed a hash" do
97
+ describe '.adapter_for' do
98
+ context 'when passed a hash' do
111
99
  {
112
- "postgres" => SequelRails::Storage::Postgres,
113
- "mysql" => SequelRails::Storage::Mysql,
114
- "mysql2" => SequelRails::Storage::Mysql2,
115
- "sqlite" => SequelRails::Storage::Sqlite,
116
- "jdbc" => SequelRails::Storage::Jdbc,
100
+ 'postgres' => SequelRails::Storage::Postgres,
101
+ 'mysql' => SequelRails::Storage::Mysql,
102
+ 'mysql2' => SequelRails::Storage::Mysql2,
103
+ 'sqlite' => SequelRails::Storage::Sqlite,
104
+ 'jdbc' => SequelRails::Storage::Jdbc,
117
105
  }.each do |adapter, klass|
118
106
  it "returns an instance of #{klass} when adapter key is #{adapter}" do
119
- config = {"adapter" => adapter}
107
+ config = { 'adapter' => adapter }
120
108
  adapter = described_class.adapter_for config
121
- adapter.should be_instance_of klass
122
- adapter.config.should be config
109
+ expect(adapter).to be_instance_of klass
110
+ expect(adapter.config).to be config
123
111
  end
124
112
  end
125
- it "raises when adapter is not valid" do
113
+ it 'raises when adapter is not valid' do
126
114
  expect do
127
- described_class.adapter_for({"adapter" => "unknown"})
128
- end.to raise_error RuntimeError, "Adapter unknown not supported (:Unknown)"
115
+ described_class.adapter_for('adapter' => 'unknown')
116
+ end.to raise_error RuntimeError, 'Adapter unknown not supported (:Unknown)'
129
117
  end
130
118
  end
131
- context "when passed an environment" do
132
- it "returns adapter based on configured environment" do
119
+ context 'when passed an environment' do
120
+ it 'returns adapter based on configured environment' do
133
121
  adapter = described_class.adapter_for :development
134
- adapter.should be_instance_of SequelRails::Storage::Postgres
135
- adapter.config.should == environments["development"]
122
+ expect(adapter).to be_instance_of SequelRails::Storage::Postgres
123
+ expect(adapter.config).to eq(environments['development'])
136
124
  end
137
125
  end
138
126
  end
data/spec/spec_helper.rb CHANGED
@@ -1,19 +1,19 @@
1
- require "rubygems"
2
- require "bundler"
1
+ require 'rubygems'
2
+ require 'bundler'
3
3
 
4
4
  Bundler.require :default, :development, :test
5
5
 
6
6
  # Combustion initialization has to happend before loading rspec/rails
7
- Combustion.initialize! "sequel_rails"
7
+ Combustion.initialize! 'sequel_rails'
8
8
 
9
9
  # Load support files
10
10
  Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
11
11
 
12
12
  rspec_exclusions = {}
13
- rspec_exclusions[:skip_jdbc] = true if SequelRails.jruby?
14
- rspec_exclusions[:postgres] = true unless ENV["TEST_ADAPTER"]=="postgresql"
15
- rspec_exclusions[:mysql] = true unless ["mysql", "mysql2"].include? ENV["TEST_ADAPTER"]
16
- rspec_exclusions[:sqlite] = true unless ENV["TEST_ADAPTER"]=="sqlite3"
13
+ rspec_exclusions[:skip_jdbc] = SequelRails.jruby?
14
+ rspec_exclusions[:postgres] = ENV['TEST_ADAPTER'] != 'postgresql'
15
+ rspec_exclusions[:mysql] = !%w(mysql mysql2).include?(ENV['TEST_ADAPTER'])
16
+ rspec_exclusions[:sqlite] = ENV['TEST_ADAPTER'] != 'sqlite3'
17
17
 
18
18
  RSpec.configure do |config|
19
19
  config.treat_symbols_as_metadata_keys_with_true_values = true
@@ -23,11 +23,17 @@ RSpec.configure do |config|
23
23
  example.run
24
24
  end
25
25
  end
26
+
27
+ [:expect_with, :mock_with].each do |method|
28
+ config.send(method, :rspec) do |c|
29
+ c.syntax = :expect
30
+ end
31
+ end
26
32
  end
27
33
 
28
34
  # Ensure db exists and clean state
29
35
  begin
30
- require "sequel_rails/storage"
36
+ require 'sequel_rails/storage'
31
37
  silence(:stdout) do
32
38
  SequelRails::Storage.adapter_for(:test).drop
33
39
  SequelRails::Storage.adapter_for(:test).create
@@ -37,7 +43,7 @@ begin
37
43
  load "#{Rails.root}/db/schema.rb.init"
38
44
  Sequel::Migration.descendants.first.apply Sequel::Model.db, :up
39
45
  rescue Sequel::DatabaseConnectionError => e
40
- puts "Database connection error: #{e.message}"
41
- puts "Ensure test db exists before running specs."
46
+ warn "Database connection error: #{e.message}"
47
+ warn 'Ensure test db exists before running specs.'
42
48
  exit 1
43
49
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sequel-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brasten Sager (brasten)
@@ -9,8 +9,36 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-10-11 00:00:00.000000000 Z
12
+ date: 2013-11-10 00:00:00.000000000 Z
13
13
  dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: activemodel
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - '>='
19
+ - !ruby/object:Gem::Version
20
+ version: '0'
21
+ type: :runtime
22
+ prerelease: false
23
+ version_requirements: !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - '>='
26
+ - !ruby/object:Gem::Version
27
+ version: '0'
28
+ - !ruby/object:Gem::Dependency
29
+ name: railties
30
+ requirement: !ruby/object:Gem::Requirement
31
+ requirements:
32
+ - - '>='
33
+ - !ruby/object:Gem::Version
34
+ version: 3.2.0
35
+ type: :runtime
36
+ prerelease: false
37
+ version_requirements: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - '>='
40
+ - !ruby/object:Gem::Version
41
+ version: 3.2.0
14
42
  - !ruby/object:Gem::Dependency
15
43
  name: sequel
16
44
  requirement: !ruby/object:Gem::Requirement
@@ -32,76 +60,76 @@ dependencies:
32
60
  - !ruby/object:Gem::Version
33
61
  version: '5.0'
34
62
  - !ruby/object:Gem::Dependency
35
- name: railties
63
+ name: combustion
36
64
  requirement: !ruby/object:Gem::Requirement
37
65
  requirements:
38
66
  - - '>='
39
67
  - !ruby/object:Gem::Version
40
- version: 3.2.0
41
- type: :runtime
68
+ version: '0'
69
+ type: :development
42
70
  prerelease: false
43
71
  version_requirements: !ruby/object:Gem::Requirement
44
72
  requirements:
45
73
  - - '>='
46
74
  - !ruby/object:Gem::Version
47
- version: 3.2.0
75
+ version: '0'
48
76
  - !ruby/object:Gem::Dependency
49
- name: rake
77
+ name: generator_spec
50
78
  requirement: !ruby/object:Gem::Requirement
51
79
  requirements:
52
80
  - - '>='
53
81
  - !ruby/object:Gem::Version
54
- version: 0.8.7
82
+ version: '0'
55
83
  type: :development
56
84
  prerelease: false
57
85
  version_requirements: !ruby/object:Gem::Requirement
58
86
  requirements:
59
87
  - - '>='
60
88
  - !ruby/object:Gem::Version
61
- version: 0.8.7
89
+ version: '0'
62
90
  - !ruby/object:Gem::Dependency
63
- name: rspec
91
+ name: rake
64
92
  requirement: !ruby/object:Gem::Requirement
65
93
  requirements:
66
- - - ~>
94
+ - - '>='
67
95
  - !ruby/object:Gem::Version
68
- version: 2.7.0
96
+ version: 0.8.7
69
97
  type: :development
70
98
  prerelease: false
71
99
  version_requirements: !ruby/object:Gem::Requirement
72
100
  requirements:
73
- - - ~>
101
+ - - '>='
74
102
  - !ruby/object:Gem::Version
75
- version: 2.7.0
103
+ version: 0.8.7
76
104
  - !ruby/object:Gem::Dependency
77
- name: combustion
105
+ name: rspec
78
106
  requirement: !ruby/object:Gem::Requirement
79
107
  requirements:
80
- - - ~>
108
+ - - '>='
81
109
  - !ruby/object:Gem::Version
82
- version: 0.5.0
110
+ version: '0'
83
111
  type: :development
84
112
  prerelease: false
85
113
  version_requirements: !ruby/object:Gem::Requirement
86
114
  requirements:
87
- - - ~>
115
+ - - '>='
88
116
  - !ruby/object:Gem::Version
89
- version: 0.5.0
117
+ version: '0'
90
118
  - !ruby/object:Gem::Dependency
91
- name: generator_spec
119
+ name: rubocop
92
120
  requirement: !ruby/object:Gem::Requirement
93
121
  requirements:
94
- - - ~>
122
+ - - '>='
95
123
  - !ruby/object:Gem::Version
96
- version: 0.9.0
124
+ version: '0'
97
125
  type: :development
98
126
  prerelease: false
99
127
  version_requirements: !ruby/object:Gem::Requirement
100
128
  requirements:
101
- - - ~>
129
+ - - '>='
102
130
  - !ruby/object:Gem::Version
103
- version: 0.9.0
104
- description: Integrate Sequel with Rails 3
131
+ version: '0'
132
+ description: Integrate Sequel with Rails (3.x and 4.x)
105
133
  email:
106
134
  - brasten@gmail.com
107
135
  - jonathan.tron@metrilio.com
@@ -113,6 +141,7 @@ extra_rdoc_files:
113
141
  files:
114
142
  - .gitignore
115
143
  - .rspec
144
+ - .rubocop.yml
116
145
  - .travis.yml
117
146
  - Gemfile
118
147
  - History.md
@@ -130,6 +159,8 @@ files:
130
159
  - lib/generators/sequel/model/templates/model.rb.erb
131
160
  - lib/generators/sequel/observer/observer_generator.rb
132
161
  - lib/generators/sequel/observer/templates/observer.rb.erb
162
+ - lib/generators/sequel/session_migration/session_migration_generator.rb
163
+ - lib/generators/sequel/session_migration/templates/migration.rb.erb
133
164
  - lib/sequel-rails.rb
134
165
  - lib/sequel_rails.rb
135
166
  - lib/sequel_rails/configuration.rb
@@ -152,6 +183,7 @@ files:
152
183
  - lib/sequel_rails/storage/postgres.rb
153
184
  - lib/sequel_rails/storage/sqlite.rb
154
185
  - lib/sequel_rails/version.rb
186
+ - rubocop-todo.yml
155
187
  - sequel-rails.gemspec
156
188
  - spec/internal/Rakefile
157
189
  - spec/internal/app/models/user.rb
@@ -162,6 +194,7 @@ files:
162
194
  - spec/internal/db/schema.rb.init
163
195
  - spec/internal/public/favicon.ico
164
196
  - spec/lib/generators/sequel/migration_spec.rb
197
+ - spec/lib/generators/sequel/session_migration_spec.rb
165
198
  - spec/lib/sequel_rails/configuration_spec.rb
166
199
  - spec/lib/sequel_rails/jdbc_spec.rb
167
200
  - spec/lib/sequel_rails/migrations_spec.rb
@@ -173,7 +206,6 @@ files:
173
206
  - spec/lib/sequel_rails/storage/sqlite_spec.rb
174
207
  - spec/lib/sequel_rails/storage_spec.rb
175
208
  - spec/spec_helper.rb
176
- - tasks/spec.rake
177
209
  homepage: http://talentbox.github.io/sequel-rails/
178
210
  licenses:
179
211
  - MIT
@@ -195,10 +227,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
195
227
  version: '0'
196
228
  requirements: []
197
229
  rubyforge_project:
198
- rubygems_version: 2.1.6
230
+ rubygems_version: 2.0.3
199
231
  signing_key:
200
232
  specification_version: 4
201
- summary: Use Sequel with Rails 3
233
+ summary: Use Sequel with Rails (3.x and 4.x)
202
234
  test_files:
203
235
  - spec/internal/Rakefile
204
236
  - spec/internal/app/models/user.rb
@@ -209,6 +241,7 @@ test_files:
209
241
  - spec/internal/db/schema.rb.init
210
242
  - spec/internal/public/favicon.ico
211
243
  - spec/lib/generators/sequel/migration_spec.rb
244
+ - spec/lib/generators/sequel/session_migration_spec.rb
212
245
  - spec/lib/sequel_rails/configuration_spec.rb
213
246
  - spec/lib/sequel_rails/jdbc_spec.rb
214
247
  - spec/lib/sequel_rails/migrations_spec.rb
data/tasks/spec.rake DELETED
@@ -1,81 +0,0 @@
1
- begin
2
- require 'rspec/core/rake_task'
3
-
4
- desc "Run RSpec code example (default to only PostgreSQL)"
5
- RSpec::Core::RakeTask.new('spec')
6
-
7
- namespace :spec do
8
- def clean_env
9
- [
10
- "TEST_ADAPTER",
11
- "TEST_DATABASE",
12
- "TEST_OWNER",
13
- "TEST_USERNAME",
14
- "TEST_PASSWORD",
15
- "TEST_ENCODING",
16
- ].each do |name|
17
- ENV[name] = nil
18
- end
19
- end
20
-
21
- desc "Run specs for postgresql adapter"
22
- task :postgresql do
23
- clean_env
24
- Rake::Task["spec"].reenable
25
- ENV["TEST_ADAPTER"] = "postgresql"
26
- ENV["TEST_ENCODING"] = "unicode"
27
- Rake::Task["spec"].invoke
28
- end
29
-
30
- desc "Run specs for mysql adapter"
31
- task :mysql do
32
- clean_env
33
- Rake::Task["spec"].reenable
34
- ENV["TEST_ADAPTER"] = "mysql"
35
- ENV["TEST_ENCODING"] = "utf8"
36
- Rake::Task["spec"].invoke
37
- end
38
-
39
- desc "Run specs for mysql2 adapter"
40
- task :mysql2 do
41
- if SequelRails.jruby?
42
- warn "No mysql2 adapter for jdbc"
43
- else
44
- clean_env
45
- Rake::Task["spec"].reenable
46
- ENV["TEST_ADAPTER"] = "mysql2"
47
- ENV["TEST_ENCODING"] = "utf8"
48
- Rake::Task["spec"].invoke
49
- end
50
- end
51
-
52
- desc "Run specs for sqlite3 adapter"
53
- task :sqlite3 do
54
- clean_env
55
- Rake::Task["spec"].reenable
56
- ENV["TEST_ADAPTER"] = "sqlite3"
57
- ENV["TEST_DATABASE"] = "db/database.sqlite3"
58
- Rake::Task["spec"].invoke
59
- end
60
-
61
- desc "Run specs for all adapters"
62
- task :all do
63
- res = [
64
- "spec:postgresql",
65
- "spec:mysql",
66
- "spec:mysql2",
67
- "spec:sqlite3"
68
- ].map do |task_name|
69
- Rake::Task[task_name].invoke
70
- end
71
- res.all?
72
- end
73
- end
74
-
75
- task :default => "spec:all"
76
-
77
- rescue LoadError
78
- task :spec do
79
- abort 'rspec is not available. In order to run spec, you must: bundle install'
80
- end
81
- end