From f535d81877f89effc8ece5fcbc475235f94e489c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javi=20Mart=C3=ADn?= Date: Sat, 28 Sep 2019 01:26:11 +0200 Subject: [PATCH] Simplify creating videos for a poll in specs --- spec/factories/polls.rb | 10 ++++++++-- spec/features/polls/polls_spec.rb | 6 ++---- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/spec/factories/polls.rb b/spec/factories/polls.rb index 17047c353..14a984e13 100644 --- a/spec/factories/polls.rb +++ b/spec/factories/polls.rb @@ -129,16 +129,22 @@ FactoryBot.define do end factory :poll_question_answer, class: "Poll::Question::Answer" do - association :question, factory: :poll_question sequence(:title) { |n| "Answer title #{n}" } sequence(:description) { |n| "Answer description #{n}" } sequence(:given_order) { |n| n } + + transient { poll { association(:poll) } } + + question { association(:poll_question, poll: poll) } end factory :poll_answer_video, class: "Poll::Question::Answer::Video" do - association :answer, factory: :poll_question_answer title { "Sample video title" } url { "https://youtu.be/nhuNb0XtRhQ" } + + transient { poll { association(:poll) } } + + answer { association(:poll_question_answer, poll: poll) } end factory :poll_booth, class: "Poll::Booth" do diff --git a/spec/features/polls/polls_spec.rb b/spec/features/polls/polls_spec.rb index ddb0f42cb..e24ebc692 100644 --- a/spec/features/polls/polls_spec.rb +++ b/spec/features/polls/polls_spec.rb @@ -136,13 +136,11 @@ describe "Polls" do end scenario "Show answers with videos" do - question = create(:poll_question, poll: poll) - answer = create(:poll_question_answer, question: question, title: "Chewbacca") - video = create(:poll_answer_video, answer: answer, title: "Awesome project video", url: "https://www.youtube.com/watch?v=123") + create(:poll_answer_video, poll: poll, title: "Awesome video", url: "youtube.com/watch?v=123") visit poll_path(poll) - expect(page).to have_link("Awesome project video", href: "https://www.youtube.com/watch?v=123") + expect(page).to have_link("Awesome video", href: "youtube.com/watch?v=123") end scenario "Lists questions from proposals as well as regular ones" do