legacy 0.0.1 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.1
1
+ 0.1.0
data/legacy.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{legacy}
8
- s.version = "0.0.1"
8
+ s.version = "0.1.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Roy van der Meij"]
12
- s.date = %q{2011-03-09}
12
+ s.date = %q{2011-03-10}
13
13
  s.description = %q{}
14
14
  s.email = %q{roy@royapps.nl}
15
15
  s.extra_rdoc_files = [
@@ -27,6 +27,7 @@ Gem::Specification.new do |s|
27
27
  "test/dummy/Rakefile",
28
28
  "test/dummy/app/controllers/application_controller.rb",
29
29
  "test/dummy/app/helpers/application_helper.rb",
30
+ "test/dummy/app/models/post.rb",
30
31
  "test/dummy/app/views/layouts/application.html.erb",
31
32
  "test/dummy/config.ru",
32
33
  "test/dummy/config/application.rb",
@@ -43,6 +44,8 @@ Gem::Specification.new do |s|
43
44
  "test/dummy/config/initializers/session_store.rb",
44
45
  "test/dummy/config/locales/en.yml",
45
46
  "test/dummy/config/routes.rb",
47
+ "test/dummy/db/migrate/20110310102359_create_posts.rb",
48
+ "test/dummy/db/schema.rb",
46
49
  "test/dummy/public/404.html",
47
50
  "test/dummy/public/422.html",
48
51
  "test/dummy/public/500.html",
@@ -67,6 +70,7 @@ Gem::Specification.new do |s|
67
70
  s.test_files = [
68
71
  "test/dummy/app/controllers/application_controller.rb",
69
72
  "test/dummy/app/helpers/application_helper.rb",
73
+ "test/dummy/app/models/post.rb",
70
74
  "test/dummy/config/application.rb",
71
75
  "test/dummy/config/boot.rb",
72
76
  "test/dummy/config/environment.rb",
@@ -79,6 +83,8 @@ Gem::Specification.new do |s|
79
83
  "test/dummy/config/initializers/secret_token.rb",
80
84
  "test/dummy/config/initializers/session_store.rb",
81
85
  "test/dummy/config/routes.rb",
86
+ "test/dummy/db/migrate/20110310102359_create_posts.rb",
87
+ "test/dummy/db/schema.rb",
82
88
  "test/integration/navigation_test.rb",
83
89
  "test/legacy_test.rb",
84
90
  "test/support/integration_case.rb",
data/lib/legacy.rb CHANGED
@@ -1,2 +1,14 @@
1
1
  module Legacy
2
- end
2
+ def method_missing(method_id, *args, &block)
3
+ super(select_real_method_id(method_id), *args, &block)
4
+ end
5
+
6
+ def select_real_method_id(method_id)
7
+ real_method_id = attributes.keys.detect{ |c| c.to_s.downcase == method_id.to_s.downcase.gsub(/=/, '') }
8
+ return method_id unless real_method_id
9
+
10
+ method_id = method_id.to_s
11
+ method_id[0..(real_method_id.length - 1)] = real_method_id
12
+ method_id
13
+ end
14
+ end
@@ -0,0 +1,3 @@
1
+ class Post < ActiveRecord::Base
2
+ include Legacy
3
+ end
@@ -0,0 +1,14 @@
1
+ class CreatePosts < ActiveRecord::Migration
2
+ def self.up
3
+ create_table :posts do |t|
4
+ t.string :TITLE
5
+ t.text :DESCRIPTION
6
+
7
+ t.timestamps
8
+ end
9
+ end
10
+
11
+ def self.down
12
+ drop_table :posts
13
+ end
14
+ end
@@ -0,0 +1,22 @@
1
+ # This file is auto-generated from the current state of the database. Instead
2
+ # of editing this file, please use the migrations feature of Active Record to
3
+ # incrementally modify your database, and then regenerate this schema definition.
4
+ #
5
+ # Note that this schema.rb definition is the authoritative source for your
6
+ # database schema. If you need to create the application database on another
7
+ # system, you should be using db:schema:load, not running all the migrations
8
+ # from scratch. The latter is a flawed and unsustainable approach (the more migrations
9
+ # you'll amass, the slower it'll run and the greater likelihood for issues).
10
+ #
11
+ # It's strongly recommended to check this file into your version control system.
12
+
13
+ ActiveRecord::Schema.define(:version => 20110310102359) do
14
+
15
+ create_table "posts", :force => true do |t|
16
+ t.string "TITLE"
17
+ t.text "DESCRIPTION"
18
+ t.datetime "created_at"
19
+ t.datetime "updated_at"
20
+ end
21
+
22
+ end
data/test/legacy_test.rb CHANGED
@@ -4,4 +4,14 @@ class LegacyTest < ActiveSupport::TestCase
4
4
  test "truth" do
5
5
  assert_kind_of Module, Legacy
6
6
  end
7
+
8
+ test "post can access upcased columns with downcased methods" do
9
+ post = Post.new
10
+ post.title = "Testing title"
11
+ post.description = "Testing description"
12
+ post.save
13
+
14
+ assert_equal "Testing title", post.title
15
+ assert_equal "Testing description", post.description
16
+ end
7
17
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: legacy
3
3
  version: !ruby/object:Gem::Version
4
- hash: 29
4
+ hash: 27
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
- - 0
9
8
  - 1
10
- version: 0.0.1
9
+ - 0
10
+ version: 0.1.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - Roy van der Meij
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-03-09 00:00:00 +01:00
18
+ date: 2011-03-10 00:00:00 +01:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -112,6 +112,7 @@ files:
112
112
  - test/dummy/Rakefile
113
113
  - test/dummy/app/controllers/application_controller.rb
114
114
  - test/dummy/app/helpers/application_helper.rb
115
+ - test/dummy/app/models/post.rb
115
116
  - test/dummy/app/views/layouts/application.html.erb
116
117
  - test/dummy/config.ru
117
118
  - test/dummy/config/application.rb
@@ -128,6 +129,8 @@ files:
128
129
  - test/dummy/config/initializers/session_store.rb
129
130
  - test/dummy/config/locales/en.yml
130
131
  - test/dummy/config/routes.rb
132
+ - test/dummy/db/migrate/20110310102359_create_posts.rb
133
+ - test/dummy/db/schema.rb
131
134
  - test/dummy/public/404.html
132
135
  - test/dummy/public/422.html
133
136
  - test/dummy/public/500.html
@@ -181,6 +184,7 @@ summary: Bring some magic to ActiveRecord for legacy databases
181
184
  test_files:
182
185
  - test/dummy/app/controllers/application_controller.rb
183
186
  - test/dummy/app/helpers/application_helper.rb
187
+ - test/dummy/app/models/post.rb
184
188
  - test/dummy/config/application.rb
185
189
  - test/dummy/config/boot.rb
186
190
  - test/dummy/config/environment.rb
@@ -193,6 +197,8 @@ test_files:
193
197
  - test/dummy/config/initializers/secret_token.rb
194
198
  - test/dummy/config/initializers/session_store.rb
195
199
  - test/dummy/config/routes.rb
200
+ - test/dummy/db/migrate/20110310102359_create_posts.rb
201
+ - test/dummy/db/schema.rb
196
202
  - test/integration/navigation_test.rb
197
203
  - test/legacy_test.rb
198
204
  - test/support/integration_case.rb