merb_datamapper 0.9.2 → 0.9.3
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +1 -0
- data/Manifest.txt +33 -0
- data/README.txt +13 -0
- data/Rakefile +47 -35
- data/TODO +10 -4
- data/datamapper_generators/migration/USAGE +2 -3
- data/datamapper_generators/migration/migration_generator.rb +6 -6
- data/datamapper_generators/migration/templates/new_migration.erb +3 -3
- data/datamapper_generators/model/model_generator.rb +17 -10
- data/datamapper_generators/model/templates/app/models/%model_file_name%.rb +7 -5
- data/datamapper_generators/resource_controller/resource_controller_generator.rb +62 -27
- data/datamapper_generators/resource_controller/templates/app/controllers/%controller_file_name%.rb +6 -6
- data/datamapper_generators/resource_controller/templates/app/helpers/%controller_file_name%_helper.rb +1 -1
- data/datamapper_generators/resource_controller/templates/app/views/%controller_file_name%/edit.html.erb +19 -1
- data/datamapper_generators/resource_controller/templates/app/views/%controller_file_name%/index.html.erb +22 -1
- data/datamapper_generators/resource_controller/templates/app/views/%controller_file_name%/new.html.erb +18 -1
- data/datamapper_generators/resource_controller/templates/app/views/%controller_file_name%/show.html.erb +12 -1
- data/datamapper_generators/resource_migration/USAGE +4 -0
- data/datamapper_generators/resource_migration/resource_migration_generator.rb +122 -0
- data/datamapper_generators/resource_migration/templates/class_migration.erb +13 -0
- data/lib/merb/orms/data_mapper/connection.rb +61 -26
- data/lib/merb/orms/data_mapper/database.yml.sample +32 -12
- data/lib/merb/orms/data_mapper/resource.rb +12 -0
- data/lib/merb/session/data_mapper_session.rb +47 -40
- data/lib/merb_datamapper.rb +15 -11
- data/lib/merb_datamapper/merbtasks.rb +42 -13
- data/lib/merb_datamapper/version.rb +5 -0
- data/spec/connection_spec.rb +67 -0
- data/spec/spec.opts +2 -0
- data/spec/spec_helper.rb +15 -0
- metadata +58 -45
- data/README +0 -10
- data/lib/merb/orms/data_mapper/base.rb +0 -6
- data/specs/merb_sequel_spec.rb +0 -0
- data/specs/spec_helper.rb +0 -2
data/lib/merb_datamapper.rb
CHANGED
@@ -1,16 +1,20 @@
|
|
1
1
|
if defined?(Merb::Plugins)
|
2
|
-
require
|
3
|
-
require
|
4
|
-
Merb::Plugins.add_rakefiles "merb_datamapper" / "merbtasks"
|
5
|
-
|
6
|
-
class Merb::Orms::DataMapper::Connect < Merb::BootLoader
|
2
|
+
require 'rubygems'
|
3
|
+
require 'merb_datamapper/version'
|
7
4
|
|
8
|
-
|
5
|
+
gem 'dm-core', DataMapper::MerbDataMapper::VERSION
|
6
|
+
require 'dm-core'
|
9
7
|
|
10
|
-
|
11
|
-
|
12
|
-
Merb::Orms::DataMapper.register_session_type
|
13
|
-
end
|
8
|
+
if File.file?(Merb.dir_for(:config) / "database.yml")
|
9
|
+
require File.join(File.dirname(__FILE__) / "merb" / "orms" / "data_mapper" / "connection")
|
14
10
|
|
11
|
+
Merb::Orms::DataMapper.connect
|
12
|
+
Merb::Orms::DataMapper.register_session_type
|
13
|
+
else
|
14
|
+
Merb.logger.info "No database.yml file found in #{Merb.dir_for(:config)}, assuming database connection(s) established in the environment file in #{Merb.dir_for(:config)}/environments"
|
15
15
|
end
|
16
|
-
|
16
|
+
|
17
|
+
require File.join(File.dirname(__FILE__) / "merb" / "orms" / "data_mapper" / "resource")
|
18
|
+
|
19
|
+
Merb::Plugins.add_rakefiles "merb_datamapper" / "merbtasks"
|
20
|
+
end
|
@@ -1,31 +1,60 @@
|
|
1
1
|
require 'fileutils'
|
2
2
|
|
3
3
|
namespace :dm do
|
4
|
-
|
4
|
+
|
5
5
|
task :merb_start do
|
6
|
-
Merb.
|
7
|
-
|
6
|
+
Merb.start_environment :adapter => 'runner',
|
7
|
+
:environment => ENV['MERB_ENV'] || 'development'
|
8
8
|
end
|
9
|
-
|
9
|
+
|
10
10
|
namespace :db do
|
11
|
+
desc "Create a sample database.yml file"
|
12
|
+
task :database_yaml => :merb_start do
|
13
|
+
sample_location = File.join(File.dirname(__FILE__), "..", "merb", "orms", "data_mapper", "database.yml.sample")
|
14
|
+
target_location = Merb.dir_for(:config)
|
15
|
+
FileUtils.cp sample_location, target_location
|
16
|
+
end
|
11
17
|
desc "Perform automigration"
|
12
18
|
task :automigrate => :merb_start do
|
13
|
-
DataMapper::
|
19
|
+
::DataMapper::AutoMigrator.auto_migrate
|
20
|
+
end
|
21
|
+
desc "Perform non destructive automigration"
|
22
|
+
task :autoupgrade => :merb_start do
|
23
|
+
::DataMapper::AutoMigrator.auto_upgrade
|
24
|
+
end
|
25
|
+
|
26
|
+
namespace :migrate do
|
27
|
+
task :load => :merb_start do
|
28
|
+
gem 'dm-migrations'
|
29
|
+
require 'migration_runner'
|
30
|
+
FileList["schema/migrations/*.rb"].each do |migration|
|
31
|
+
load migration
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
desc "Migrate up using migrations"
|
36
|
+
task :up, :version, :needs => :load do |t, args|
|
37
|
+
version = args[:version] || ENV['VERSION']
|
38
|
+
migrate_up!(version)
|
39
|
+
end
|
40
|
+
desc "Migrate down using migrations"
|
41
|
+
task :down, :version, :needs => :load do |t, args|
|
42
|
+
version = args[:version] || ENV['VERSION']
|
43
|
+
migrate_down!(version)
|
44
|
+
end
|
14
45
|
end
|
15
46
|
end
|
16
|
-
|
47
|
+
|
17
48
|
namespace :sessions do
|
18
|
-
desc "
|
49
|
+
desc "Perform automigration for sessions"
|
19
50
|
task :create => :merb_start do
|
20
|
-
|
21
|
-
source = File.join(File.dirname(__FILE__), "merb", "session","001_add_sessions_table.rb")
|
22
|
-
#FileUtils.cp source, dest unless File.exists?(dest)
|
51
|
+
Merb::DataMapperSession.auto_migrate!
|
23
52
|
end
|
24
|
-
|
53
|
+
|
25
54
|
desc "Clears sessions"
|
26
55
|
task :clear => :merb_start do
|
27
56
|
table_name = ((Merb::Plugins.config[:datamapper] || {})[:session_table_name] || "sessions")
|
28
|
-
|
57
|
+
::DataMapper.repository.adapter.execute("DELETE FROM #{table_name}")
|
29
58
|
end
|
30
59
|
end
|
31
|
-
end
|
60
|
+
end
|
@@ -0,0 +1,67 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), 'spec_helper')
|
2
|
+
require File.join(File.dirname(__FILE__), '..', 'lib', 'merb', 'orms', 'data_mapper', 'connection')
|
3
|
+
|
4
|
+
describe 'Merb datamapper' do
|
5
|
+
it "should read the configuration file" do
|
6
|
+
|
7
|
+
end
|
8
|
+
|
9
|
+
it 'should return an option hash with symbol keys' do
|
10
|
+
Merb.should_receive(:environment).once.and_return('development')
|
11
|
+
|
12
|
+
config = {
|
13
|
+
'development' => {
|
14
|
+
'adapter' => 'myadapter',
|
15
|
+
'more_stuff' => 'more_stuff',
|
16
|
+
'repositories' => {
|
17
|
+
'repo1' => {
|
18
|
+
'adapter' => 'mysql',
|
19
|
+
},
|
20
|
+
},
|
21
|
+
},
|
22
|
+
}
|
23
|
+
|
24
|
+
Merb::Orms::DataMapper.should_receive(:full_config).once.and_return(config)
|
25
|
+
Merb::Orms::DataMapper.config.should have_key(:adapter)
|
26
|
+
Merb::Orms::DataMapper.config[:adapter].should == 'myadapter'
|
27
|
+
Merb::Orms::DataMapper.config.should have_key(:repositories)
|
28
|
+
Merb::Orms::DataMapper.config[:repositories].should have_key(:repo1)
|
29
|
+
Merb::Orms::DataMapper.config[:repositories][:repo1].should have_key(:adapter)
|
30
|
+
Merb::Orms::DataMapper.config[:repositories][:repo1][:adapter].should == 'mysql'
|
31
|
+
end
|
32
|
+
|
33
|
+
it "should create a default repository" do
|
34
|
+
config = {
|
35
|
+
:adapter => 'mysql',
|
36
|
+
:database => 'mydb'
|
37
|
+
}
|
38
|
+
|
39
|
+
Merb::Orms::DataMapper.should_receive(:config).and_return(config)
|
40
|
+
DataMapper.should_receive(:setup).with(:default, config)
|
41
|
+
|
42
|
+
Merb::Orms::DataMapper.setup_connections
|
43
|
+
end
|
44
|
+
|
45
|
+
it "should create additional repositories" do
|
46
|
+
conf_mysql = {
|
47
|
+
:adapter => "mysql",
|
48
|
+
:database => "db"
|
49
|
+
}
|
50
|
+
conf_postgres = {
|
51
|
+
:adapter => "postgres",
|
52
|
+
:database => "dbp"
|
53
|
+
}
|
54
|
+
config = {
|
55
|
+
:repositories => {
|
56
|
+
:repo1 => conf_mysql,
|
57
|
+
:repo2 => conf_postgres
|
58
|
+
}
|
59
|
+
}
|
60
|
+
|
61
|
+
Merb::Orms::DataMapper.should_receive(:config).and_return(config)
|
62
|
+
DataMapper.should_receive(:setup).with(:repo1, conf_mysql)
|
63
|
+
DataMapper.should_receive(:setup).with(:repo2, conf_postgres)
|
64
|
+
|
65
|
+
Merb::Orms::DataMapper.setup_connections
|
66
|
+
end
|
67
|
+
end
|
data/spec/spec.opts
ADDED
data/spec/spec_helper.rb
ADDED
metadata
CHANGED
@@ -1,95 +1,108 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: merb_datamapper
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jason Toy
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2008-
|
12
|
+
date: 2008-07-29 00:00:00 -05:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: dm-core
|
17
|
+
type: :runtime
|
18
|
+
version_requirement:
|
19
|
+
version_requirements: !ruby/object:Gem::Requirement
|
20
|
+
requirements:
|
21
|
+
- - "="
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: 0.9.3
|
24
|
+
version:
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: dm-migrations
|
27
|
+
type: :runtime
|
28
|
+
version_requirement:
|
29
|
+
version_requirements: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 0.9.3
|
34
|
+
version:
|
15
35
|
- !ruby/object:Gem::Dependency
|
16
36
|
name: merb-core
|
37
|
+
type: :runtime
|
17
38
|
version_requirement:
|
18
39
|
version_requirements: !ruby/object:Gem::Requirement
|
19
40
|
requirements:
|
20
41
|
- - ">="
|
21
42
|
- !ruby/object:Gem::Version
|
22
|
-
version: 0.9.
|
43
|
+
version: 0.9.3
|
23
44
|
version:
|
24
45
|
- !ruby/object:Gem::Dependency
|
25
|
-
name:
|
46
|
+
name: hoe
|
47
|
+
type: :runtime
|
26
48
|
version_requirement:
|
27
49
|
version_requirements: !ruby/object:Gem::Requirement
|
28
50
|
requirements:
|
29
51
|
- - ">="
|
30
52
|
- !ruby/object:Gem::Version
|
31
|
-
version:
|
53
|
+
version: 1.6.0
|
32
54
|
version:
|
33
|
-
description:
|
34
|
-
email:
|
55
|
+
description: DataMapper plugin providing DataMapper support for Merb
|
56
|
+
email:
|
57
|
+
- jtoy@rubynow.com
|
35
58
|
executables: []
|
36
59
|
|
37
60
|
extensions: []
|
38
61
|
|
39
62
|
extra_rdoc_files:
|
40
|
-
- README
|
63
|
+
- README.txt
|
41
64
|
- LICENSE
|
42
65
|
- TODO
|
43
66
|
files:
|
67
|
+
- History.txt
|
44
68
|
- LICENSE
|
45
|
-
-
|
69
|
+
- Manifest.txt
|
70
|
+
- README.txt
|
46
71
|
- Rakefile
|
47
72
|
- TODO
|
48
|
-
-
|
49
|
-
- lib/merb/orms
|
50
|
-
- lib/merb/orms/data_mapper
|
51
|
-
- lib/merb/orms/data_mapper/base.rb
|
52
|
-
- lib/merb/orms/data_mapper/connection.rb
|
53
|
-
- lib/merb/orms/data_mapper/database.yml.sample
|
54
|
-
- lib/merb/session
|
55
|
-
- lib/merb/session/data_mapper_session.rb
|
56
|
-
- lib/merb_datamapper
|
57
|
-
- lib/merb_datamapper/merbtasks.rb
|
58
|
-
- lib/merb_datamapper.rb
|
59
|
-
- specs/merb_sequel_spec.rb
|
60
|
-
- specs/spec_helper.rb
|
61
|
-
- datamapper_generators/migration
|
73
|
+
- datamapper_generators/migration/USAGE
|
62
74
|
- datamapper_generators/migration/migration_generator.rb
|
63
|
-
- datamapper_generators/migration/templates
|
64
75
|
- datamapper_generators/migration/templates/new_migration.erb
|
65
|
-
- datamapper_generators/
|
66
|
-
- datamapper_generators/model
|
76
|
+
- datamapper_generators/model/USAGE
|
67
77
|
- datamapper_generators/model/model_generator.rb
|
68
|
-
- datamapper_generators/model/templates
|
69
|
-
- datamapper_generators/model/templates/app
|
70
|
-
- datamapper_generators/model/templates/app/models
|
71
78
|
- datamapper_generators/model/templates/app/models/%model_file_name%.rb
|
72
|
-
- datamapper_generators/
|
73
|
-
- datamapper_generators/resource_controller
|
79
|
+
- datamapper_generators/resource_controller/USAGE
|
74
80
|
- datamapper_generators/resource_controller/resource_controller_generator.rb
|
75
|
-
- datamapper_generators/resource_controller/templates
|
76
|
-
- datamapper_generators/resource_controller/templates/app
|
77
|
-
- datamapper_generators/resource_controller/templates/app/controllers
|
78
81
|
- datamapper_generators/resource_controller/templates/app/controllers/%controller_file_name%.rb
|
79
|
-
- datamapper_generators/resource_controller/templates/app/helpers
|
80
82
|
- datamapper_generators/resource_controller/templates/app/helpers/%controller_file_name%_helper.rb
|
81
|
-
- datamapper_generators/resource_controller/templates/app/views
|
82
|
-
- datamapper_generators/resource_controller/templates/app/views/%controller_file_name%
|
83
83
|
- datamapper_generators/resource_controller/templates/app/views/%controller_file_name%/edit.html.erb
|
84
84
|
- datamapper_generators/resource_controller/templates/app/views/%controller_file_name%/index.html.erb
|
85
85
|
- datamapper_generators/resource_controller/templates/app/views/%controller_file_name%/new.html.erb
|
86
86
|
- datamapper_generators/resource_controller/templates/app/views/%controller_file_name%/show.html.erb
|
87
|
-
- datamapper_generators/
|
87
|
+
- datamapper_generators/resource_migration/USAGE
|
88
|
+
- datamapper_generators/resource_migration/resource_migration_generator.rb
|
89
|
+
- datamapper_generators/resource_migration/templates/class_migration.erb
|
90
|
+
- lib/merb/orms/data_mapper/connection.rb
|
91
|
+
- lib/merb/orms/data_mapper/database.yml.sample
|
92
|
+
- lib/merb/orms/data_mapper/resource.rb
|
93
|
+
- lib/merb/session/data_mapper_session.rb
|
94
|
+
- lib/merb_datamapper.rb
|
95
|
+
- lib/merb_datamapper/merbtasks.rb
|
96
|
+
- lib/merb_datamapper/version.rb
|
97
|
+
- spec/connection_spec.rb
|
98
|
+
- spec/spec.opts
|
99
|
+
- spec/spec_helper.rb
|
88
100
|
has_rdoc: true
|
89
|
-
homepage: http://
|
101
|
+
homepage: http://github.com/sam/dm-more/tree/master/merb_datamapper
|
90
102
|
post_install_message:
|
91
|
-
rdoc_options:
|
92
|
-
|
103
|
+
rdoc_options:
|
104
|
+
- --main
|
105
|
+
- README.txt
|
93
106
|
require_paths:
|
94
107
|
- lib
|
95
108
|
required_ruby_version: !ruby/object:Gem::Requirement
|
@@ -106,10 +119,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
106
119
|
version:
|
107
120
|
requirements: []
|
108
121
|
|
109
|
-
rubyforge_project:
|
110
|
-
rubygems_version: 1.0
|
122
|
+
rubyforge_project: datamapper
|
123
|
+
rubygems_version: 1.2.0
|
111
124
|
signing_key:
|
112
125
|
specification_version: 2
|
113
|
-
summary:
|
126
|
+
summary: DataMapper plugin providing DataMapper support for Merb
|
114
127
|
test_files: []
|
115
128
|
|
data/README
DELETED
@@ -1,10 +0,0 @@
|
|
1
|
-
merb_datamapper
|
2
|
-
=================
|
3
|
-
|
4
|
-
A plugin for the Merb framework that provides DataMapper access
|
5
|
-
|
6
|
-
To use sessions:
|
7
|
-
1. set the session store to datamapper in merb.yml:
|
8
|
-
:session_store: datamapper
|
9
|
-
2. add the dependency in dependencies.rb:
|
10
|
-
use_orm :datamapper
|
data/specs/merb_sequel_spec.rb
DELETED
File without changes
|
data/specs/spec_helper.rb
DELETED