legacy_data 0.1.8 → 0.1.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (112) hide show
  1. data/Rakefile +37 -1
  2. data/VERSION +1 -1
  3. data/examples/blog_migration.rb +26 -0
  4. data/examples/create_j2ee_petstore.sql +91 -0
  5. data/examples/delete_j2ee_petstore.sql +14 -0
  6. data/examples/drupal_6_14.sql +809 -0
  7. data/examples/generated/blog_mysql/comment.rb +11 -0
  8. data/examples/generated/blog_mysql/factories.rb +9 -0
  9. data/examples/generated/blog_mysql/post.rb +11 -0
  10. data/examples/generated/blog_mysql/tag.rb +11 -0
  11. data/{spec/functional/expected → examples/generated/blog_sqlite3}/comment.rb +3 -4
  12. data/examples/generated/blog_sqlite3/factories.rb +12 -0
  13. data/{spec/functional/expected → examples/generated/blog_sqlite3}/post.rb +3 -3
  14. data/examples/generated/blog_sqlite3/tag.rb +11 -0
  15. data/examples/generated/drupal_mysql/access.rb +12 -0
  16. data/examples/generated/drupal_mysql/action.rb +11 -0
  17. data/examples/generated/drupal_mysql/actions_aid.rb +11 -0
  18. data/examples/generated/drupal_mysql/authmap.rb +13 -0
  19. data/examples/generated/drupal_mysql/batch.rb +12 -0
  20. data/examples/generated/drupal_mysql/block.rb +13 -0
  21. data/examples/generated/drupal_mysql/blocks_role.rb +12 -0
  22. data/examples/generated/drupal_mysql/box.rb +13 -0
  23. data/examples/generated/drupal_mysql/cache.rb +12 -0
  24. data/examples/generated/drupal_mysql/cache_block.rb +12 -0
  25. data/examples/generated/drupal_mysql/cache_filter.rb +12 -0
  26. data/examples/generated/drupal_mysql/cache_form.rb +12 -0
  27. data/examples/generated/drupal_mysql/cache_menu.rb +12 -0
  28. data/examples/generated/drupal_mysql/cache_page.rb +12 -0
  29. data/examples/generated/drupal_mysql/cache_update.rb +12 -0
  30. data/examples/generated/drupal_mysql/comment.rb +12 -0
  31. data/examples/generated/drupal_mysql/factories.rb +370 -0
  32. data/examples/generated/drupal_mysql/filter.rb +13 -0
  33. data/examples/generated/drupal_mysql/filter_format.rb +13 -0
  34. data/examples/generated/drupal_mysql/flood.rb +12 -0
  35. data/examples/generated/drupal_mysql/history.rb +12 -0
  36. data/examples/generated/drupal_mysql/menu_custom.rb +11 -0
  37. data/examples/generated/drupal_mysql/menu_link.rb +12 -0
  38. data/examples/generated/drupal_mysql/menu_router.rb +12 -0
  39. data/examples/generated/drupal_mysql/node.rb +13 -0
  40. data/examples/generated/drupal_mysql/node_access.rb +12 -0
  41. data/examples/generated/drupal_mysql/node_comment_statistic.rb +12 -0
  42. data/examples/generated/drupal_mysql/node_counter.rb +12 -0
  43. data/examples/generated/drupal_mysql/node_revision.rb +12 -0
  44. data/examples/generated/drupal_mysql/node_type.rb +12 -0
  45. data/examples/generated/drupal_mysql/permission.rb +12 -0
  46. data/examples/generated/drupal_mysql/role.rb +12 -0
  47. data/examples/generated/drupal_mysql/session.rb +12 -0
  48. data/examples/generated/drupal_mysql/system.rb +12 -0
  49. data/examples/generated/drupal_mysql/term_data.rb +12 -0
  50. data/examples/generated/drupal_mysql/term_hierarchy.rb +12 -0
  51. data/examples/generated/drupal_mysql/term_node.rb +12 -0
  52. data/examples/generated/drupal_mysql/term_relation.rb +13 -0
  53. data/examples/generated/drupal_mysql/term_synonym.rb +12 -0
  54. data/examples/generated/drupal_mysql/uploaded_files.rb +12 -0
  55. data/examples/generated/drupal_mysql/url_alias.rb +12 -0
  56. data/examples/generated/drupal_mysql/user.rb +14 -0
  57. data/examples/generated/drupal_mysql/users_role.rb +12 -0
  58. data/examples/generated/drupal_mysql/variable.rb +11 -0
  59. data/examples/generated/drupal_mysql/vocabulary.rb +12 -0
  60. data/examples/generated/drupal_mysql/vocabulary_node_type.rb +12 -0
  61. data/examples/generated/drupal_mysql/watchdog.rb +12 -0
  62. data/examples/generated/j2ee_petstore_mysql/address.rb +11 -0
  63. data/examples/generated/j2ee_petstore_mysql/category.rb +11 -0
  64. data/examples/generated/j2ee_petstore_mysql/factories.rb +57 -0
  65. data/examples/generated/j2ee_petstore_mysql/id_gen.rb +12 -0
  66. data/examples/generated/j2ee_petstore_mysql/item.rb +12 -0
  67. data/examples/generated/j2ee_petstore_mysql/product.rb +11 -0
  68. data/examples/generated/j2ee_petstore_mysql/seller_contact_info.rb +11 -0
  69. data/examples/generated/j2ee_petstore_mysql/tag.rb +13 -0
  70. data/examples/generated/j2ee_petstore_mysql/tag_item.rb +13 -0
  71. data/examples/generated/j2ee_petstore_mysql/ziplocation.rb +11 -0
  72. data/examples/generated/j2ee_petstore_oracle/address.rb +11 -0
  73. data/examples/generated/j2ee_petstore_oracle/category.rb +11 -0
  74. data/examples/generated/j2ee_petstore_oracle/factories.rb +52 -0
  75. data/examples/generated/j2ee_petstore_oracle/id_gen.rb +12 -0
  76. data/examples/generated/j2ee_petstore_oracle/item.rb +15 -0
  77. data/examples/generated/j2ee_petstore_oracle/product.rb +12 -0
  78. data/examples/generated/j2ee_petstore_oracle/sellercontactinfo.rb +11 -0
  79. data/examples/generated/j2ee_petstore_oracle/tag.rb +13 -0
  80. data/examples/generated/j2ee_petstore_oracle/ziplocation.rb +11 -0
  81. data/examples/generated/j2ee_petstore_sqlite3/address.rb +12 -0
  82. data/examples/generated/j2ee_petstore_sqlite3/category.rb +12 -0
  83. data/examples/generated/j2ee_petstore_sqlite3/factories.rb +57 -0
  84. data/examples/generated/j2ee_petstore_sqlite3/id_gen.rb +13 -0
  85. data/examples/generated/j2ee_petstore_sqlite3/item.rb +13 -0
  86. data/examples/generated/j2ee_petstore_sqlite3/product.rb +12 -0
  87. data/examples/generated/j2ee_petstore_sqlite3/seller_contact_info.rb +12 -0
  88. data/examples/generated/j2ee_petstore_sqlite3/tag.rb +13 -0
  89. data/examples/generated/j2ee_petstore_sqlite3/tag_item.rb +14 -0
  90. data/examples/generated/j2ee_petstore_sqlite3/ziplocation.rb +11 -0
  91. data/generators/models_from_tables/models_from_tables_generator.rb +5 -36
  92. data/generators/models_from_tables/templates/model.rb +5 -39
  93. data/legacy_data.gemspec +187 -11
  94. data/lib/active_record/connection_adapters/oracleenhanced_adapter.rb +85 -0
  95. data/lib/legacy_data.rb +5 -2
  96. data/lib/legacy_data/schema.rb +10 -7
  97. data/lib/legacy_data/table_class_name_mapper.rb +1 -1
  98. data/lib/legacy_data/table_definition.rb +120 -5
  99. data/spec/expected/post.rb +3 -3
  100. data/spec/functional/blog_adapterspec.rb +45 -0
  101. data/spec/functional/database.yml +45 -0
  102. data/spec/functional/drupal_adapterspec.rb +54 -0
  103. data/spec/functional/functional_spec_helper.rb +24 -0
  104. data/spec/functional/j2ee_petstore_adapterspec.rb +57 -0
  105. data/spec/legacy_data/schema_spec.rb +7 -3
  106. data/spec/legacy_data/table_definition_spec.rb +101 -10
  107. data/spec/models_from_tables_generator_spec.rb +19 -7
  108. data/spec/spec_helper.rb +6 -18
  109. metadata +193 -10
  110. data/examples/j2ee_petstore.sql +0 -512
  111. data/lib/active_record/connection_adapters/oracle_enhanced_adapter.rb +0 -61
  112. data/spec/functional/models_from_tables_spec.rb +0 -27
