ibm_db 3.0.4-x86-mingw32 → 3.0.5-x86-mingw32
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.
- checksums.yaml +4 -4
- data/CHANGES +4 -1
- data/LICENSE +1 -1
- data/MANIFEST +14 -14
- data/README +225 -225
- data/ext/Makefile.nt32 +181 -181
- data/ext/Makefile.nt32.191 +212 -212
- data/ext/extconf.rb +291 -291
- data/ext/ibm_db.c +11887 -11884
- data/ext/ruby_ibm_db.h +241 -241
- data/ext/ruby_ibm_db_cli.c +866 -866
- data/ext/ruby_ibm_db_cli.h +500 -500
- data/init.rb +41 -41
- data/lib/IBM_DB.rb +27 -27
- data/lib/active_record/connection_adapters/ibm_db_adapter.rb +3177 -3177
- data/lib/active_record/connection_adapters/ibmdb_adapter.rb +1 -1
- data/lib/active_record/vendor/db2-i5-zOS.yaml +328 -328
- data/lib/mswin32/ibm_db.rb +122 -122
- data/lib/mswin32/rb21x/i386/ibm_db.so +0 -0
- data/lib/mswin32/rb22x/i386/ibm_db.so +0 -0
- data/lib/mswin32/rb23x/i386/ibm_db.so +0 -0
- data/test/active_record/connection_adapters/fake_adapter.rb +46 -46
- data/test/assets/example.log +1 -1
- data/test/assets/test.txt +1 -1
- data/test/cases/adapter_test.rb +276 -261
- data/test/cases/aggregations_test.rb +158 -158
- data/test/cases/ar_schema_test.rb +161 -161
- data/test/cases/associations/association_scope_test.rb +21 -21
- data/test/cases/associations/belongs_to_associations_test.rb +1029 -1029
- data/test/cases/associations/callbacks_test.rb +192 -192
- data/test/cases/associations/cascaded_eager_loading_test.rb +188 -188
- data/test/cases/associations/deprecated_counter_cache_on_has_many_through_test.rb +26 -26
- data/test/cases/associations/eager_load_includes_full_sti_class_test.rb +36 -36
- data/test/cases/associations/eager_load_nested_include_test.rb +128 -128
- data/test/cases/associations/eager_singularization_test.rb +148 -148
- data/test/cases/associations/eager_test.rb +1429 -1411
- data/test/cases/associations/extension_test.rb +82 -82
- data/test/cases/associations/has_and_belongs_to_many_associations_test.rb +972 -932
- data/test/cases/associations/has_many_associations_test.rb +2182 -2162
- data/test/cases/associations/has_many_through_associations_test.rb +1204 -1204
- data/test/cases/associations/has_one_associations_test.rb +610 -610
- data/test/cases/associations/has_one_through_associations_test.rb +380 -380
- data/test/cases/associations/inner_join_association_test.rb +139 -139
- data/test/cases/associations/inverse_associations_test.rb +706 -693
- data/test/cases/associations/join_model_test.rb +754 -754
- data/test/cases/associations/nested_through_associations_test.rb +579 -579
- data/test/cases/associations/required_test.rb +82 -82
- data/test/cases/associations_test.rb +380 -380
- data/test/cases/attribute_decorators_test.rb +125 -125
- data/test/cases/attribute_methods/read_test.rb +60 -60
- data/test/cases/attribute_methods/serialization_test.rb +29 -29
- data/test/cases/attribute_methods_test.rb +952 -952
- data/test/cases/attribute_set_test.rb +210 -200
- data/test/cases/attribute_test.rb +180 -180
- data/test/cases/attributes_test.rb +136 -136
- data/test/cases/autosave_association_test.rb +1595 -1595
- data/test/cases/base_test.rb +1664 -1638
- data/test/cases/batches_test.rb +212 -212
- data/test/cases/binary_test.rb +52 -52
- data/test/cases/bind_parameter_test.rb +100 -100
- data/test/cases/calculations_test.rb +646 -646
- data/test/cases/callbacks_test.rb +543 -543
- data/test/cases/clone_test.rb +40 -40
- data/test/cases/coders/yaml_column_test.rb +63 -63
- data/test/cases/column_alias_test.rb +17 -17
- data/test/cases/column_definition_test.rb +123 -123
- data/test/cases/connection_adapters/adapter_leasing_test.rb +54 -54
- data/test/cases/connection_adapters/connection_handler_test.rb +53 -53
- data/test/cases/connection_adapters/connection_specification_test.rb +12 -12
- data/test/cases/connection_adapters/merge_and_resolve_default_url_config_test.rb +293 -293
- data/test/cases/connection_adapters/mysql_type_lookup_test.rb +65 -65
- data/test/cases/connection_adapters/quoting_test.rb +13 -13
- data/test/cases/connection_adapters/schema_cache_test.rb +56 -56
- data/test/cases/connection_adapters/type_lookup_test.rb +110 -110
- data/test/cases/connection_management_test.rb +122 -122
- data/test/cases/connection_pool_test.rb +346 -346
- data/test/cases/connection_specification/resolver_test.rb +116 -116
- data/test/cases/core_test.rb +112 -112
- data/test/cases/counter_cache_test.rb +209 -209
- data/test/cases/custom_locking_test.rb +17 -17
- data/test/cases/database_statements_test.rb +19 -19
- data/test/cases/date_time_test.rb +61 -61
- data/test/cases/defaults_test.rb +223 -223
- data/test/cases/dirty_test.rb +785 -775
- data/test/cases/disconnected_test.rb +28 -28
- data/test/cases/dup_test.rb +157 -157
- data/test/cases/enum_test.rb +290 -290
- data/test/cases/explain_subscriber_test.rb +64 -64
- data/test/cases/explain_test.rb +76 -76
- data/test/cases/finder_respond_to_test.rb +60 -60
- data/test/cases/finder_test.rb +1169 -1166
- data/test/cases/fixture_set/file_test.rb +138 -138
- data/test/cases/fixtures_test.rb +908 -897
- data/test/cases/forbidden_attributes_protection_test.rb +99 -99
- data/test/cases/habtm_destroy_order_test.rb +61 -61
- data/test/cases/helper.rb +210 -210
- data/test/cases/hot_compatibility_test.rb +54 -54
- data/test/cases/i18n_test.rb +45 -45
- data/test/cases/inheritance_test.rb +375 -375
- data/test/cases/integration_test.rb +139 -139
- data/test/cases/invalid_connection_test.rb +22 -22
- data/test/cases/invalid_date_test.rb +32 -32
- data/test/cases/invertible_migration_test.rb +295 -295
- data/test/cases/json_serialization_test.rb +302 -302
- data/test/cases/locking_test.rb +477 -477
- data/test/cases/log_subscriber_test.rb +136 -136
- data/test/cases/migration/change_schema_test - Copy.rb +448 -448
- data/test/cases/migration/change_schema_test.rb +512 -472
- data/test/cases/migration/change_table_test.rb +224 -224
- data/test/cases/migration/column_attributes_test.rb +192 -192
- data/test/cases/migration/column_positioning_test.rb +56 -56
- data/test/cases/migration/columns_test.rb +304 -304
- data/test/cases/migration/command_recorder_test.rb +305 -305
- data/test/cases/migration/create_join_table_test.rb +148 -148
- data/test/cases/migration/foreign_key_test - Changed.rb +325 -325
- data/test/cases/migration/foreign_key_test.rb +328 -360
- data/test/cases/migration/helper.rb +39 -39
- data/test/cases/migration/index_test.rb +216 -216
- data/test/cases/migration/logger_test.rb +36 -36
- data/test/cases/migration/pending_migrations_test.rb +53 -53
- data/test/cases/migration/references_foreign_key_test.rb +169 -214
- data/test/cases/migration/references_index_test.rb +101 -101
- data/test/cases/migration/references_statements_test.rb +116 -116
- data/test/cases/migration/rename_table_test.rb +93 -93
- data/test/cases/migration/table_and_index_test.rb +24 -24
- data/test/cases/migration_test.rb +959 -959
- data/test/cases/migrator_test.rb +388 -388
- data/test/cases/mixin_test.rb +70 -70
- data/test/cases/modules_test.rb +173 -173
- data/test/cases/multiparameter_attributes_test.rb +350 -350
- data/test/cases/multiple_db_test.rb +115 -115
- data/test/cases/nested_attributes_test.rb +1070 -1057
- data/test/cases/nested_attributes_with_callbacks_test.rb +144 -144
- data/test/cases/persistence_test.rb +909 -909
- data/test/cases/pooled_connections_test.rb +81 -81
- data/test/cases/primary_keys_test.rb +237 -237
- data/test/cases/query_cache_test.rb +326 -326
- data/test/cases/quoting_test.rb +156 -156
- data/test/cases/readonly_test.rb +118 -118
- data/test/cases/reaper_test.rb +85 -85
- data/test/cases/reflection_test.rb +463 -454
- data/test/cases/relation/delegation_test.rb +68 -68
- data/test/cases/relation/merging_test.rb +161 -161
- data/test/cases/relation/mutation_test.rb +165 -165
- data/test/cases/relation/predicate_builder_test.rb +14 -14
- data/test/cases/relation/where_chain_test.rb +181 -181
- data/test/cases/relation/where_test.rb +300 -300
- data/test/cases/relation/where_test2.rb +36 -36
- data/test/cases/relation_test.rb +319 -297
- data/test/cases/relations_test.rb +1815 -1815
- data/test/cases/reload_models_test.rb +22 -22
- data/test/cases/result_test.rb +80 -80
- data/test/cases/sanitize_test.rb +83 -83
- data/test/cases/schema_dumper_test.rb +463 -463
- data/test/cases/scoping/default_scoping_test.rb +454 -454
- data/test/cases/scoping/named_scoping_test.rb +524 -524
- data/test/cases/scoping/relation_scoping_test.rb +357 -357
- data/test/cases/serialization_test.rb +104 -104
- data/test/cases/serialized_attribute_test.rb +277 -277
- data/test/cases/statement_cache_test.rb +98 -98
- data/test/cases/store_test.rb +194 -194
- data/test/cases/tasks/database_tasks_test.rb +398 -396
- data/test/cases/tasks/mysql_rake_test.rb +324 -311
- data/test/cases/tasks/postgresql_rake_test.rb +250 -245
- data/test/cases/tasks/sqlite_rake_test.rb +193 -193
- data/test/cases/test_case.rb +123 -123
- data/test/cases/timestamp_test.rb +467 -468
- data/test/cases/transaction_callbacks_test.rb +452 -452
- data/test/cases/transaction_isolation_test.rb +106 -106
- data/test/cases/transactions_test.rb +817 -817
- data/test/cases/type/decimal_test.rb +56 -51
- data/test/cases/type/integer_test.rb +121 -121
- data/test/cases/type/string_test.rb +36 -36
- data/test/cases/type/type_map_test.rb +177 -177
- data/test/cases/type/unsigned_integer_test.rb +18 -18
- data/test/cases/types_test.rb +141 -141
- data/test/cases/unconnected_test.rb +33 -33
- data/test/cases/validations/association_validation_test.rb +86 -86
- data/test/cases/validations/i18n_generate_message_validation_test.rb +84 -84
- data/test/cases/validations/i18n_validation_test.rb +90 -90
- data/test/cases/validations/length_validation_test.rb +47 -47
- data/test/cases/validations/presence_validation_test.rb +68 -68
- data/test/cases/validations/uniqueness_validation_test.rb +457 -434
- data/test/cases/validations_repair_helper.rb +23 -23
- data/test/cases/validations_test.rb +165 -165
- data/test/cases/view_test.rb +119 -113
- data/test/cases/xml_serialization_test.rb +457 -457
- data/test/cases/yaml_serialization_test.rb +126 -86
- data/test/config.rb +5 -5
- data/test/config.yml +154 -154
- data/test/connections/native_ibm_db/connection.rb +43 -43
- data/test/fixtures/accounts.yml +29 -29
- data/test/fixtures/admin/accounts.yml +2 -2
- data/test/fixtures/admin/randomly_named_a9.yml +7 -7
- data/test/fixtures/admin/randomly_named_b0.yml +7 -7
- data/test/fixtures/admin/users.yml +10 -10
- data/test/fixtures/author_addresses.yml +17 -17
- data/test/fixtures/author_favorites.yml +3 -3
- data/test/fixtures/authors.yml +23 -23
- data/test/fixtures/binaries.yml +133 -133
- data/test/fixtures/books.yml +11 -11
- data/test/fixtures/bulbs.yml +5 -5
- data/test/fixtures/cars.yml +9 -9
- data/test/fixtures/categories.yml +19 -19
- data/test/fixtures/categories/special_categories.yml +9 -9
- data/test/fixtures/categories/subsubdir/arbitrary_filename.yml +4 -4
- data/test/fixtures/categories_ordered.yml +7 -7
- data/test/fixtures/categories_posts.yml +31 -31
- data/test/fixtures/categorizations.yml +23 -23
- data/test/fixtures/clubs.yml +8 -8
- data/test/fixtures/collections.yml +3 -3
- data/test/fixtures/colleges.yml +3 -3
- data/test/fixtures/comments.yml +65 -65
- data/test/fixtures/companies.yml +67 -67
- data/test/fixtures/computers.yml +10 -10
- data/test/fixtures/courses.yml +8 -8
- data/test/fixtures/customers.yml +25 -25
- data/test/fixtures/dashboards.yml +6 -6
- data/test/fixtures/developers.yml +21 -21
- data/test/fixtures/developers_projects.yml +16 -16
- data/test/fixtures/dog_lovers.yml +7 -7
- data/test/fixtures/dogs.yml +4 -4
- data/test/fixtures/doubloons.yml +3 -3
- data/test/fixtures/edges.yml +5 -5
- data/test/fixtures/entrants.yml +14 -14
- data/test/fixtures/essays.yml +6 -6
- data/test/fixtures/faces.yml +11 -11
- data/test/fixtures/fk_test_has_fk.yml +3 -3
- data/test/fixtures/fk_test_has_pk.yml +1 -1
- data/test/fixtures/friendships.yml +4 -4
- data/test/fixtures/funny_jokes.yml +10 -10
- data/test/fixtures/interests.yml +33 -33
- data/test/fixtures/items.yml +3 -3
- data/test/fixtures/jobs.yml +7 -7
- data/test/fixtures/legacy_things.yml +3 -3
- data/test/fixtures/mateys.yml +4 -4
- data/test/fixtures/member_details.yml +8 -8
- data/test/fixtures/member_types.yml +6 -6
- data/test/fixtures/members.yml +11 -11
- data/test/fixtures/memberships.yml +34 -34
- data/test/fixtures/men.yml +5 -5
- data/test/fixtures/minimalistics.yml +2 -2
- data/test/fixtures/minivans.yml +5 -5
- data/test/fixtures/mixed_case_monkeys.yml +6 -6
- data/test/fixtures/mixins.yml +29 -29
- data/test/fixtures/movies.yml +7 -7
- data/test/fixtures/naked/csv/accounts.csv +1 -1
- data/test/fixtures/naked/yml/accounts.yml +1 -1
- data/test/fixtures/naked/yml/companies.yml +1 -1
- data/test/fixtures/naked/yml/courses.yml +1 -1
- data/test/fixtures/organizations.yml +5 -5
- data/test/fixtures/other_topics.yml +42 -42
- data/test/fixtures/owners.yml +9 -9
- data/test/fixtures/parrots.yml +27 -27
- data/test/fixtures/parrots_pirates.yml +7 -7
- data/test/fixtures/people.yml +24 -24
- data/test/fixtures/peoples_treasures.yml +3 -3
- data/test/fixtures/pets.yml +19 -19
- data/test/fixtures/pirates.yml +12 -12
- data/test/fixtures/posts.yml +80 -80
- data/test/fixtures/price_estimates.yml +7 -7
- data/test/fixtures/products.yml +4 -4
- data/test/fixtures/projects.yml +7 -7
- data/test/fixtures/randomly_named_a9.yml +7 -7
- data/test/fixtures/ratings.yml +14 -14
- data/test/fixtures/readers.yml +11 -11
- data/test/fixtures/references.yml +17 -17
- data/test/fixtures/reserved_words/distinct.yml +5 -5
- data/test/fixtures/reserved_words/distinct_select.yml +11 -11
- data/test/fixtures/reserved_words/group.yml +14 -14
- data/test/fixtures/reserved_words/select.yml +8 -8
- data/test/fixtures/reserved_words/values.yml +7 -7
- data/test/fixtures/ships.yml +6 -6
- data/test/fixtures/speedometers.yml +8 -8
- data/test/fixtures/sponsors.yml +12 -12
- data/test/fixtures/string_key_objects.yml +7 -7
- data/test/fixtures/subscribers.yml +10 -10
- data/test/fixtures/subscriptions.yml +12 -12
- data/test/fixtures/taggings.yml +78 -78
- data/test/fixtures/tags.yml +11 -11
- data/test/fixtures/tasks.yml +7 -7
- data/test/fixtures/teapots.yml +3 -3
- data/test/fixtures/to_be_linked/accounts.yml +2 -2
- data/test/fixtures/to_be_linked/users.yml +10 -10
- data/test/fixtures/topics.yml +49 -49
- data/test/fixtures/toys.yml +14 -14
- data/test/fixtures/traffic_lights.yml +9 -9
- data/test/fixtures/treasures.yml +10 -10
- data/test/fixtures/uuid_children.yml +3 -3
- data/test/fixtures/uuid_parents.yml +2 -2
- data/test/fixtures/variants.yml +4 -4
- data/test/fixtures/vegetables.yml +19 -19
- data/test/fixtures/vertices.yml +3 -3
- data/test/fixtures/warehouse_things.yml +2 -2
- data/test/fixtures/zines.yml +5 -5
- data/test/ibm_db_test.rb +24 -24
- data/test/migrations/10_urban/9_add_expressions.rb +11 -11
- data/test/migrations/decimal/1_give_me_big_numbers.rb +15 -15
- data/test/migrations/magic/1_currencies_have_symbols.rb +12 -12
- data/test/migrations/missing/1000_people_have_middle_names.rb +8 -8
- data/test/migrations/missing/1_people_have_last_names.rb +8 -8
- data/test/migrations/missing/3_we_need_reminders.rb +11 -11
- data/test/migrations/missing/4_innocent_jointable.rb +11 -11
- data/test/migrations/rename/1_we_need_things.rb +10 -10
- data/test/migrations/rename/2_rename_things.rb +8 -8
- data/test/migrations/to_copy/1_people_have_hobbies.rb +9 -9
- data/test/migrations/to_copy/2_people_have_descriptions.rb +9 -9
- data/test/migrations/to_copy2/1_create_articles.rb +7 -7
- data/test/migrations/to_copy2/2_create_comments.rb +7 -7
- data/test/migrations/to_copy_with_name_collision/1_people_have_hobbies.rb +9 -9
- data/test/migrations/to_copy_with_timestamps/20090101010101_people_have_hobbies.rb +9 -9
- data/test/migrations/to_copy_with_timestamps/20090101010202_people_have_descriptions.rb +9 -9
- data/test/migrations/to_copy_with_timestamps2/20090101010101_create_articles.rb +7 -7
- data/test/migrations/to_copy_with_timestamps2/20090101010202_create_comments.rb +7 -7
- data/test/migrations/valid/1_valid_people_have_last_names.rb +9 -9
- data/test/migrations/valid/2_we_need_reminders.rb +11 -11
- data/test/migrations/valid/3_innocent_jointable.rb +11 -11
- data/test/migrations/valid_with_subdirectories/1_valid_people_have_last_names.rb +9 -9
- data/test/migrations/valid_with_subdirectories/sub/2_we_need_reminders.rb +11 -11
- data/test/migrations/valid_with_subdirectories/sub1/3_innocent_jointable.rb +11 -11
- data/test/migrations/valid_with_timestamps/20100101010101_valid_with_timestamps_people_have_last_names.rb +9 -9
- data/test/migrations/valid_with_timestamps/20100201010101_valid_with_timestamps_we_need_reminders.rb +12 -12
- data/test/migrations/valid_with_timestamps/20100301010101_valid_with_timestamps_innocent_jointable.rb +12 -12
- data/test/migrations/version_check/20131219224947_migration_version_check.rb +8 -8
- data/test/models/admin.rb +4 -4
- data/test/models/admin/account.rb +2 -2
- data/test/models/admin/randomly_named_c1.rb +3 -3
- data/test/models/admin/user.rb +40 -40
- data/test/models/aircraft.rb +4 -4
- data/test/models/arunit2_model.rb +3 -3
- data/test/models/author.rb +212 -212
- data/test/models/auto_id.rb +4 -4
- data/test/models/autoloadable/extra_firm.rb +2 -2
- data/test/models/binary.rb +1 -1
- data/test/models/bird.rb +12 -12
- data/test/models/book.rb +18 -18
- data/test/models/boolean.rb +2 -2
- data/test/models/bulb.rb +51 -51
- data/test/models/cake_designer.rb +3 -3
- data/test/models/car.rb +26 -26
- data/test/models/carrier.rb +2 -2
- data/test/models/categorization.rb +19 -19
- data/test/models/category.rb +35 -35
- data/test/models/chef.rb +7 -3
- data/test/models/citation.rb +3 -3
- data/test/models/club.rb +23 -23
- data/test/models/college.rb +10 -10
- data/test/models/column.rb +3 -3
- data/test/models/column_name.rb +3 -3
- data/test/models/comment.rb +64 -64
- data/test/models/company.rb +228 -225
- data/test/models/company_in_module.rb +98 -98
- data/test/models/computer.rb +3 -3
- data/test/models/contact.rb +41 -41
- data/test/models/contract.rb +20 -20
- data/test/models/country.rb +7 -7
- data/test/models/course.rb +6 -6
- data/test/models/customer.rb +77 -77
- data/test/models/customer_carrier.rb +14 -14
- data/test/models/dashboard.rb +3 -3
- data/test/models/default.rb +2 -2
- data/test/models/department.rb +4 -4
- data/test/models/developer.rb +255 -252
- data/test/models/dog.rb +5 -5
- data/test/models/dog_lover.rb +5 -5
- data/test/models/doubloon.rb +12 -12
- data/test/models/drink_designer.rb +3 -3
- data/test/models/edge.rb +5 -5
- data/test/models/electron.rb +5 -5
- data/test/models/engine.rb +4 -4
- data/test/models/entrant.rb +3 -3
- data/test/models/essay.rb +5 -5
- data/test/models/event.rb +2 -2
- data/test/models/eye.rb +37 -37
- data/test/models/face.rb +9 -9
- data/test/models/friendship.rb +6 -6
- data/test/models/guid.rb +1 -1
- data/test/models/hotel.rb +9 -6
- data/test/models/image.rb +3 -3
- data/test/models/interest.rb +5 -5
- data/test/models/invoice.rb +4 -4
- data/test/models/item.rb +7 -7
- data/test/models/job.rb +7 -7
- data/test/models/joke.rb +7 -7
- data/test/models/keyboard.rb +3 -3
- data/test/models/legacy_thing.rb +3 -3
- data/test/models/lesson.rb +11 -11
- data/test/models/line_item.rb +3 -3
- data/test/models/liquid.rb +4 -4
- data/test/models/man.rb +11 -11
- data/test/models/matey.rb +4 -4
- data/test/models/member.rb +41 -41
- data/test/models/member_detail.rb +7 -7
- data/test/models/member_type.rb +3 -3
- data/test/models/membership.rb +35 -35
- data/test/models/minimalistic.rb +2 -2
- data/test/models/minivan.rb +9 -9
- data/test/models/mixed_case_monkey.rb +3 -3
- data/test/models/molecule.rb +6 -6
- data/test/models/movie.rb +5 -5
- data/test/models/order.rb +4 -4
- data/test/models/organization.rb +14 -14
- data/test/models/owner.rb +34 -34
- data/test/models/parrot.rb +29 -29
- data/test/models/person.rb +143 -143
- data/test/models/personal_legacy_thing.rb +4 -4
- data/test/models/pet.rb +15 -15
- data/test/models/pirate.rb +92 -92
- data/test/models/possession.rb +3 -3
- data/test/models/post.rb +264 -264
- data/test/models/price_estimate.rb +4 -4
- data/test/models/professor.rb +5 -5
- data/test/models/project.rb +31 -29
- data/test/models/publisher.rb +2 -2
- data/test/models/publisher/article.rb +4 -4
- data/test/models/publisher/magazine.rb +3 -3
- data/test/models/randomly_named_c1.rb +3 -3
- data/test/models/rating.rb +4 -4
- data/test/models/reader.rb +23 -23
- data/test/models/record.rb +2 -2
- data/test/models/reference.rb +22 -22
- data/test/models/reply.rb +61 -61
- data/test/models/ship.rb +33 -33
- data/test/models/ship_part.rb +7 -7
- data/test/models/shop.rb +17 -17
- data/test/models/shop_account.rb +6 -6
- data/test/models/speedometer.rb +6 -6
- data/test/models/sponsor.rb +7 -7
- data/test/models/string_key_object.rb +3 -3
- data/test/models/student.rb +4 -4
- data/test/models/subject.rb +16 -16
- data/test/models/subscriber.rb +8 -8
- data/test/models/subscription.rb +4 -4
- data/test/models/tag.rb +7 -7
- data/test/models/tagging.rb +13 -13
- data/test/models/task.rb +5 -5
- data/test/models/topic.rb +124 -124
- data/test/models/toy.rb +6 -6
- data/test/models/traffic_light.rb +4 -4
- data/test/models/treasure.rb +14 -14
- data/test/models/treaty.rb +7 -7
- data/test/models/tyre.rb +11 -11
- data/test/models/uuid_child.rb +3 -3
- data/test/models/uuid_parent.rb +3 -3
- data/test/models/vegetables.rb +24 -24
- data/test/models/vehicle.rb +6 -6
- data/test/models/vertex.rb +9 -9
- data/test/models/warehouse_thing.rb +5 -5
- data/test/models/wheel.rb +3 -3
- data/test/models/without_table.rb +3 -3
- data/test/models/zine.rb +3 -3
- data/test/schema/mysql2_specific_schema.rb +58 -58
- data/test/schema/mysql_specific_schema.rb +70 -70
- data/test/schema/oracle_specific_schema.rb +43 -43
- data/test/schema/postgresql_specific_schema.rb +202 -202
- data/test/schema/schema.rb +952 -938
- data/test/schema/sqlite_specific_schema.rb +21 -21
- data/test/support/config.rb +43 -43
- data/test/support/connection.rb +22 -22
- data/test/support/connection_helper.rb +14 -14
- data/test/support/ddl_helper.rb +8 -8
- data/test/support/schema_dumping_helper.rb +20 -20
- metadata +2 -2
data/test/cases/clone_test.rb
CHANGED
@@ -1,40 +1,40 @@
|
|
1
|
-
require "cases/helper"
|
2
|
-
require 'models/topic'
|
3
|
-
|
4
|
-
module ActiveRecord
|
5
|
-
class CloneTest < ActiveRecord::TestCase
|
6
|
-
fixtures :topics
|
7
|
-
|
8
|
-
def test_persisted
|
9
|
-
topic = Topic.first
|
10
|
-
cloned = topic.clone
|
11
|
-
assert topic.persisted?, 'topic persisted'
|
12
|
-
assert cloned.persisted?, 'topic persisted'
|
13
|
-
assert !cloned.new_record?, 'topic is not new'
|
14
|
-
end
|
15
|
-
|
16
|
-
def test_stays_frozen
|
17
|
-
topic = Topic.first
|
18
|
-
topic.freeze
|
19
|
-
|
20
|
-
cloned = topic.clone
|
21
|
-
assert cloned.persisted?, 'topic persisted'
|
22
|
-
assert !cloned.new_record?, 'topic is not new'
|
23
|
-
assert cloned.frozen?, 'topic should be frozen'
|
24
|
-
end
|
25
|
-
|
26
|
-
def test_shallow
|
27
|
-
topic = Topic.first
|
28
|
-
cloned = topic.clone
|
29
|
-
topic.author_name = 'Aaron'
|
30
|
-
assert_equal 'Aaron', cloned.author_name
|
31
|
-
end
|
32
|
-
|
33
|
-
def test_freezing_a_cloned_model_does_not_freeze_clone
|
34
|
-
cloned = Topic.new
|
35
|
-
clone = cloned.clone
|
36
|
-
cloned.freeze
|
37
|
-
assert_not clone.frozen?
|
38
|
-
end
|
39
|
-
end
|
40
|
-
end
|
1
|
+
require "cases/helper"
|
2
|
+
require 'models/topic'
|
3
|
+
|
4
|
+
module ActiveRecord
|
5
|
+
class CloneTest < ActiveRecord::TestCase
|
6
|
+
fixtures :topics
|
7
|
+
|
8
|
+
def test_persisted
|
9
|
+
topic = Topic.first
|
10
|
+
cloned = topic.clone
|
11
|
+
assert topic.persisted?, 'topic persisted'
|
12
|
+
assert cloned.persisted?, 'topic persisted'
|
13
|
+
assert !cloned.new_record?, 'topic is not new'
|
14
|
+
end
|
15
|
+
|
16
|
+
def test_stays_frozen
|
17
|
+
topic = Topic.first
|
18
|
+
topic.freeze
|
19
|
+
|
20
|
+
cloned = topic.clone
|
21
|
+
assert cloned.persisted?, 'topic persisted'
|
22
|
+
assert !cloned.new_record?, 'topic is not new'
|
23
|
+
assert cloned.frozen?, 'topic should be frozen'
|
24
|
+
end
|
25
|
+
|
26
|
+
def test_shallow
|
27
|
+
topic = Topic.first
|
28
|
+
cloned = topic.clone
|
29
|
+
topic.author_name = 'Aaron'
|
30
|
+
assert_equal 'Aaron', cloned.author_name
|
31
|
+
end
|
32
|
+
|
33
|
+
def test_freezing_a_cloned_model_does_not_freeze_clone
|
34
|
+
cloned = Topic.new
|
35
|
+
clone = cloned.clone
|
36
|
+
cloned.freeze
|
37
|
+
assert_not clone.frozen?
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
@@ -1,63 +1,63 @@
|
|
1
|
-
|
2
|
-
require "cases/helper"
|
3
|
-
|
4
|
-
module ActiveRecord
|
5
|
-
module Coders
|
6
|
-
class YAMLColumnTest < ActiveRecord::TestCase
|
7
|
-
def test_initialize_takes_class
|
8
|
-
coder = YAMLColumn.new(Object)
|
9
|
-
assert_equal Object, coder.object_class
|
10
|
-
end
|
11
|
-
|
12
|
-
def test_type_mismatch_on_different_classes_on_dump
|
13
|
-
coder = YAMLColumn.new(Array)
|
14
|
-
assert_raises(SerializationTypeMismatch) do
|
15
|
-
coder.dump("a")
|
16
|
-
end
|
17
|
-
end
|
18
|
-
|
19
|
-
def test_type_mismatch_on_different_classes
|
20
|
-
coder = YAMLColumn.new(Array)
|
21
|
-
assert_raises(SerializationTypeMismatch) do
|
22
|
-
coder.load "--- foo"
|
23
|
-
end
|
24
|
-
end
|
25
|
-
|
26
|
-
def test_nil_is_ok
|
27
|
-
coder = YAMLColumn.new
|
28
|
-
assert_nil coder.load "--- "
|
29
|
-
end
|
30
|
-
|
31
|
-
def test_returns_new_with_different_class
|
32
|
-
coder = YAMLColumn.new SerializationTypeMismatch
|
33
|
-
assert_equal SerializationTypeMismatch, coder.load("--- ").class
|
34
|
-
end
|
35
|
-
|
36
|
-
def test_returns_string_unless_starts_with_dash
|
37
|
-
coder = YAMLColumn.new
|
38
|
-
assert_equal 'foo', coder.load("foo")
|
39
|
-
end
|
40
|
-
|
41
|
-
def test_load_handles_other_classes
|
42
|
-
coder = YAMLColumn.new
|
43
|
-
assert_equal [], coder.load([])
|
44
|
-
end
|
45
|
-
|
46
|
-
def test_load_doesnt_swallow_yaml_exceptions
|
47
|
-
coder = YAMLColumn.new
|
48
|
-
bad_yaml = '--- {'
|
49
|
-
assert_raises(Psych::SyntaxError) do
|
50
|
-
coder.load(bad_yaml)
|
51
|
-
end
|
52
|
-
end
|
53
|
-
|
54
|
-
def test_load_doesnt_handle_undefined_class_or_module
|
55
|
-
coder = YAMLColumn.new
|
56
|
-
missing_class_yaml = '--- !ruby/object:DoesNotExistAndShouldntEver {}\n'
|
57
|
-
assert_raises(ArgumentError) do
|
58
|
-
coder.load(missing_class_yaml)
|
59
|
-
end
|
60
|
-
end
|
61
|
-
end
|
62
|
-
end
|
63
|
-
end
|
1
|
+
|
2
|
+
require "cases/helper"
|
3
|
+
|
4
|
+
module ActiveRecord
|
5
|
+
module Coders
|
6
|
+
class YAMLColumnTest < ActiveRecord::TestCase
|
7
|
+
def test_initialize_takes_class
|
8
|
+
coder = YAMLColumn.new(Object)
|
9
|
+
assert_equal Object, coder.object_class
|
10
|
+
end
|
11
|
+
|
12
|
+
def test_type_mismatch_on_different_classes_on_dump
|
13
|
+
coder = YAMLColumn.new(Array)
|
14
|
+
assert_raises(SerializationTypeMismatch) do
|
15
|
+
coder.dump("a")
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
def test_type_mismatch_on_different_classes
|
20
|
+
coder = YAMLColumn.new(Array)
|
21
|
+
assert_raises(SerializationTypeMismatch) do
|
22
|
+
coder.load "--- foo"
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
def test_nil_is_ok
|
27
|
+
coder = YAMLColumn.new
|
28
|
+
assert_nil coder.load "--- "
|
29
|
+
end
|
30
|
+
|
31
|
+
def test_returns_new_with_different_class
|
32
|
+
coder = YAMLColumn.new SerializationTypeMismatch
|
33
|
+
assert_equal SerializationTypeMismatch, coder.load("--- ").class
|
34
|
+
end
|
35
|
+
|
36
|
+
def test_returns_string_unless_starts_with_dash
|
37
|
+
coder = YAMLColumn.new
|
38
|
+
assert_equal 'foo', coder.load("foo")
|
39
|
+
end
|
40
|
+
|
41
|
+
def test_load_handles_other_classes
|
42
|
+
coder = YAMLColumn.new
|
43
|
+
assert_equal [], coder.load([])
|
44
|
+
end
|
45
|
+
|
46
|
+
def test_load_doesnt_swallow_yaml_exceptions
|
47
|
+
coder = YAMLColumn.new
|
48
|
+
bad_yaml = '--- {'
|
49
|
+
assert_raises(Psych::SyntaxError) do
|
50
|
+
coder.load(bad_yaml)
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
54
|
+
def test_load_doesnt_handle_undefined_class_or_module
|
55
|
+
coder = YAMLColumn.new
|
56
|
+
missing_class_yaml = '--- !ruby/object:DoesNotExistAndShouldntEver {}\n'
|
57
|
+
assert_raises(ArgumentError) do
|
58
|
+
coder.load(missing_class_yaml)
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
63
|
+
end
|
@@ -1,17 +1,17 @@
|
|
1
|
-
require "cases/helper"
|
2
|
-
require 'models/topic'
|
3
|
-
|
4
|
-
class TestColumnAlias < ActiveRecord::TestCase
|
5
|
-
fixtures :topics
|
6
|
-
|
7
|
-
QUERY = if 'Oracle' == ActiveRecord::Base.connection.adapter_name
|
8
|
-
'SELECT id AS pk FROM topics WHERE ROWNUM < 2'
|
9
|
-
else
|
10
|
-
'SELECT id AS pk FROM topics'
|
11
|
-
end
|
12
|
-
|
13
|
-
def test_column_alias
|
14
|
-
records = Topic.connection.select_all(QUERY)
|
15
|
-
assert_equal 'pk', records[0].keys[0]
|
16
|
-
end
|
17
|
-
end
|
1
|
+
require "cases/helper"
|
2
|
+
require 'models/topic'
|
3
|
+
|
4
|
+
class TestColumnAlias < ActiveRecord::TestCase
|
5
|
+
fixtures :topics
|
6
|
+
|
7
|
+
QUERY = if 'Oracle' == ActiveRecord::Base.connection.adapter_name
|
8
|
+
'SELECT id AS pk FROM topics WHERE ROWNUM < 2'
|
9
|
+
else
|
10
|
+
'SELECT id AS pk FROM topics'
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_column_alias
|
14
|
+
records = Topic.connection.select_all(QUERY)
|
15
|
+
assert_equal 'pk', records[0].keys[0]
|
16
|
+
end
|
17
|
+
end
|
@@ -1,123 +1,123 @@
|
|
1
|
-
require "cases/helper"
|
2
|
-
|
3
|
-
module ActiveRecord
|
4
|
-
module ConnectionAdapters
|
5
|
-
class ColumnDefinitionTest < ActiveRecord::TestCase
|
6
|
-
def setup
|
7
|
-
@adapter = AbstractAdapter.new(nil)
|
8
|
-
def @adapter.native_database_types
|
9
|
-
{:string => "varchar"}
|
10
|
-
end
|
11
|
-
@viz = @adapter.schema_creation
|
12
|
-
end
|
13
|
-
|
14
|
-
# Avoid column definitions in create table statements like:
|
15
|
-
# `title` varchar(255) DEFAULT NULL
|
16
|
-
def test_should_not_include_default_clause_when_default_is_null
|
17
|
-
column = Column.new("title", nil, Type::String.new(limit: 20))
|
18
|
-
column_def = ColumnDefinition.new(
|
19
|
-
column.name, "string",
|
20
|
-
column.limit, column.precision, column.scale, column.default, column.null)
|
21
|
-
assert_equal "title varchar(20)", @viz.accept(column_def)
|
22
|
-
end
|
23
|
-
|
24
|
-
def test_should_include_default_clause_when_default_is_present
|
25
|
-
column = Column.new("title", "Hello", Type::String.new(limit: 20))
|
26
|
-
column_def = ColumnDefinition.new(
|
27
|
-
column.name, "string",
|
28
|
-
column.limit, column.precision, column.scale, column.default, column.null)
|
29
|
-
assert_equal %Q{title varchar(20) DEFAULT 'Hello'}, @viz.accept(column_def)
|
30
|
-
end
|
31
|
-
|
32
|
-
def test_should_specify_not_null_if_null_option_is_false
|
33
|
-
column = Column.new("title", "Hello", Type::String.new(limit: 20), "varchar(20)", false)
|
34
|
-
column_def = ColumnDefinition.new(
|
35
|
-
column.name, "string",
|
36
|
-
column.limit, column.precision, column.scale, column.default, column.null)
|
37
|
-
assert_equal %Q{title varchar(20) DEFAULT 'Hello' NOT NULL}, @viz.accept(column_def)
|
38
|
-
end
|
39
|
-
|
40
|
-
if current_adapter?(:MysqlAdapter)
|
41
|
-
def test_should_set_default_for_mysql_binary_data_types
|
42
|
-
binary_column = MysqlAdapter::Column.new("title", "a", Type::Binary.new, "binary(1)")
|
43
|
-
assert_equal "a", binary_column.default
|
44
|
-
|
45
|
-
varbinary_column = MysqlAdapter::Column.new("title", "a", Type::Binary.new, "varbinary(1)")
|
46
|
-
assert_equal "a", varbinary_column.default
|
47
|
-
end
|
48
|
-
|
49
|
-
def test_should_not_set_default_for_blob_and_text_data_types
|
50
|
-
assert_raise ArgumentError do
|
51
|
-
MysqlAdapter::Column.new("title", "a", Type::Binary.new, "blob")
|
52
|
-
end
|
53
|
-
|
54
|
-
assert_raise ArgumentError do
|
55
|
-
MysqlAdapter::Column.new("title", "Hello", Type::Text.new)
|
56
|
-
end
|
57
|
-
|
58
|
-
text_column = MysqlAdapter::Column.new("title", nil, Type::Text.new)
|
59
|
-
assert_equal nil, text_column.default
|
60
|
-
|
61
|
-
not_null_text_column = MysqlAdapter::Column.new("title", nil, Type::Text.new, "text", false)
|
62
|
-
assert_equal "", not_null_text_column.default
|
63
|
-
end
|
64
|
-
|
65
|
-
def test_has_default_should_return_false_for_blob_and_text_data_types
|
66
|
-
blob_column = MysqlAdapter::Column.new("title", nil, Type::Binary.new, "blob")
|
67
|
-
assert !blob_column.has_default?
|
68
|
-
|
69
|
-
text_column = MysqlAdapter::Column.new("title", nil, Type::Text.new)
|
70
|
-
assert !text_column.has_default?
|
71
|
-
end
|
72
|
-
end
|
73
|
-
|
74
|
-
if current_adapter?(:Mysql2Adapter)
|
75
|
-
def test_should_set_default_for_mysql_binary_data_types
|
76
|
-
binary_column = Mysql2Adapter::Column.new("title", "a", Type::Binary.new, "binary(1)")
|
77
|
-
assert_equal "a", binary_column.default
|
78
|
-
|
79
|
-
varbinary_column = Mysql2Adapter::Column.new("title", "a", Type::Binary.new, "varbinary(1)")
|
80
|
-
assert_equal "a", varbinary_column.default
|
81
|
-
end
|
82
|
-
|
83
|
-
def test_should_not_set_default_for_blob_and_text_data_types
|
84
|
-
assert_raise ArgumentError do
|
85
|
-
Mysql2Adapter::Column.new("title", "a", Type::Binary.new, "blob")
|
86
|
-
end
|
87
|
-
|
88
|
-
assert_raise ArgumentError do
|
89
|
-
Mysql2Adapter::Column.new("title", "Hello", Type::Text.new)
|
90
|
-
end
|
91
|
-
|
92
|
-
text_column = Mysql2Adapter::Column.new("title", nil, Type::Text.new)
|
93
|
-
assert_equal nil, text_column.default
|
94
|
-
|
95
|
-
not_null_text_column = Mysql2Adapter::Column.new("title", nil, Type::Text.new, "text", false)
|
96
|
-
assert_equal "", not_null_text_column.default
|
97
|
-
end
|
98
|
-
|
99
|
-
def test_has_default_should_return_false_for_blob_and_text_data_types
|
100
|
-
blob_column = Mysql2Adapter::Column.new("title", nil, Type::Binary.new, "blob")
|
101
|
-
assert !blob_column.has_default?
|
102
|
-
|
103
|
-
text_column = Mysql2Adapter::Column.new("title", nil, Type::Text.new)
|
104
|
-
assert !text_column.has_default?
|
105
|
-
end
|
106
|
-
end
|
107
|
-
|
108
|
-
if current_adapter?(:PostgreSQLAdapter)
|
109
|
-
def test_bigint_column_should_map_to_integer
|
110
|
-
oid = PostgreSQLAdapter::OID::Integer.new
|
111
|
-
bigint_column = PostgreSQLColumn.new('number', nil, oid, "bigint")
|
112
|
-
assert_equal :integer, bigint_column.type
|
113
|
-
end
|
114
|
-
|
115
|
-
def test_smallint_column_should_map_to_integer
|
116
|
-
oid = PostgreSQLAdapter::OID::Integer.new
|
117
|
-
smallint_column = PostgreSQLColumn.new('number', nil, oid, "smallint")
|
118
|
-
assert_equal :integer, smallint_column.type
|
119
|
-
end
|
120
|
-
end
|
121
|
-
end
|
122
|
-
end
|
123
|
-
end
|
1
|
+
require "cases/helper"
|
2
|
+
|
3
|
+
module ActiveRecord
|
4
|
+
module ConnectionAdapters
|
5
|
+
class ColumnDefinitionTest < ActiveRecord::TestCase
|
6
|
+
def setup
|
7
|
+
@adapter = AbstractAdapter.new(nil)
|
8
|
+
def @adapter.native_database_types
|
9
|
+
{:string => "varchar"}
|
10
|
+
end
|
11
|
+
@viz = @adapter.schema_creation
|
12
|
+
end
|
13
|
+
|
14
|
+
# Avoid column definitions in create table statements like:
|
15
|
+
# `title` varchar(255) DEFAULT NULL
|
16
|
+
def test_should_not_include_default_clause_when_default_is_null
|
17
|
+
column = Column.new("title", nil, Type::String.new(limit: 20))
|
18
|
+
column_def = ColumnDefinition.new(
|
19
|
+
column.name, "string",
|
20
|
+
column.limit, column.precision, column.scale, column.default, column.null)
|
21
|
+
assert_equal "title varchar(20)", @viz.accept(column_def)
|
22
|
+
end
|
23
|
+
|
24
|
+
def test_should_include_default_clause_when_default_is_present
|
25
|
+
column = Column.new("title", "Hello", Type::String.new(limit: 20))
|
26
|
+
column_def = ColumnDefinition.new(
|
27
|
+
column.name, "string",
|
28
|
+
column.limit, column.precision, column.scale, column.default, column.null)
|
29
|
+
assert_equal %Q{title varchar(20) DEFAULT 'Hello'}, @viz.accept(column_def)
|
30
|
+
end
|
31
|
+
|
32
|
+
def test_should_specify_not_null_if_null_option_is_false
|
33
|
+
column = Column.new("title", "Hello", Type::String.new(limit: 20), "varchar(20)", false)
|
34
|
+
column_def = ColumnDefinition.new(
|
35
|
+
column.name, "string",
|
36
|
+
column.limit, column.precision, column.scale, column.default, column.null)
|
37
|
+
assert_equal %Q{title varchar(20) DEFAULT 'Hello' NOT NULL}, @viz.accept(column_def)
|
38
|
+
end
|
39
|
+
|
40
|
+
if current_adapter?(:MysqlAdapter)
|
41
|
+
def test_should_set_default_for_mysql_binary_data_types
|
42
|
+
binary_column = MysqlAdapter::Column.new("title", "a", Type::Binary.new, "binary(1)")
|
43
|
+
assert_equal "a", binary_column.default
|
44
|
+
|
45
|
+
varbinary_column = MysqlAdapter::Column.new("title", "a", Type::Binary.new, "varbinary(1)")
|
46
|
+
assert_equal "a", varbinary_column.default
|
47
|
+
end
|
48
|
+
|
49
|
+
def test_should_not_set_default_for_blob_and_text_data_types
|
50
|
+
assert_raise ArgumentError do
|
51
|
+
MysqlAdapter::Column.new("title", "a", Type::Binary.new, "blob")
|
52
|
+
end
|
53
|
+
|
54
|
+
assert_raise ArgumentError do
|
55
|
+
MysqlAdapter::Column.new("title", "Hello", Type::Text.new)
|
56
|
+
end
|
57
|
+
|
58
|
+
text_column = MysqlAdapter::Column.new("title", nil, Type::Text.new)
|
59
|
+
assert_equal nil, text_column.default
|
60
|
+
|
61
|
+
not_null_text_column = MysqlAdapter::Column.new("title", nil, Type::Text.new, "text", false)
|
62
|
+
assert_equal "", not_null_text_column.default
|
63
|
+
end
|
64
|
+
|
65
|
+
def test_has_default_should_return_false_for_blob_and_text_data_types
|
66
|
+
blob_column = MysqlAdapter::Column.new("title", nil, Type::Binary.new, "blob")
|
67
|
+
assert !blob_column.has_default?
|
68
|
+
|
69
|
+
text_column = MysqlAdapter::Column.new("title", nil, Type::Text.new)
|
70
|
+
assert !text_column.has_default?
|
71
|
+
end
|
72
|
+
end
|
73
|
+
|
74
|
+
if current_adapter?(:Mysql2Adapter)
|
75
|
+
def test_should_set_default_for_mysql_binary_data_types
|
76
|
+
binary_column = Mysql2Adapter::Column.new("title", "a", Type::Binary.new, "binary(1)")
|
77
|
+
assert_equal "a", binary_column.default
|
78
|
+
|
79
|
+
varbinary_column = Mysql2Adapter::Column.new("title", "a", Type::Binary.new, "varbinary(1)")
|
80
|
+
assert_equal "a", varbinary_column.default
|
81
|
+
end
|
82
|
+
|
83
|
+
def test_should_not_set_default_for_blob_and_text_data_types
|
84
|
+
assert_raise ArgumentError do
|
85
|
+
Mysql2Adapter::Column.new("title", "a", Type::Binary.new, "blob")
|
86
|
+
end
|
87
|
+
|
88
|
+
assert_raise ArgumentError do
|
89
|
+
Mysql2Adapter::Column.new("title", "Hello", Type::Text.new)
|
90
|
+
end
|
91
|
+
|
92
|
+
text_column = Mysql2Adapter::Column.new("title", nil, Type::Text.new)
|
93
|
+
assert_equal nil, text_column.default
|
94
|
+
|
95
|
+
not_null_text_column = Mysql2Adapter::Column.new("title", nil, Type::Text.new, "text", false)
|
96
|
+
assert_equal "", not_null_text_column.default
|
97
|
+
end
|
98
|
+
|
99
|
+
def test_has_default_should_return_false_for_blob_and_text_data_types
|
100
|
+
blob_column = Mysql2Adapter::Column.new("title", nil, Type::Binary.new, "blob")
|
101
|
+
assert !blob_column.has_default?
|
102
|
+
|
103
|
+
text_column = Mysql2Adapter::Column.new("title", nil, Type::Text.new)
|
104
|
+
assert !text_column.has_default?
|
105
|
+
end
|
106
|
+
end
|
107
|
+
|
108
|
+
if current_adapter?(:PostgreSQLAdapter)
|
109
|
+
def test_bigint_column_should_map_to_integer
|
110
|
+
oid = PostgreSQLAdapter::OID::Integer.new
|
111
|
+
bigint_column = PostgreSQLColumn.new('number', nil, oid, "bigint")
|
112
|
+
assert_equal :integer, bigint_column.type
|
113
|
+
end
|
114
|
+
|
115
|
+
def test_smallint_column_should_map_to_integer
|
116
|
+
oid = PostgreSQLAdapter::OID::Integer.new
|
117
|
+
smallint_column = PostgreSQLColumn.new('number', nil, oid, "smallint")
|
118
|
+
assert_equal :integer, smallint_column.type
|
119
|
+
end
|
120
|
+
end
|
121
|
+
end
|
122
|
+
end
|
123
|
+
end
|