# Path: mistralclient/api/v2/members.py
# class Member(base.Resource):
# class MemberManager(base.ResourceManager):
#     def create(self, resource_id, resource_type, member_id):
#     def update(self, resource_id, resource_type, member_id='',
#                status='accepted'):
#     def list(self, resource_id, resource_type):
#     def get(self, resource_id, resource_type, member_id=None):
#     def delete(self, resource_id, resource_type, member_id):
# 
# Path: mistralclient/commands/v2/members.py
# class MemberFormatter(base.MistralFormatter):
# class List(base.MistralLister):
# class Get(command.ShowOne):
# class Create(command.ShowOne):
# class Delete(command.Command):
# class Update(command.ShowOne):
#     COLUMNS = [
#         ('resource_id', 'Resource ID'),
#         ('resource_type', 'Resource Type'),
#         ('project_id', 'Resource Owner'),
#         ('member_id', 'Member ID'),
#         ('status', 'Status'),
#         ('created_at', 'Created at'),
#         ('updated_at', 'Updated at')
#     ]
#     def format(member=None, lister=False):
#     def _get_format_function(self):
#     def get_parser(self, parsed_args):
#     def _get_resources(self, parsed_args):
#     def get_parser(self, prog_name):
#     def take_action(self, parsed_args):
#     def get_parser(self, prog_name):
#     def take_action(self, parsed_args):
#     def get_parser(self, prog_name):
#     def take_action(self, parsed_args):
#     def get_parser(self, prog_name):
#     def take_action(self, parsed_args):
# 
# Path: mistralclient/tests/unit/base.py
# class BaseClientTest(base.BaseTestCase):
# class BaseCommandTest(base.BaseTestCase):
#     def setUp(self):
#     def setUp(self):
#     def call(self, command, app_args=(), prog_name=''):


from unittest import mock
from mistralclient.api.v2 import members
from mistralclient.commands.v2 import members as member_cmd
from mistralclient.tests.unit import base
# Copyright 2016 Catalyst IT Limited
#
#    Licensed under the Apache License, Version 2.0 (the "License");
#    you may not use this file except in compliance with the License.
#    You may obtain a copy of the License at
#
#        http://www.apache.org/licenses/LICENSE-2.0
#
#    Unless required by applicable law or agreed to in writing, software
#    distributed under the License is distributed on an "AS IS" BASIS,
#    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#    See the License for the specific language governing permissions and
#    limitations under the License.



MEMBER_DICT = {
    'id': '123',
    'resource_id': '456',
    'resource_type': 'workflow',
    'project_id': '1111',
    'member_id': '2222',
    'status': 'pending',
    'created_at': '1',
    'updated_at': '1'
}

MEMBER = members.Member(mock, MEMBER_DICT)



# Path: mistralclient/api/v2/members.py
# class Member(base.Resource):
# class MemberManager(base.ResourceManager):
#     def create(self, resource_id, resource_type, member_id):
#     def update(self, resource_id, resource_type, member_id='',
#                status='accepted'):
#     def list(self, resource_id, resource_type):
#     def get(self, resource_id, resource_type, member_id=None):
#     def delete(self, resource_id, resource_type, member_id):
# 
# Path: mistralclient/commands/v2/members.py
# class MemberFormatter(base.MistralFormatter):
# class List(base.MistralLister):
# class Get(command.ShowOne):
# class Create(command.ShowOne):
# class Delete(command.Command):
# class Update(command.ShowOne):
#     COLUMNS = [
#         ('resource_id', 'Resource ID'),
#         ('resource_type', 'Resource Type'),
#         ('project_id', 'Resource Owner'),
#         ('member_id', 'Member ID'),
#         ('status', 'Status'),
#         ('created_at', 'Created at'),
#         ('updated_at', 'Updated at')
#     ]
#     def format(member=None, lister=False):
#     def _get_format_function(self):
#     def get_parser(self, parsed_args):
#     def _get_resources(self, parsed_args):
#     def get_parser(self, prog_name):
#     def take_action(self, parsed_args):
#     def get_parser(self, prog_name):
#     def take_action(self, parsed_args):
#     def get_parser(self, prog_name):
#     def take_action(self, parsed_args):
#     def get_parser(self, prog_name):
#     def take_action(self, parsed_args):
# 
# Path: mistralclient/tests/unit/base.py
# class BaseClientTest(base.BaseTestCase):
# class BaseCommandTest(base.BaseTestCase):
#     def setUp(self):
#     def setUp(self):
#     def call(self, command, app_args=(), prog_name=''):


# Path: mistralclient/tests/unit/v2/test_cli_members.py
from unittest import mock
from mistralclient.api.v2 import members
from mistralclient.commands.v2 import members as member_cmd
from mistralclient.tests.unit import base

# Copyright 2016 Catalyst IT Limited
#
#    Licensed under the Apache License, Version 2.0 (the "License");
#    you may not use this file except in compliance with the License.
#    You may obtain a copy of the License at
#
#        http://www.apache.org/licenses/LICENSE-2.0
#
#    Unless required by applicable law or agreed to in writing, software
#    distributed under the License is distributed on an "AS IS" BASIS,
#    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#    See the License for the specific language governing permissions and
#    limitations under the License.



MEMBER_DICT = {
    'id': '123',
    'resource_id': '456',
    'resource_type': 'workflow',
    'project_id': '1111',
    'member_id': '2222',
    'status': 'pending',
    'created_at': '1',
    'updated_at': '1'
}

MEMBER = members.Member(mock, MEMBER_DICT)



class TestCLIWorkflowMembers(base.BaseCommandTest):