Esempio n. 1
0
 def fields_with_expected_tokens() -> FieldsWithTokens:
     fields = [
         FieldFactory(name="name_1",
                      value=Argument(cli_names=True,
                                     env_name=False,
                                     help="help 1")),
         FieldFactory(name="name_2",
                      value=Argument(cli_names=False,
                                     env_name=True,
                                     help="help 2")),
         FieldFactory(name="name_3",
                      value=Argument(cli_names=True,
                                     env_name=True,
                                     help="help 3")),
         FieldFactory(name="name_4",
                      value=Argument(cli_names=["-a", "--arg"],
                                     env_name="ARG",
                                     help="help 4")),
     ]
     expected_tokens = [
         ["--name-1", "help 1"],
         ["NAME_2", "help 2"],
         ["--name-3", "NAME_3", "help 3"],
         ["-a", "--arg", "ARG", "help 4"],
     ]
     return fields, expected_tokens
Esempio n. 2
0
    def test_turned_off_arguments_arent_gathered_from_command_line() -> None:
        fields_data = [
            FieldFactory(name="name", value=Argument(cli_names=False))
        ]
        cli_args = ["--name", "abcd"]

        with patch_cli_args(cli_args), pytest.raises(SystemExit):
            get_cmd_line_args(fields_data)
Esempio n. 3
0
    def test_field_type_is_correctly_casted(type_hint: Any, raw_arg: str,
                                            parsed_arg: Any) -> None:
        field = FieldFactory(type=type_hint)
        args = {field.name: raw_arg}

        actual = cast_args_to_fields_types(args, [field])

        expected = {field.name: parsed_arg}
        assert actual == expected
Esempio n. 4
0
    def test_turned_off_arguments_arent_gathered_from_env() -> None:
        fields_data = [
            FieldFactory(name="name", value=Argument(env_name=False))
        ]

        with patch_env_args(NAME="abcd"):
            parsed_args = get_env_args(fields_data)

        assert parsed_args == {}
Esempio n. 5
0
 def test_returns_none_if_env_name_is_turned_off() -> None:
     field_data = FieldFactory(value=Argument(env_name=False))
     assert field_data.env_name is None
Esempio n. 6
0
 def test_generates_name_based_on_field() -> None:
     field_data = FieldFactory(name="field_name",
                               value=Argument(env_name=True))
     assert field_data.env_name == "FIELD_NAME"
Esempio n. 7
0
        def test_returns_custom_name() -> None:
            expected_name = "ARG"
            field_data = FieldFactory(value=Argument(env_name=expected_name))

            assert field_data.env_name == expected_name
Esempio n. 8
0
 def test_returns_none_if_cli_names_are_turned_off() -> None:
     field_data = FieldFactory(value=Argument(cli_names=False))
     assert field_data.cli_names is None
Esempio n. 9
0
 def test_generates_name_based_on_field() -> None:
     field_data = FieldFactory(name="field_name",
                               value=Argument(cli_names=True))
     assert field_data.cli_names == ["--field-name"]
Esempio n. 10
0
        def test_returns_custom_names() -> None:
            expected_cli_names = ["-a", "--arg"]
            field_data = FieldFactory(value=Argument(
                cli_names=expected_cli_names))

            assert field_data.cli_names == expected_cli_names