Exemplo n.º 1
0
    def test_govuk_input_suffix(self, question):
        question.unit = "%"
        question.unit_position = "after"

        params = govuk_input(question)

        assert params["suffix"] == {"text": "%"}
Exemplo n.º 2
0
    def test_govuk_input_prefix(self, question):
        question.unit = "£"
        question.unit_position = "before"

        params = govuk_input(question)

        assert params["prefix"] == {"text": "£"}
Exemplo n.º 3
0
    def test_govuk_input_asking_for_whole_numbers(self, question):
        """Test that we follow Design System guidance on asking for numbers

        https://design-system.service.gov.uk/components/text-input/#numbers
        """

        question.limits = {"integer_only": True}

        params = govuk_input(question)

        assert params["inputmode"] == "numeric"
        assert params["pattern"] == "[0-9]*"
        assert params["spellcheck"] is False
Exemplo n.º 4
0
    def test_govuk_input_asking_for_decimal_numbers(self, integer_only, question):
        """Test that we follow Design System guidance on asking for numbers

        https://design-system.service.gov.uk/components/text-input/#numbers
        """

        if integer_only is False:
            question.limits = {"integer_only": False}

        params = govuk_input(question)

        assert "inputmode" not in params
        assert params["spellcheck"] is False
Exemplo n.º 5
0
    def test_govuk_input_pattern_includes_prefix_or_suffix(
        self,
        unit,
        unit_position,
        expected_pattern,
        question,
    ):
        question.limits = {"integer_only": True}

        question.unit = unit
        question.unit_position = unit_position

        params = govuk_input(question)

        assert params["pattern"] == expected_pattern
Exemplo n.º 6
0
 def test_govuk_input(self, question, snapshot):
     assert govuk_input(question) == snapshot
Exemplo n.º 7
0
 def test_govuk_input_classes(self, question, snapshot):
     assert govuk_input(question)["classes"] == "app-text-input--height-compatible"
     assert govuk_input(question, classes=["app-input"])["classes"] == "app-input"
Exemplo n.º 8
0
 def test_govuk_input_width(self, question):
     """Number inputs should be a reasonably small width"""
     params = govuk_input(question)
     assert "govuk-input--width-5" in params["classes"]
Exemplo n.º 9
0
    def test_govuk_input_suffix_text_kwarg(self, question):
        params = govuk_input(question, suffix_text="%")

        assert params["suffix"] == {"text": "%"}
Exemplo n.º 10
0
    def test_govuk_input_prefix_text_kwarg(self, question):
        params = govuk_input(question, prefix_text="£")

        assert params["prefix"] == {"text": "£"}