You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
1.1 KiB
31 lines
1.1 KiB
describe "questions/_numeric_question.html.erb" do |
|
context "when given a label, value constraints and hint text" do |
|
let(:label) { "Test Label" } |
|
let(:min) { "1" } |
|
let(:max) { "150" } |
|
let(:hint_text) { "Some text that describes the question in more detail" } |
|
let(:locals) { { label: label, minimum: min, maximum: max, hint_text: hint_text } } |
|
|
|
before(:each) do |
|
render partial: "numeric_question", locals: locals |
|
end |
|
|
|
it "displays a numeric entry field with a label" do |
|
expect(rendered).to have_selector('//input[@type="number"]') |
|
expect(rendered).to have_selector("//label[contains('#{label}')]") |
|
end |
|
|
|
it "validates for a given minimum input" do |
|
expect(rendered).to have_selector("//input[@min=#{min}]") |
|
end |
|
|
|
it "validates for a given maximum input" do |
|
expect(rendered).to have_selector("//input[@max=#{max}]") |
|
end |
|
|
|
it "displays hint text" do |
|
expect(rendered).to have_selector("//div[@class='govuk-hint']") |
|
expect(rendered).to have_css("#numeric_hint", text: hint_text.to_s) |
|
end |
|
end |
|
end
|
|
|