aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/migration
Commit message (Collapse)AuthorAgeFilesLines
* fix `rake test_sqlite3_mem`.Yves Senn2014-05-201-0/+1
| | | | | | | | | | | | | | | | | | | | While running Sqlite3 memory tests I encountered the following error: ``` Finished in 69.416366s, 58.0267 runs/s, 162.3681 assertions/s. 1) Error: ActiveRecord::Migration::ChangeSchemaTest#test_add_column_with_timestamp_type: NoMethodError: undefined method `type' for nil:NilClass /Users/senny/Projects/rails/activerecord/test/cases/migration/change_schema_test.rb:244:in `test_add_column_with_timestamp_type' 4028 runs, 11271 assertions, 0 failures, 1 errors, 1 skips ``` This was because the table `testings` was used in multiple test-cases. This resulted in a wrongly cached schema on `ActiveRecord::Base.schema_chae`. /cc @zuhao
* Remove :timestamp column typeSean Griffin2014-05-191-0/+17
| | | | | | | | | | | | The `:timestamp` type for columns is unused. All database adapters treat them as the same database type. All code in `ActiveRecord` which changes its behavior based on the column's type acts the same in both cases. However, when the type is passed to code that checks for the `:datetime` type, but not `:timestamp` (such as XML serialization), the result is unexpected behavior. Existing schema definitions will continue to work, and the `timestamp` type is transparently aliased to `datetime`.
* Make `:index` in migrations work with all column typesMarc Schütz2014-05-181-0/+10
|
* Remove dead test code for unsupported adaptersSean Griffin2014-05-174-76/+45
|
* test, show current adapter behavior for `add_column limit: nil`.Yves Senn2014-04-041-0/+8
| | | | | | This is an illustration of https://github.com/rails/rails/pull/13435#issuecomment-33789752 Removing the limit from the PG and SQLite adapter solves the issue. MySQL is still affected by the issue.
* Use teardown helper method.Guo Xiang Tan2014-03-147-13/+7
| | | | | | | | Follow-Up to https://github.com/rails/rails/pull/14348 Ensure that SQLCounter.clear_log is called after each test. This is a step to prevent side effects when running tests. This will allow us to run them in random order.
* Drop the correct index after reverting a migrationHubert Dąbrowski2014-02-131-3/+3
| | | | | | Previously when reverting a migration which added a named index it would instead drop a corresponding index with matching columns but without a name.
* make `change_column_null` reversible. Closes #13576.Yves Senn2014-01-081-0/+16
| | | | Closes #13623.
* Make change_table use object of current database adapterNishant Modak2014-01-071-1/+2
| | | | | | | | | - Earlier, change_table was creating database-agnostic object. - After this change, it will create correct object based on current database adapter. - This will ensure that create_table and change_table will get same objects. - This makes update_table_definition method public and nodoc. - Fixes #13577 and #13503
* Change all `MiniTest` to `Minitest` since, `MiniTest` namespace has been ↵Vipul A M2013-12-181-1/+1
| | | | | | renamed to `Minitest` Ref: https://github.com/seattlerb/minitest/blob/master/History.txt
* Remove more skipRafael Mendonça França2013-11-082-9/+7
|
* Don't skip tests if we don't need to.Rafael Mendonça França2013-11-086-132/+119
| | | | | | | We can conditional define the tests depending on the adapter or connection. Lets keep the skip for fail tests that need to be fixed.
* Make 'enable_extension' revertibleEric Tipton2013-08-101-0/+10
| | | | | If 'enable_extension' is used in a migration's 'change' method, use 'disable_extension' on down migration (and vice-versa).
* removes the obsolete private method column_methods_hash [Closes #11406]Xavier Noria2013-07-161-15/+6
|
* Removed unused test for DateTime.local_offsetArun Agrawal2013-07-071-20/+0
| | | | see discussion here #11274
* Fixes #10432 add_column not creating array columns in PostgreSQLAdam Anderson2013-06-041-0/+29
| | | | | | When then PostgreSQL visitor was [added](https://github.com/rails/rails/commit/6b7fdf3bf3675a14eae74acc5241089308153a34) `add_column` was no longer receiving the column options directly. This caused the options to be lost along the way.
* Remove behavior that deals with a string as third argument of `add_index`, ↵kennyj2013-06-021-10/+0
| | | | | | because this was deprecated. Some testcases is failed, so I replaced nil to empty hash in add_reference.
* Fix class and method name typosVipul A M2013-05-121-1/+1
|
* anual_salary => annual_salaryVipul A M2013-03-281-3/+3
|
* respect auto_increment in rename_column for mysqlVipul A M2013-03-271-0/+7
|
* transactions can be turned off per Migration.Yves Senn2013-03-051-1/+1
| | | | | | | | | | | Closes #9483. There are SQL Queries that can't run inside a transaction. Since the Migrator used to wrap all Migrations inside a transaction there was no way to run these queries within a migration. This patch adds `self.disable_ddl_transaction!` to the migration to turn transactions off when necessary.
* Oracle enhanced adapter shortens its name if it is longer than 30 bytesYasuo Honda2013-02-241-2/+10
| | | | because of Oracle database index length spec.
* also rename the test-case class inside columns_test.rbYves Senn2013-02-241-1/+1
|
* rename_column_test.rb -> columns_test.rb to reveal intent.Yves Senn2013-02-231-0/+0
| | | | | | | | I renamed the test to better communicate it's intention. Since it also tests: - add_column - remove_column - change_column There is no reason to call it rename_column_test.
* forwardport #9388 rename/remove column preserves custom PK.Yves Senn2013-02-231-1/+15
|
* Fix warningRafael Mendonça França2013-02-211-1/+1
|
* also rename indexes when a table or column is renamedYves Senn2013-02-202-3/+34
| | | | When a table or a column is renamed related indexes kept their name. This will lead to confusing names. This patch renames related indexes when a column or a table is renamed. Only indexes with names generated by rails will be renamed. Indexes with custom names will not be renamed.
* reserve index name chars for internal rails operationsYves Senn2013-02-202-5/+34
| | | | | | | | | | | Some adapter (SQLite3) need to perform renaming operations to support the rails DDL. These rename prefixes operate with prefixes. When an index name already uses up the full space provieded by `index_name_length` these internal operations will fail. This patch introduces `allowed_index_name_length` which respects the amount of characters used for internal operations. It will always be <= `index_name_length` and every adapter can define how many characters need to be reserved.
* Remove extra sort from testVipul A M2013-01-211-3/+3
| | | | Cleanup change_schema tests to remove extra sorts on columns.
* Standardize the use of current_adapter?Rafael Mendonça França2013-01-011-2/+2
|
* Address a failure test_remove_column_with_multi_column_index with Oracle ↵Yasuo Honda2013-01-021-2/+3
| | | | | | | database Not only PostgreSQL, Oracle database adapter drops the multi-column index if any of the indexed columns dropped by remove_column.
* Alias refute methods to assert_not and perfer assert_not on testsRafael Mendonça França2012-12-315-26/+26
|
* Add active_support/testing/autorunRafael Mendonça França2012-12-311-0/+1
| | | | | minitest/autorun load minitest/spec polluting the global namespace with the DSL that we don't want on Rails
* work off FIXME comments in AR rename_column_test.rbYves Senn2012-12-281-9/+22
| | | | | | There were a couple of tests, which had FIXME comments in palce of assertions. I replaced these FIXME comments with actual assertions to get more feedback from our test suite.
* Remove duplicated methods in command recorder and duplicated test nameCarlos Antonio da Silva2012-12-211-1/+1
|
* Make execute, change_column and remove_columns methods actually irreversibleMarc-Andre Lafortune2012-12-211-1/+7
| | | | [#8267]
* Make change_table reversible when possible [#8267]Marc-Andre Lafortune2012-12-211-0/+20
|
* Factorize methods that are easily reversible [#8267]Marc-Andre Lafortune2012-12-211-8/+8
|
* Make remove_index reversible [#8267]Marc-Andre Lafortune2012-12-211-3/+24
|
* Differentiate between remove_column and remove_columns. Make remove_column ↵Marc-Andre Lafortune2012-12-212-3/+14
| | | | | | reversible. [#8267]
* Make drop_table reversible [#8267]Marc-Andre Lafortune2012-12-211-11/+24
|
* Add drop_join_table [#8267]Marc-Andre Lafortune2012-12-212-4/+52
|
* Allow reverting of migration commands with Migration#revert [#8267]Marc-Andre Lafortune2012-12-211-48/+51
|
* Simplify change_table and avoid duplicated logicMarc-Andre Lafortune2012-12-211-26/+5
|
* Keep index names when using with sqlite3Yves Senn2012-12-191-0/+10
|
* Move to the schema-migrations-metadata branch.Jeremy Kemper2012-12-092-2/+24
| | | | | | | | | | | | | | | | | | | | | | | | Pending work on graceful app upgrades. Revert "Merge pull request #8439 from joshsusser/fixes" This reverts commit ce8ac39338f86388e70356b3a470b3ea443802ae, reversing changes made to b0e7b6f67c984d4b1502e801781ed75fad681633. Revert "Merge pull request #8431 from joshsusser/schemadump" This reverts commit 036d3e1c2b65c4b8cbd23de2e20ad67b9b756182, reversing changes made to 0c692f4d121792117b6a71e5ed590a31c3b9d12e. Revert "Merge branch 'joshsusser-master' into merge" This reverts commit 0c692f4d121792117b6a71e5ed590a31c3b9d12e, reversing changes made to 2e299fca715b083a60222a85e48f9d3b8dd8ce93. Conflicts: activerecord/CHANGELOG.md activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb activerecord/test/cases/schema_dumper_test.rb
* Remove method redefined warningsCarlos Antonio da Silva2012-12-061-1/+1
|
* Add metadata to schema_migrationsJosh Susser2012-12-012-25/+3
| | | | | migrated_at: timestamp when migration run fingerprint: md5 hash of migration source name: filename without version or extension
* Move migration test together with other join table testsCarlos Antonio da Silva2012-11-211-0/+6
|
* Initialize accessors to remove some warnings in Ruby 2.0Carlos Antonio da Silva2012-11-191-4/+2
|