require "rails_helper"

RSpec.describe ConditionalQuestionsHelper do
  let(:lettings_log) { FactoryBot.build(:lettings_log) }
  let(:page) { lettings_log.form.get_page("armed_forces") }

  describe "conditional questions for page" do
    let(:conditional_pages) { %w[leftreg] }

    it "returns the question keys of all conditional questions on the given page" do
      expect(conditional_questions_for_page(page)).to eq(conditional_pages)
    end
  end

  describe "find conditional question" do
    let(:question) { page.questions.find { |q| q.id == "armedforces" } }
    let(:answer_value) { 1 }

    it "returns the conditional question for a given answer option" do
      expect(find_conditional_question(page, question, answer_value).id).to eq("leftreg")
    end
  end

  describe "display question key div" do
    let(:conditional_question) { page.questions.find { |q| q.id == "leftreg" } }

    it "returns a non visible div for conditional questions" do
      expect(display_question_key_div(page, conditional_question)).to match("style='display:none;'")
    end

    it "returns a visible div for questions" do
      expect(display_question_key_div(page, page.questions.first)).not_to match("style='display:none;'")
    end
  end
end