FIX: Properly fabricate data for topic query specs. (#209)
We were creating PM topics that did not have any posts.
This commit is contained in:
parent
5f7adcc786
commit
5f97e1603d
|
@ -19,9 +19,12 @@ describe TopicQuery do
|
||||||
end
|
end
|
||||||
|
|
||||||
describe '#list_messages_assigned' do
|
describe '#list_messages_assigned' do
|
||||||
fab!(:private_message) { Fabricate(:private_message_topic, user: user) }
|
fab!(:private_message) do
|
||||||
fab!(:topic) { Fabricate(:topic, user: user) }
|
Fabricate(:private_message_post, user: user).topic
|
||||||
fab!(:group_topic) { Fabricate(:topic, user: user) }
|
end
|
||||||
|
|
||||||
|
fab!(:topic) { Fabricate(:post, user: user).topic }
|
||||||
|
fab!(:group_topic) { Fabricate(:post, user: user).topic }
|
||||||
|
|
||||||
before do
|
before do
|
||||||
assign_to(private_message, user, user)
|
assign_to(private_message, user, user)
|
||||||
|
@ -58,9 +61,13 @@ describe TopicQuery do
|
||||||
|
|
||||||
describe '#list_group_topics_assigned' do
|
describe '#list_group_topics_assigned' do
|
||||||
|
|
||||||
fab!(:private_message) { Fabricate(:private_message_topic, user: user) }
|
fab!(:private_message) do
|
||||||
fab!(:topic) { Fabricate(:topic, user: user) }
|
Fabricate(:private_message_post, user: user).topic
|
||||||
fab!(:group_topic) { Fabricate(:topic, user: user) }
|
end
|
||||||
|
|
||||||
|
fab!(:topic) { Fabricate(:post, user: user).topic }
|
||||||
|
|
||||||
|
fab!(:group_topic) { Fabricate(:post, user: user).topic }
|
||||||
|
|
||||||
before do
|
before do
|
||||||
assign_to(private_message, user, user)
|
assign_to(private_message, user, user)
|
||||||
|
@ -91,42 +98,46 @@ describe TopicQuery do
|
||||||
|
|
||||||
describe '#list_private_messages_assigned' do
|
describe '#list_private_messages_assigned' do
|
||||||
let(:user_topic) do
|
let(:user_topic) do
|
||||||
topic = Fabricate(:private_message_topic,
|
topic = create_post(
|
||||||
topic_allowed_users: [
|
user: Fabricate(:user),
|
||||||
Fabricate.build(:topic_allowed_user, user: user),
|
target_usernames: [user.username, user2.username],
|
||||||
Fabricate.build(:topic_allowed_user, user: user2)
|
archetype: Archetype.private_message
|
||||||
],
|
).topic
|
||||||
)
|
|
||||||
|
create_post(topic_id: topic.id, user: user)
|
||||||
|
|
||||||
topic.posts << Fabricate(:post)
|
|
||||||
topic
|
topic
|
||||||
end
|
end
|
||||||
|
|
||||||
let(:assigned_topic) do
|
let(:assigned_topic) do
|
||||||
topic = Fabricate(:private_message_topic,
|
topic = create_post(
|
||||||
topic_allowed_users: [
|
user: Fabricate(:user),
|
||||||
Fabricate.build(:topic_allowed_user, user: user),
|
target_usernames: [user.username, user2.username],
|
||||||
Fabricate.build(:topic_allowed_user, user: user2)
|
archetype: Archetype.private_message
|
||||||
],
|
).topic
|
||||||
)
|
|
||||||
assign_to(topic, user, user)
|
assign_to(topic, user, user)
|
||||||
end
|
end
|
||||||
|
|
||||||
let(:group2) { Fabricate(:group) }
|
let(:group2) do
|
||||||
|
Fabricate(:group, messageable_level: Group::ALIAS_LEVELS[:everyone])
|
||||||
|
end
|
||||||
|
|
||||||
let(:group_assigned_topic) do
|
let(:group_assigned_topic) do
|
||||||
topic = Fabricate(:private_message_topic,
|
topic = create_post(
|
||||||
topic_allowed_users: [],
|
user: user,
|
||||||
topic_allowed_groups: [
|
target_group_names: [assign_allowed_group.name, group2.name],
|
||||||
Fabricate.build(:topic_allowed_group, group: assign_allowed_group),
|
archetype: Archetype.private_message
|
||||||
Fabricate.build(:topic_allowed_group, group: group2)
|
).topic
|
||||||
],
|
|
||||||
)
|
|
||||||
|
|
||||||
assign_to(topic, user, user)
|
assign_to(topic, user, user)
|
||||||
end
|
end
|
||||||
|
|
||||||
before do
|
before do
|
||||||
|
assign_allowed_group.update!(
|
||||||
|
messageable_level: Group::ALIAS_LEVELS[:everyone]
|
||||||
|
)
|
||||||
|
|
||||||
user_topic
|
user_topic
|
||||||
assigned_topic
|
assigned_topic
|
||||||
group_assigned_topic
|
group_assigned_topic
|
||||||
|
@ -207,7 +218,6 @@ describe TopicQuery do
|
||||||
|
|
||||||
def assign_to(topic, user, assignee)
|
def assign_to(topic, user, assignee)
|
||||||
topic.tap do |t|
|
topic.tap do |t|
|
||||||
t.posts << Fabricate(:post)
|
|
||||||
TopicAssigner.new(t, user).assign(assignee)
|
TopicAssigner.new(t, user).assign(assignee)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue