def test_complete_list_of_arguments(): args = CleanArgs('l,p*,d#,s##,n[*]', ['-l', '-p', '999', '-d', '/home/cllamach', '-s', '100.2', '-n', 'Node1,Node2,Node3']) assert args.get_double_value('s') == 100.2 assert args.get_boolean_value('l') assert args.get_integer_value('p') == 999 assert args.get_string_value('d') == '/home/cllamach' assert args.get_string_list_value('n') == ['Node1', 'Node2', 'Node3']
def test_string_invalid_argument(): args = CleanArgs('s#', ['-s', 'Hello']) assert args.get_string_value('d') == ''
def test_string_argument_not_found(): with pytest.raises(ArgsException) as e: args = CleanArgs('s#', ['-s']) args.get_string_value('s') assert str(e.value) == 'Expected string but found None.'
def test_string_argument_format(): args = CleanArgs('s#', ['-s', '/home/cllamach']) assert args.get_string_value('s') == '/home/cllamach'