1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00

Merge pull request #25346 from bogdan/correct-tags-count-in-fixtures

Set counter caches to correct values in fixtures
This commit is contained in:
Rafael França 2017-11-09 15:55:33 -05:00 committed by GitHub
commit 1c6db52412
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 20 additions and 11 deletions

View file

@ -37,7 +37,7 @@ class CascadedEagerLoadingTest < ActiveRecord::TestCase
def test_eager_association_loading_with_hmt_does_not_table_name_collide_when_joining_associations def test_eager_association_loading_with_hmt_does_not_table_name_collide_when_joining_associations
authors = Author.joins(:posts).eager_load(:comments).where(posts: { tags_count: 1 }).to_a authors = Author.joins(:posts).eager_load(:comments).where(posts: { tags_count: 1 }).to_a
assert_equal 1, assert_no_queries { authors.size } assert_equal 3, assert_no_queries { authors.size }
assert_equal 10, assert_no_queries { authors[0].comments.size } assert_equal 10, assert_no_queries { authors[0].comments.size }
end end

View file

@ -831,7 +831,7 @@ class HasManyAssociationsTest < ActiveRecord::TestCase
end end
def test_find_scoped_grouped_having def test_find_scoped_grouped_having
assert_equal 1, authors(:david).popular_grouped_posts.length assert_equal 2, authors(:david).popular_grouped_posts.length
assert_equal 0, authors(:mary).popular_grouped_posts.length assert_equal 0, authors(:mary).popular_grouped_posts.length
end end

View file

@ -927,13 +927,13 @@ class RelationTest < ActiveRecord::TestCase
assert_equal 11, posts.count(:all) assert_equal 11, posts.count(:all)
assert_equal 11, posts.count(:id) assert_equal 11, posts.count(:id)
assert_equal 1, posts.where("comments_count > 1").count assert_equal 3, posts.where("comments_count > 1").count
assert_equal 9, posts.where(comments_count: 0).count assert_equal 6, posts.where(comments_count: 0).count
end end
def test_count_with_block def test_count_with_block
posts = Post.all posts = Post.all
assert_equal 10, posts.count { |p| p.comments_count.even? } assert_equal 8, posts.count { |p| p.comments_count.even? }
end end
def test_count_on_association_relation def test_count_on_association_relation
@ -950,10 +950,10 @@ class RelationTest < ActiveRecord::TestCase
def test_count_with_distinct def test_count_with_distinct
posts = Post.all posts = Post.all
assert_equal 3, posts.distinct(true).count(:comments_count) assert_equal 4, posts.distinct(true).count(:comments_count)
assert_equal 11, posts.distinct(false).count(:comments_count) assert_equal 11, posts.distinct(false).count(:comments_count)
assert_equal 3, posts.distinct(true).select(:comments_count).count assert_equal 4, posts.distinct(true).select(:comments_count).count
assert_equal 11, posts.distinct(false).select(:comments_count).count assert_equal 11, posts.distinct(false).select(:comments_count).count
end end
@ -992,7 +992,7 @@ class RelationTest < ActiveRecord::TestCase
best_posts = posts.where(comments_count: 0) best_posts = posts.where(comments_count: 0)
best_posts.load # force load best_posts.load # force load
assert_no_queries { assert_equal 9, best_posts.size } assert_no_queries { assert_equal 6, best_posts.size }
end end
def test_size_with_limit def test_size_with_limit
@ -1003,7 +1003,7 @@ class RelationTest < ActiveRecord::TestCase
best_posts = posts.where(comments_count: 0) best_posts = posts.where(comments_count: 0)
best_posts.load # force load best_posts.load # force load
assert_no_queries { assert_equal 9, best_posts.size } assert_no_queries { assert_equal 6, best_posts.size }
end end
def test_size_with_zero_limit def test_size_with_zero_limit
@ -1026,7 +1026,7 @@ class RelationTest < ActiveRecord::TestCase
def test_count_complex_chained_relations def test_count_complex_chained_relations
posts = Post.select("comments_count").where("id is not null").group("author_id").where("comments_count > 0") posts = Post.select("comments_count").where("id is not null").group("author_id").where("comments_count > 0")
expected = { 1 => 2 } expected = { 1 => 4, 2 => 1 }
assert_equal expected, posts.count assert_equal expected, posts.count
end end
@ -1781,7 +1781,7 @@ class RelationTest < ActiveRecord::TestCase
end end
test "arel_attribute respects a custom table" do test "arel_attribute respects a custom table" do
assert_equal [posts(:welcome)], custom_post_relation.ranked_by_comments.limit_by(1).to_a assert_equal [posts(:sti_comments)], custom_post_relation.ranked_by_comments.limit_by(1).to_a
end end
test "alias_tracker respects a custom table" do test "alias_tracker respects a custom table" do

View file

@ -5,3 +5,4 @@ second_welcome:
author_id: 1 author_id: 1
title: Welcome to the another weblog title: Welcome to the another weblog
body: It's really nice today body: It's really nice today
comments_count: 1

View file

@ -28,6 +28,7 @@ sti_comments:
author_id: 1 author_id: 1
title: sti comments title: sti comments
body: hello body: hello
comments_count: 5
type: Post type: Post
sti_post_and_comments: sti_post_and_comments:
@ -35,6 +36,7 @@ sti_post_and_comments:
author_id: 1 author_id: 1
title: sti me title: sti me
body: hello body: hello
comments_count: 2
type: StiPost type: StiPost
sti_habtm: sti_habtm:
@ -50,6 +52,8 @@ eager_other:
title: eager loading with OR'd conditions title: eager loading with OR'd conditions
body: hello body: hello
type: Post type: Post
comments_count: 1
tags_count: 3
misc_by_bob: misc_by_bob:
id: 8 id: 8
@ -57,6 +61,7 @@ misc_by_bob:
title: misc post by bob title: misc post by bob
body: hello body: hello
type: Post type: Post
tags_count: 1
misc_by_mary: misc_by_mary:
id: 9 id: 9
@ -64,6 +69,7 @@ misc_by_mary:
title: misc post by mary title: misc post by mary
body: hello body: hello
type: Post type: Post
tags_count: 1
other_by_bob: other_by_bob:
id: 10 id: 10
@ -71,6 +77,7 @@ other_by_bob:
title: other post by bob title: other post by bob
body: hello body: hello
type: Post type: Post
tags_count: 1
other_by_mary: other_by_mary:
id: 11 id: 11
@ -78,3 +85,4 @@ other_by_mary:
title: other post by mary title: other post by mary
body: hello body: hello
type: Post type: Post
tags_count: 1