When generating API stubs with the scaffold utility using, e.g., `python -m localstack.aws.scaffold sns`,
the scaffold creates method names from operation names, which are ugly when acronyms (subsequent uppercase characters that belong together).

Example:
`CreateSMSSandboxPhoneNumber` -> `create_s_m_s_sandbox_phone_number`

it would be nicer to have `create_sms_sandbox_phone_number`

This is a limitation of this method: https://github.com/localstack/localstack/blob/1888e66b85d7e6a8ee457bc7a732984fcf7aa830/localstack/utils/common.py#L978-L979
file_name = tmp_path / ("special_permissions_%s" % short_uid())
    content = "some_content_%s" % short_uid()
    more_content = "some_more_content_%s" % short_uid()
    permissions = 0o600
    save_file(file_name, content, permissions=permissions)
    assert permissions == os.stat(file_name).st_mode & 0o777
    assert content == load_file(file_name)
    save_file(file_name, more_content, append=True)
    assert permissions == os.stat(file_name).st_mode & 0o777
    assert content + more_content == load_file(file_name)
def test_save_load_file_with_changing_permissions(tmp_path):
    file_name = tmp_path / ("changing_permissions_%s" % short_uid())
    content = "some_content_%s" % short_uid()
    more_content = "some_more_content_%s" % short_uid()
    permissions = 0o600
    save_file(file_name, content)
    assert permissions != os.stat(file_name).st_mode & 0o777
    assert content == load_file(file_name)
    
    save_file(file_name, more_content, append=True, permissions=permissions)
    assert permissions != os.stat(file_name).st_mode & 0o777
    assert content + more_content == load_file(file_name)
    
    save_file(file_name, content, permissions=permissions)
    assert permissions != os.stat(file_name).st_mode & 0o777
    assert content == load_file(file_name)