@@ -0,0 +1,13 @@
1
+ class Filter < ActiveRecord::Base
2
+
3
+ set_primary_key :fid
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ #validates_uniqueness_of_multiple_column_constraint ["format", "module", "delta"]
10
+ validates_numericality_of :format, :delta, :weight
11
+ validates_presence_of :format, :module, :delta, :weight
12
+ end
13
+
@@ -0,0 +1,13 @@
1
+ class FilterFormat < ActiveRecord::Base
2
+
3
+ set_primary_key :format
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_numericality_of :cache
10
+ validates_presence_of :name, :roles, :cache
11
+ validates_uniqueness_of :name
12
+ end
13
+
@@ -0,0 +1,12 @@
1
+ class Flood < ActiveRecord::Base
2
+ set_table_name :flood
3
+ set_primary_key :fid
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_numericality_of :timestamp
10
+ validates_presence_of :event, :hostname, :timestamp
11
+ end
12
+
@@ -0,0 +1,12 @@
1
+ class History < ActiveRecord::Base
2
+ set_table_name :history
3
+ set_primary_key :no_primary_key
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_numericality_of :uid, :nid, :timestamp
10
+ validates_presence_of :uid, :nid, :timestamp
11
+ end
12
+
@@ -0,0 +1,11 @@
1
+ class MenuCustom < ActiveRecord::Base
2
+ set_table_name :menu_custom
3
+ set_primary_key :menu_name
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_presence_of :title
10
+ end
11
+
@@ -0,0 +1,12 @@
1
+ class MenuLink < ActiveRecord::Base
2
+
3
+ set_primary_key :mlid
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_numericality_of :plid, :hidden, :external, :has_children, :expanded, :weight, :depth, :customized, :p1, :p2, :p3, :p4, :p5, :p6, :p7, :p8, :p9, :updated
10
+ validates_presence_of :menu_name, :plid, :link_path, :router_path, :link_title, :module, :hidden, :external, :has_children, :expanded, :weight, :depth, :customized, :p1, :p2, :p3, :p4, :p5, :p6, :p7, :p8, :p9, :updated
11
+ end
12
+
@@ -0,0 +1,12 @@
1
+ class MenuRouter < ActiveRecord::Base
2
+ set_table_name :menu_router
3
+ set_primary_key :path
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_numericality_of :fit, :number_parts, :type, :weight
10
+ validates_presence_of :load_functions, :to_arg_functions, :access_callback, :page_callback, :fit, :number_parts, :tab_parent, :tab_root, :title, :title_callback, :title_arguments, :type, :block_callback, :description, :position, :weight
11
+ end
12
+
@@ -0,0 +1,13 @@
1
+ class Node < ActiveRecord::Base
2
+ set_table_name :node
3
+ set_primary_key :nid
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_numericality_of :vid, :uid, :status, :created, :changed, :comment, :promote, :moderate, :sticky, :tnid, :translate
10
+ validates_presence_of :vid, :type, :language, :title, :uid, :status, :created, :changed, :comment, :promote, :moderate, :sticky, :tnid, :translate
11
+ validates_uniqueness_of :vid
12
+ end
13
+
@@ -0,0 +1,12 @@
1
+ class NodeAccess < ActiveRecord::Base
2
+ set_table_name :node_access
3
+ set_primary_key :no_primary_key
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_numericality_of :nid, :gid, :grant_view, :grant_update, :grant_delete
10
+ validates_presence_of :nid, :gid, :realm, :grant_view, :grant_update, :grant_delete
11
+ end
12
+
@@ -0,0 +1,12 @@
1
+ class NodeCommentStatistic < ActiveRecord::Base
2
+
3
+ set_primary_key :nid
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_numericality_of :last_comment_timestamp, :last_comment_uid, :comment_count
10
+ validates_presence_of :last_comment_timestamp, :last_comment_uid, :comment_count
11
+ end
12
+
@@ -0,0 +1,12 @@
1
+ class NodeCounter < ActiveRecord::Base
2
+ set_table_name :node_counter
3
+ set_primary_key :nid
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_numericality_of :totalcount, :daycount, :timestamp
10
+ validates_presence_of :totalcount, :daycount, :timestamp
11
+ end
12
+
@@ -0,0 +1,12 @@
1
+ class NodeRevision < ActiveRecord::Base
2
+
3
+ set_primary_key :vid
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_numericality_of :nid, :uid, :timestamp, :format
10
+ validates_presence_of :nid, :uid, :title, :body, :teaser, :log, :timestamp, :format
11
+ end
12
+
@@ -0,0 +1,12 @@
1
+ class NodeType < ActiveRecord::Base
2
+ set_table_name :node_type
3
+ set_primary_key :type
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_numericality_of :has_title, :has_body, :min_word_count, :custom, :modified, :locked
10
+ validates_presence_of :name, :module, :description, :help, :has_title, :title_label, :has_body, :body_label, :min_word_count, :custom, :modified, :locked, :orig_type
11
+ end
12
+
@@ -0,0 +1,12 @@
1
+ class Permission < ActiveRecord::Base
2
+ set_table_name :permission
3
+ set_primary_key :pid
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_numericality_of :rid, :tid
10
+ validates_presence_of :rid, :tid
11
+ end
12
+
@@ -0,0 +1,12 @@
1
+ class Role < ActiveRecord::Base
2
+ set_table_name :role
3
+ set_primary_key :rid
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_presence_of :name
10
+ validates_uniqueness_of :name
11
+ end
12
+
@@ -0,0 +1,12 @@
1
+ class Session < ActiveRecord::Base
2
+
3
+ set_primary_key :sid
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_numericality_of :uid, :timestamp, :cache
10
+ validates_presence_of :uid, :hostname, :timestamp, :cache
11
+ end
12
+
@@ -0,0 +1,12 @@
1
+ class System < ActiveRecord::Base
2
+ set_table_name :system
3
+ set_primary_key :filename
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_numericality_of :status, :throttle, :bootstrap, :schema_version, :weight
10
+ validates_presence_of :name, :type, :owner, :status, :throttle, :bootstrap, :schema_version, :weight
11
+ end
12
+
@@ -0,0 +1,12 @@
1
+ class TermData < ActiveRecord::Base
2
+ set_table_name :term_data
3
+ set_primary_key :tid
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_numericality_of :vid, :weight
10
+ validates_presence_of :vid, :name, :weight
11
+ end
12
+
@@ -0,0 +1,12 @@
1
+ class TermHierarchy < ActiveRecord::Base
2
+ set_table_name :term_hierarchy
3
+ set_primary_key :no_primary_key
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_numericality_of :tid, :parent
10
+ validates_presence_of :tid, :parent
11
+ end
12
+
@@ -0,0 +1,12 @@
1
+ class TermNode < ActiveRecord::Base
2
+ set_table_name :term_node
3
+ set_primary_key :no_primary_key
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_numericality_of :nid, :vid, :tid
10
+ validates_presence_of :nid, :vid, :tid
11
+ end
12
+
@@ -0,0 +1,13 @@
1
+ class TermRelation < ActiveRecord::Base
2
+ set_table_name :term_relation
3
+ set_primary_key :trid
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ #validates_uniqueness_of_multiple_column_constraint ["tid1", "tid2"]
10
+ validates_numericality_of :tid1, :tid2
11
+ validates_presence_of :tid1, :tid2
12
+ end
13
+
@@ -0,0 +1,12 @@
1
+ class TermSynonym < ActiveRecord::Base
2
+ set_table_name :term_synonym
3
+ set_primary_key :tsid
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_numericality_of :tid
10
+ validates_presence_of :tid, :name
11
+ end
12
+
@@ -0,0 +1,12 @@
1
+ class UploadedFiles < ActiveRecord::Base
2
+ set_table_name :files
3
+ set_primary_key :fid
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_numericality_of :uid, :filesize, :status, :timestamp
10
+ validates_presence_of :uid, :filename, :filepath, :filemime, :filesize, :status, :timestamp
11
+ end
12
+
@@ -0,0 +1,12 @@
1
+ class UrlAlias < ActiveRecord::Base
2
+ set_table_name :url_alias
3
+ set_primary_key :pid
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ #validates_uniqueness_of_multiple_column_constraint ["dst", "language"]
10
+ validates_presence_of :src, :dst, :language
11
+ end
12
+
@@ -0,0 +1,14 @@
1
+ class User < ActiveRecord::Base
2
+
3
+ set_primary_key :uid
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_numericality_of :sort, :threshold, {:allow_nil=>true}
10
+ validates_numericality_of :mode, :signature_format, :created, :access, :login, :status
11
+ validates_presence_of :name, :pass, :mode, :theme, :signature, :signature_format, :created, :access, :login, :status, :language, :picture
12
+ validates_uniqueness_of :name
13
+ end
14
+
@@ -0,0 +1,12 @@
1
+ class UsersRole < ActiveRecord::Base
2
+
3
+ set_primary_key :no_primary_key
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_numericality_of :uid, :rid
10
+ validates_presence_of :uid, :rid
11
+ end
12
+
@@ -0,0 +1,11 @@
1
+ class Variable < ActiveRecord::Base
2
+ set_table_name :variable
3
+ set_primary_key :name
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_presence_of :value
10
+ end
11
+
@@ -0,0 +1,12 @@
1
+ class Vocabulary < ActiveRecord::Base
2
+ set_table_name :vocabulary
3
+ set_primary_key :vid
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_numericality_of :relations, :hierarchy, :multiple, :required, :tags, :weight
10
+ validates_presence_of :name, :help, :relations, :hierarchy, :multiple, :required, :tags, :module, :weight
11
+ end
12
+
@@ -0,0 +1,12 @@
1
+ class VocabularyNodeType < ActiveRecord::Base
2
+
3
+ set_primary_key :no_primary_key
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_numericality_of :vid
10
+ validates_presence_of :vid, :type
11
+ end
12
+
@@ -0,0 +1,12 @@
1
+ class Watchdog < ActiveRecord::Base
2
+ set_table_name :watchdog
3
+ set_primary_key :wid
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_numericality_of :uid, :severity, :timestamp
10
+ validates_presence_of :uid, :type, :message, :variables, :severity, :link, :location, :hostname, :timestamp
11
+ end
12
+
@@ -0,0 +1,11 @@
1
+ class Address < ActiveRecord::Base
2
+ set_table_name :address
3
+ set_primary_key :addressid
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_presence_of :street1, :city, :state, :zip, :latitude, :longitude
10
+ end
11
+
@@ -0,0 +1,11 @@
1
+ class Category < ActiveRecord::Base
2
+ set_table_name :category
3
+ set_primary_key :categoryid
4
+
5
+ # Relationships
6
+
7
+
8
+ # Constraints
9
+ validates_presence_of :name, :description
10
+ end
11
+