pusewicz-rails_sequel 0.2.0 → 0.2.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/.document +5 -0
- data/.gitignore +6 -0
- data/VERSION.yml +1 -1
- data/init.rb +1 -0
- data/lib/rails_sequel/rails_sequel.rb +5 -0
- data/rails_sequel.gemspec +61 -0
- data/spec/spec_helper.rb +6 -8
- data/tasks/sequel.rake +38 -0
- metadata +11 -5
data/.document
ADDED
data/.gitignore
ADDED
data/VERSION.yml
CHANGED
data/init.rb
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
require 'rails_sequel'
|
@@ -0,0 +1,61 @@
|
|
1
|
+
# Generated by jeweler
|
2
|
+
# DO NOT EDIT THIS FILE
|
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 = %q{rails_sequel}
|
8
|
+
s.version = "0.2.1"
|
9
|
+
|
10
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
|
+
s.authors = ["Piotr Usewicz"]
|
12
|
+
s.date = %q{2009-08-07}
|
13
|
+
s.description = %q{rails_sequel allows you to quickly use Sequel Toolkit as your ORM in Ruby on Rails}
|
14
|
+
s.email = %q{piotr@layer22.com}
|
15
|
+
s.extra_rdoc_files = [
|
16
|
+
"LICENSE",
|
17
|
+
"README.md"
|
18
|
+
]
|
19
|
+
s.files = [
|
20
|
+
".document",
|
21
|
+
".gitignore",
|
22
|
+
"LICENSE",
|
23
|
+
"README.md",
|
24
|
+
"Rakefile",
|
25
|
+
"VERSION.yml",
|
26
|
+
"init.rb",
|
27
|
+
"lib/rails_sequel.rb",
|
28
|
+
"lib/rails_sequel/rails_sequel.rb",
|
29
|
+
"lib/rails_sequel/sequel_ext.rb",
|
30
|
+
"lib/rails_sequel/version.rb",
|
31
|
+
"rails_sequel.gemspec",
|
32
|
+
"spec/config/database.yml",
|
33
|
+
"spec/rails_sequel_spec.rb",
|
34
|
+
"spec/sequel_ext_spec.rb",
|
35
|
+
"spec/spec.opts",
|
36
|
+
"spec/spec_helper.rb",
|
37
|
+
"spec/version_spec.rb",
|
38
|
+
"tasks/sequel.rake"
|
39
|
+
]
|
40
|
+
s.homepage = %q{http://github.com/pusewicz/rails_sequel}
|
41
|
+
s.rdoc_options = ["--charset=UTF-8"]
|
42
|
+
s.require_paths = ["lib"]
|
43
|
+
s.rubygems_version = %q{1.3.5}
|
44
|
+
s.summary = %q{Sequel plugin for Ruby on Rails}
|
45
|
+
s.test_files = [
|
46
|
+
"spec/rails_sequel_spec.rb",
|
47
|
+
"spec/sequel_ext_spec.rb",
|
48
|
+
"spec/spec_helper.rb",
|
49
|
+
"spec/version_spec.rb"
|
50
|
+
]
|
51
|
+
|
52
|
+
if s.respond_to? :specification_version then
|
53
|
+
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
54
|
+
s.specification_version = 3
|
55
|
+
|
56
|
+
if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
|
57
|
+
else
|
58
|
+
end
|
59
|
+
else
|
60
|
+
end
|
61
|
+
end
|
data/spec/spec_helper.rb
CHANGED
@@ -16,15 +16,15 @@ class MockDataset < Sequel::Dataset
|
|
16
16
|
def insert(*args)
|
17
17
|
@db.execute insert_sql(*args)
|
18
18
|
end
|
19
|
-
|
19
|
+
|
20
20
|
def update(*args)
|
21
21
|
@db.execute update_sql(*args)
|
22
22
|
end
|
23
|
-
|
23
|
+
|
24
24
|
def delete(*args)
|
25
25
|
@db.execute delete_sql(*args)
|
26
26
|
end
|
27
|
-
|
27
|
+
|
28
28
|
def fetch_rows(sql)
|
29
29
|
return if sql =~ /information_schema/
|
30
30
|
@db.execute(sql)
|
@@ -41,7 +41,7 @@ class MockDatabase < Sequel::Database
|
|
41
41
|
self.identifier_input_method = nil
|
42
42
|
self.identifier_output_method = nil
|
43
43
|
attr_reader :sqls
|
44
|
-
|
44
|
+
|
45
45
|
def execute(sql, opts={})
|
46
46
|
@sqls ||= []
|
47
47
|
@sqls << sql
|
@@ -81,12 +81,10 @@ end
|
|
81
81
|
|
82
82
|
class << Sequel::Model
|
83
83
|
alias orig_columns columns
|
84
|
-
alias orig_str_columns str_columns
|
85
84
|
def columns(*cols)
|
86
85
|
return if cols.empty?
|
87
86
|
define_method(:columns){cols}
|
88
87
|
@dataset.instance_variable_set(:@columns, cols) if @dataset
|
89
|
-
define_method(:str_columns){cols.map{|x|x.to_s.freeze}}
|
90
88
|
def_column_accessor(*cols)
|
91
89
|
@columns = cols
|
92
90
|
@db_schema = {}
|
@@ -101,11 +99,11 @@ module Rails
|
|
101
99
|
def self.root
|
102
100
|
File.dirname(__FILE__)
|
103
101
|
end
|
104
|
-
|
102
|
+
|
105
103
|
def self.env
|
106
104
|
'test'
|
107
105
|
end
|
108
|
-
|
106
|
+
|
109
107
|
def self.logger
|
110
108
|
Logger.new(STDOUT)
|
111
109
|
end
|
data/tasks/sequel.rake
ADDED
@@ -0,0 +1,38 @@
|
|
1
|
+
# Usage:
|
2
|
+
#
|
3
|
+
# rake sequel:migrate
|
4
|
+
# rake sequel:migrate VERSION=0
|
5
|
+
# rake sequel:migrate VERSION=3
|
6
|
+
#
|
7
|
+
desc 'Sequel migration'
|
8
|
+
namespace :sequel do
|
9
|
+
def path
|
10
|
+
File.join(RAILS_ROOT, 'db', 'migrate')
|
11
|
+
end
|
12
|
+
|
13
|
+
namespace :migrate do
|
14
|
+
desc 'Rollbacks the database one migration and re migrate up. If you want to rollback more than one step, define STEP=x'
|
15
|
+
task :redo => [ 'sequel:rollback', 'sequel:migrate' ]
|
16
|
+
end
|
17
|
+
|
18
|
+
desc "Migrate the database through scripts in db/migrate. Target specific version with VERSION=x"
|
19
|
+
task :migrate => :environment do
|
20
|
+
if ENV['VERSION']
|
21
|
+
Sequel::Migrator.apply(Sequel::Model.db, path, ENV['VERSION'].to_i)
|
22
|
+
else
|
23
|
+
Sequel::Migrator.apply(Sequel::Model.db, path)
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
desc 'Rolls the schema back to the previous version. Specify the number of steps with STEP=n'
|
28
|
+
task :rollback => :environment do
|
29
|
+
step = ENV['STEP'] ? ENV['STEP'].to_i : 1
|
30
|
+
version = Sequel::Migrator.get_current_migration_version(Sequel::Model.db) - step
|
31
|
+
Sequel::Migrator.apply(Sequel::Model.db, path, version)
|
32
|
+
end
|
33
|
+
|
34
|
+
desc "Retrieves the current schema version number"
|
35
|
+
task :version => :environment do
|
36
|
+
puts "Current version: #{Sequel::Migrator.get_current_migration_version(Sequel::Model.db)}"
|
37
|
+
end
|
38
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pusewicz-rails_sequel
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Piotr Usewicz
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-
|
12
|
+
date: 2009-08-07 00:00:00 -07:00
|
13
13
|
default_executable:
|
14
14
|
dependencies: []
|
15
15
|
|
@@ -23,22 +23,28 @@ extra_rdoc_files:
|
|
23
23
|
- LICENSE
|
24
24
|
- README.md
|
25
25
|
files:
|
26
|
+
- .document
|
27
|
+
- .gitignore
|
26
28
|
- LICENSE
|
27
29
|
- README.md
|
28
30
|
- Rakefile
|
29
31
|
- VERSION.yml
|
32
|
+
- init.rb
|
30
33
|
- lib/rails_sequel.rb
|
31
34
|
- lib/rails_sequel/rails_sequel.rb
|
32
35
|
- lib/rails_sequel/sequel_ext.rb
|
33
36
|
- lib/rails_sequel/version.rb
|
37
|
+
- rails_sequel.gemspec
|
34
38
|
- spec/config/database.yml
|
35
39
|
- spec/rails_sequel_spec.rb
|
36
40
|
- spec/sequel_ext_spec.rb
|
37
41
|
- spec/spec.opts
|
38
42
|
- spec/spec_helper.rb
|
39
43
|
- spec/version_spec.rb
|
40
|
-
|
44
|
+
- tasks/sequel.rake
|
45
|
+
has_rdoc: false
|
41
46
|
homepage: http://github.com/pusewicz/rails_sequel
|
47
|
+
licenses:
|
42
48
|
post_install_message:
|
43
49
|
rdoc_options:
|
44
50
|
- --charset=UTF-8
|
@@ -59,9 +65,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
59
65
|
requirements: []
|
60
66
|
|
61
67
|
rubyforge_project:
|
62
|
-
rubygems_version: 1.
|
68
|
+
rubygems_version: 1.3.5
|
63
69
|
signing_key:
|
64
|
-
specification_version:
|
70
|
+
specification_version: 3
|
65
71
|
summary: Sequel plugin for Ruby on Rails
|
66
72
|
test_files:
|
67
73
|
- spec/rails_sequel_spec.rb
|