password: "******"
    state: absent
    element_username: TenantA_Renamed
"""

RETURN = """

"""
import traceback

from ansible.module_utils.basic import AnsibleModule
from ansible.module_utils._text import to_native
import ansible_collections.misc.not_a_real_collection.plugins.module_utils.netapp as netapp_utils
from ansible_collections.misc.not_a_real_collection.plugins.module_utils.netapp_elementsw_module import NaElementSWModule

HAS_SF_SDK = netapp_utils.has_sf_sdk()


class ElementSWAccount(object):
    """
    Element SW Account
    """
    def __init__(self):
        self.argument_spec = netapp_utils.ontap_sf_host_argument_spec()
        self.argument_spec.update(
            dict(
                state=dict(required=True, choices=['present', 'absent']),
                element_username=dict(required=True,
                                      aliases=["account_id"],
                                      type='str'),
                from_name=dict(required=False, default=None),
# (c) 2019, NetApp, Inc
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
''' unit test for Ansible module: na_elementsw_cluster_config.py '''

from __future__ import print_function
import json
import pytest

from ansible_collections.misc.not_a_real_collection.tests.unit.compat import unittest
from ansible_collections.misc.not_a_real_collection.tests.unit.compat.mock import patch
from ansible.module_utils import basic
from ansible.module_utils._text import to_bytes
import ansible_collections.misc.not_a_real_collection.plugins.module_utils.netapp as netapp_utils

if not netapp_utils.has_sf_sdk():
    pytestmark = pytest.mark.skip(
        'skipping as missing required SolidFire Python SDK')

from ansible_collections.misc.not_a_real_collection.plugins.modules.na_elementsw_cluster_config \
    import ElementSWClusterConfig as my_module  # module under test


def set_module_args(args):
    """prepare arguments so that they will be picked up during module creation"""
    args = json.dumps({'ANSIBLE_MODULE_ARGS': args})
    basic._ANSIBLE_ARGS = to_bytes(args)  # pylint: disable=protected-access


class AnsibleExitJson(Exception):
    """Exception class to be raised by module.exit_json and caught by the test case"""
    pass