def test_parse_find_output_reads_random_password_as_single_value(): result = ipa_utils.parse_find_output(ipa_output) first = result[0] assert first['Random password'] == [ 'jeZ3Liu,wySy' ]
def test_parse_find_output_handles_values_containing_colons(): result = ipa_utils.parse_find_output(ipa_output) first = result[0] assert first['SSH public key fingerprint'] == [ '83:96:F0:C6:30:65:03:07:D6:50:0E:9C:35:7F:9D:24 aws_ireland (ssh-rsa)' ]
def test_parse_find_output_parses_dict_for_each_item(): result = ipa_utils.parse_find_output(ipa_output) assert len(result) == 2 first = result[0] assert first['Full name'] == ['Administrator'] assert first['Login shell'] == ['/bin/bash'] second = result[1] assert second['Full name'] == ['Alces Flight']
def _handle_new_temporary_password(login, options, result): # Details of user will be output in similar format to find output. item_dicts = ipa_utils.parse_find_output(result) user_dict = item_dicts[0] # First and only item. if 'Random password' not in user_dict: # A new temporary password has not been generated; nothing to handle. return temporary_password = user_dict['Random password'][0] if utils.currently_importing(): utils.set_imported_user_password(login, temporary_password) else: message = 'Generated temporary password for user {}: {}'.format( login, text.bold(temporary_password) ) click.echo(message)
def test_parse_find_output_parses_multiline_values(): result = ipa_utils.parse_find_output(ipa_output) first = result[0] assert first['SSH public key'] == ['ssh-rsa yourkeygoeshere aws_ireland']
def test_parse_find_output_parses_lines_with_multiple_values(): result = ipa_utils.parse_find_output(ipa_output) first = result[0] assert first['Member of groups'] == ['admins', 'trust admins']