aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test
Commit message (Collapse)AuthorAgeFilesLines
* let EXPLAIN use a thread locals registry [John J. Wang & Xavier Noria]Xavier Noria2013-04-162-37/+29
| | | | Closes #10198.
* Fix #7619. 0x prefix must be added when assigning hexadecimal string into ↵kennyj2013-04-171-1/+7
| | | | bit column in Postgresql, because solving ambiguity.
* Revert "fixing bit string test"kennyj2013-04-161-3/+3
| | | | | | This reverts commit cdd293cb963b895ff580eb20d10f5d56ecb3d447. Reason: This wasn't properly fix.
* fix for the bytea/binary nil value bugMatt Aimonetti2013-04-141-1/+1
|
* added a test suite for the postgres binary typeMatt Aimonetti2013-04-141-0/+87
| | | | this shows a problem with nil values
* hides the per thread registry instance, and caches singleton methodsXavier Noria2013-04-131-2/+2
| | | | | | | | | | | | Existing code was delegating to the instance with delegate macro calls, or invoking the instance method to reach the object and call its instance methods. But the point is to have a clean class-level interface where the thread local instance is hidden in the implementation. References #11c6973. References #10198.
* Merge pull request #10177 from ↵Carlos Antonio da Silva2013-04-111-1/+1
|\ | | | | | | | | yahonda/test_relation_merging_with_merged_joins_oracle Address ORA-00979: not a GROUP BY expression error
| * Address ORA-00979: not a GROUP BY expression errorYasuo Honda2013-04-111-1/+1
| |
* | cleanup statement cache testVipul A M2013-04-111-4/+4
|/
* Merge pull request #10152 from Noemj/statement_cacheRafael Mendonça França2013-04-101-0/+64
|\ | | | | | | | | | | | | Statement cache Conflicts: activerecord/CHANGELOG.md
| * Added statement cacheNoemj2013-04-101-0/+64
| |
* | Revert "Merge pull request #6226 from gnufied/master"Rafael Mendonça França2013-04-101-32/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 9bf1a0db4acbbf9e8e6f707250269185224e7efe, reversing changes made to fed97091b9546d369a240d10b184793d49247dd3. Conflicts: activerecord/test/cases/transaction_callbacks_test.rb Reason: This fix introduces another issue described at #8937, so we are reverting it to restore the behavior of 3-2-stable. We will fix both issues when we come out with a better solution
* | While merging relations preserve context for joinsJared Armstrong and Neeraj Singh2013-04-101-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #3002. Also see #5494. ``` class Comment < ActiveRecord::Base belongs_to :post end class Author < ActiveRecord::Base has_many :posts end class Post < ActiveRecord::Base belongs_to :author has_many :comments end ``` `Comment.joins(:post).merge(Post.joins(:author).merge(Author.where(:name => "Joe Blogs"))).all` would fail with `ActiveRecord::ConfigurationError: Association named 'author' was not found on Comment`. It is failing because `all` is being called on relation which looks like this after all the merging: `{:joins=>[:post, :author], :where=>[#<Arel::Nodes::Equality: ....}`. In this relation all the context that `Post` was joined with `Author` is lost and hence the error that `author` was not found on `Comment`. Ths solution is to build JoinAssociation when two relations with join information are being merged. And later while building the arel use the previously built `JoinAssociation` record in `JoinDependency#graft` to build the right from clause. Thanks to Jared Armstrong (https://github.com/armstrjare) for most of the work. I ported it to make it compatible with new code base.
* | Changed the ScopeRegistry and the InstrumentationRegistry to use thewangjohn2013-04-091-2/+2
| | | | | | | | PerThreadRegistry module.
* | Grouping thread locals in the ActiveRecord scopes so that thewangjohn2013-04-081-2/+2
| | | | | | | | | | current_scope and ignore_default_scope locals are brought together under a registry object.
* | each to each_value; remove unused varsVipul A M2013-04-071-2/+2
| |
* | Removed space and unused classAnupam Choudhury2013-04-062-2/+1
| |
* | Removed unnecessary classAnupam Choudhury2013-04-061-1/+0
| |
* | Merge pull request #10098 from subwindow/postgres_dump_bigint_defaultRafael Mendonça França2013-04-052-0/+6
|\ \ | | | | | | | | | | | | | | | | | | Correctly parse bigint defaults in PostgreSQL Conflicts: activerecord/CHANGELOG.md
| * | Correctly parse bigint defaults in PostgreSQLErik Peterson2013-04-052-0/+6
| | |
* | | Merge pull request #9996 from mikz/masterJon Leighton2013-04-051-0/+16
|\ \ \ | | | | | | | | Association with inverse_of does not set the parent in association building block
| * | | fix inverse_of association in block of new childMichal Cichra2013-04-011-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes inconsistency when building children of association which has inverse_of set properly. When creating new association object with a block: parent.association.build do |child| child.parent.equal?(parent) # false end So the block the `child.parent` did not point to the same object. But when the object is created it points to same instance: child = parent.association.build child.parent.equal?(parent) # true
* | | | Fix scope chaining + STIJon Leighton2013-04-052-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | See #9869 and #9929. The problem arises from the following example: class Project < ActiveRecord::Base scope :completed, -> { where completed: true } end class MajorProject < Project end When calling: MajorProject.where(tasks_count: 10).completed This expands to: MajorProject.where(tasks_count: 10).scoping { MajorProject.completed } However the lambda for the `completed` scope is defined on Project. This means that when it is called, `self` is Project rather than MajorProject. So it expands to: MajorProject.where(tasks_count: 10).scoping { Project.where(completed: true) } Since the scoping was applied on MajorProject, and not Project, this fails to apply the tasks_count condition. The solution is to make scoping apply across STI classes. I am slightly concerned about the possible side-effects of this, but no tests fail and it seems ok. I guess we'll see.
* | | | failing test for #9869Neeraj Singh2013-04-052-0/+6
| | | |
* | | | Improve `belongs_to touch: true` timestamp testAndrew White2013-04-051-7/+21
| |/ / |/| | | | | | | | | | | | | | Round off time to a whole second value to compensate for databases that don't support fractional timestamps. Also add a assertion to check that the old record is touched when the association is cleared.
* | | Use inspect when writing the foreign key from the reflectionAndrew White2013-04-051-0/+6
| | | | | | | | | | | | | | | | | | If we don't use inspect inside the class_eval block then the foreign key is written without quotes causing us to fetch the foreign key value and not the column name.
* | | has_many through obeys order on through associationNeeraj Singh2013-04-045-3/+20
| | | | | | | | | | | | fixes #10016
* | | Remove duplicated require from AR base testCarlos Antonio da Silva2013-04-031-1/+0
| | |
* | | Add missing require to inheritance testCarlos Antonio da Silva2013-04-032-3/+1
| | |
* | | Merge pull request #9141 from adamgamble/issue-9091David Heinemeier Hansson2013-04-032-0/+30
|\ \ \ | | | | | | | | belongs_to :touch should touch old record when transitioning.
| * | | Modifies belong_to touch callback to touch old associations also #9091Adam Gamble2013-03-141-10/+2
| | | |
| * | | + Add test for auto timestamps update of both old & new parent recordsPikachuEXE2013-03-142-0/+38
| | | |
* | | | Per #9999 revert the revert changing so columns are only tested for empty? ↵Sam2013-04-031-11/+25
| | | | | | | | | | | | | | | | | | | | | | | | as opposed to blank? This is both faster and more correct, added tests to make sure this is not reverted again.
* | | | Merge pull request #9975 from ↵Aaron Patterson2013-04-021-2/+12
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | mmangino/raise_when_attributes_cant_be_unserialized Unserializing YAML attributes can silently fail in development mode
| * | | | Remove all error masking when decoding serialized data fails?Mike Mangino2013-04-021-2/+4
| | | | |
| * | | | Raise an exception when unserialization fails due to a missing classMike Mangino2013-03-281-0/+8
| | | | |
* | | | | Show deprecated messages only when target database adapters definedYasuo Honda2013-04-033-3/+3
| | | | |
* | | | | Fix tiny problem: change method order for consistency and fix wrong method name.kennyj2013-04-031-1/+1
| | | | |
* | | | | Suppress deprecation messages for deprecated database tasks, when executing ↵kennyj2013-04-033-0/+21
| | | | | | | | | | | | | | | | | | | | rails's testcases.
* | | | | Extract Oracle database tasks.kennyj2013-04-031-0/+86
| | | | |
* | | | | Extract Sqlserver database tasks.kennyj2013-04-031-0/+80
| | | | |
* | | | | Extract Firebird database tasks.kennyj2013-04-031-0/+93
| | | | |
* | | | | Merge pull request #10048 from ↵Rafael Mendonça França2013-04-021-17/+13
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | senny/replace_merge_with_relation_calls_in_count_api replace #merge with relation API calls in calculations_test.
| * | | | | replace #merge with relation API calls in calculations_test.Yves Senn2013-04-021-17/+13
| | | | | |
* | | | | | Fix #new with an STI object with complex inheritanceNate Berkopec2013-04-021-0/+4
|/ / / / /
* | | | | Updated the error message for +find+ on an inverse_of associationwangjohn2013-04-011-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | so that it is consistent with the error thrown for +find+ without an inverse_of association.
* | | | | Throwing a RecordNotFound exception when a record is scanned using thewangjohn2013-04-011-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | inverse_of option. I've also refactored the code for raising a RecordNotFound exception when searching for records with ids.
* | | | | fix detect column type of enummasarakki2013-04-014-4/+4
| | | | | | | | | | | | | | | | | | | | enum includes text or blob or ... hooked by wrong regex
* | | | | Fix indent and change "or" usage to "||" in schema dumper testsCarlos Antonio da Silva2013-03-301-5/+5
| | | | |
* | | | | split relation_scoping_test.rb's default scoping tests into another fileTakehiro Adachi2013-03-302-357/+360
| | | | |