def test_mk(mocker): obj = {} # mock, doesn't matter cfg = config.mk('https://api', 'ABCDEF') result = meta.mk(obj, config) assert type(result) is meta.Meta
def test_mk_maybe_none(mocker): obj = {} # mock cfg = config.mk('https://api', 'ABCDEF') result = meta.mk_maybe(obj, config) assert result is None
def test_mk_single(mocker): obj = {} # mock cfg = config.mk('https://api', 'ABCDEF') result = errors.mk_single(obj, cfg) assert type(result) is errors.Error
def test_mk(mocker): obj = [{}, {}, {}] # mock cfg = config.mk('https://api', 'ABCDEF') result = errors.mk(obj, cfg) assert type(result) is errors.Errors
def test_mk_maybe(mocker): obj = {'meta': {}} # mock cfg = config.mk('https://api', 'ABCDEF') result = meta.mk_maybe(obj, config) assert type(result) is meta.Meta
def test_mk(mocker): obj = { 'type': 'foo', 'id': '1234' } # mock cfg = config.mk('https://api', 'ABCDEF') result = resource_identifier.mk(obj, cfg) assert type(result) is resource_identifier.ResourceId
def test_mk(mocker): obj = {} cfg = config.mk('https://api', 'ABCDEF') result = links.mk(obj, cfg) assert type(result) is links.Links
def test_mk_maybe_dict_attrs_none(mocker): obj = {} # mock cfg = config.mk('https://api', 'ABCDEF') result = resource.mk_maybe_dict_attrs(obj, cfg) assert result is None
def test_mk(mocker): obj = {} # mock, doesn't matter cfg = config.mk('https://api', 'ABCDEF') result = pagination.mk(obj, config) assert type(result) is pagination.Pagination
def test_mk_maybe_dict_attrs(mocker): obj = { 'attributes': {} } # mock cfg = config.mk('https://api', 'ABCDEF') result = resource.mk_maybe_dict_attrs(obj, cfg) assert type(result) is dict
def test_mk_to_one_links(mocker): obj = {'self': 'https://foo', 'related': 'https://bar'} cfg = config.mk('https://api', 'ABCDEF') result = relationships.mk_to_one_links(obj, cfg) assert type(result) == relationships.ToOneLinks assert result.maybe_self == 'https://foo' assert result.maybe_related == 'https://bar'
def test_mk_single_data_on_insanity(mocker): obj = 1 # mock, insane value cfg = config.mk('https://api', 'ABCDEF') mocker.patch('furrycorn.model.common.resource_identifier.mk') with pytest.raises(RuntimeError): relationships.mk_single_data(obj, cfg) assert resource_identifier.mk.call_count == 0
def test_mk_maybe_jsonapi_on_none(mocker): obj = {} # mock, no 'jsonapi' cfg = config.mk('https://api', 'ABCDEF') mocker.patch('furrycorn.model.jsonapi.mk') result = model.mk_maybe_jsonapi(obj, config) assert jsonapi.mk.call_count == 0 assert result is None
def test_mk(mocker): obj = [{}, {}, {}] # mock cfg = config.mk('https://api', 'ABCDEF') mocker.patch('furrycorn.model.included.mk_single') result = included.mk(obj, cfg) assert included.mk_single.call_count == 3 assert type(result) is included.Included
def test_mk_maybe_included_on_none(mocker): obj = {} # mock, no 'included' cfg = config.mk('https://api', 'ABCDEF') mocker.patch('furrycorn.model.included.mk') result = model.mk_maybe_included(obj, config) assert included.mk.call_count == 0 assert result is None
def test_mk_single_maybe_data_on_none(mocker): obj = {} # mock, no 'data' cfg = config.mk('https://api', 'ABCDEF') mocker.patch('furrycorn.model.common.relationships.mk_single_data') result = relationships.mk_single_maybe_data(obj, cfg) assert relationships.mk_single_data.call_count == 0 assert result is None
def test_mk_maybe_links_none(mocker): obj = {} # mock cfg = config.mk('https://api', 'ABCDEF') mocker.patch('furrycorn.model.common.resource.mk_links') result = resource.mk_maybe_links(obj, cfg) assert resource.mk_links.call_count == 0 assert result is None
def test_mk_entries(mocker): obj = [ {}, {}, {} ] # mock, need 3 cfg = config.mk('https://api', 'ABCDEF') mocker.patch('furrycorn.model.data.mk_entry') result = data.mk_entries(obj, config) assert data.mk_entry.call_count == 3 assert type(result) is data.Entries
def test_mk_maybe_links_on_none(mocker): obj = {} # mock, no 'links' cfg = config.mk('https://api', 'ABCDEF') mocker.patch('furrycorn.model.links.mk') result = model.mk_maybe_links(obj, config) assert links.mk.call_count == 0 assert result is None
def test_mk_maybe_jsonapi(mocker): """Not yet implemented.""" obj = { 'jsonapi': 'fake' } # mock, with 'errors' cfg = config.mk('https://api', 'ABCDEF') # fake_jsonapi = jsonapi.Errors([]) # mocker.patch('furrycorn.model.errors.mk', return_value=fake_errors, # autospec=True) result = model.mk_maybe_jsonapi(obj, config)
def test_mk_single_data_on_none(mocker): obj = None # mock, null resource id cfg = config.mk('https://api', 'ABCDEF') mocker.patch('furrycorn.model.common.resource_identifier.mk') result = relationships.mk_single_data(obj, cfg) assert resource_identifier.mk.call_count == 0 assert type(result.either_to_many_or_to_one) is relationships.ToOne assert result.either_to_many_or_to_one.maybe_resource_id is None
def test_mk_maybe_relationships(mocker): obj = { 'relationships': {} } # mock cfg = config.mk('https://api', 'ABCDEF') fake_relationships = relationships.Relationships({}) mocker.patch('furrycorn.model.common.relationships.mk', return_value=fake_relationships, autospec=True) result = resource.mk_maybe_relationships(obj, cfg) assert relationships.mk.call_count == 1 assert type(result) is relationships.Relationships
def test_mk_maybe_data(mocker): obj = { 'data': 'fake' } # mock, with 'data' cfg = config.mk('https://api', 'ABCDEF') fake_data = data.Data(None) mocker.patch('furrycorn.model.data.mk', return_value=fake_data, autospec=True) result = model.mk_maybe_data(obj, config) assert data.mk.call_count == 1 assert type(result) is data.Data
def test_mk_maybe_links(mocker): obj = { 'links': {} } # mock cfg = config.mk('https://api', 'ABCDEF') fake_links = resource.Links() mocker.patch('furrycorn.model.common.resource.mk_links', return_value=fake_links, autospec=True) result = resource.mk_maybe_links(obj, cfg) assert resource.mk_links.call_count == 1 assert type(result) is resource.Links
def test_mk_maybe_included(mocker): obj = { 'included': 'fake' } # mock, with 'included' cfg = config.mk('https://api', 'ABCDEF') fake_included = included.Included([]) mocker.patch('furrycorn.model.included.mk',return_value=fake_included, autospec=True) result = model.mk_maybe_included(obj, config) assert included.mk.call_count == 1 assert type(result) is included.Included
def test_mk_maybe_links(mocker): obj = { 'links': 'fake' } # mock, with 'links' cfg = config.mk('https://api', 'ABCDEF') fake_links = links.Links([]) mocker.patch('furrycorn.model.links.mk', return_value=fake_links, autospec=True) result = model.mk_maybe_links(obj, config) assert links.mk.call_count == 1 assert type(result) is links.Links
def test_mk_single_maybe_data(mocker): obj = {'data': 'fake'} # mock, with 'data' cfg = config.mk('https://api', 'ABCDEF') fake_data = relationships.Data(relationships.ToOne(None)) mocker.patch('furrycorn.model.common.relationships.mk_single_data', return_value=fake_data, autospec=True) result = relationships.mk_single_maybe_data(obj, cfg) assert relationships.mk_single_data.call_count == 1 assert type(result) is relationships.Data
def test_mk_on_none(mocker): obj = None # mock cfg = config.mk('https://api', 'ABCDEF') mocker.patch('furrycorn.model.data.mk_entries') mocker.patch('furrycorn.model.data.mk_entry') result = data.mk(obj, config) assert data.mk_entries.call_count == 0 assert data.mk_entry.call_count == 0 assert type(result) is data.Data assert result.either_entries_or_maybe_entry is None
def test_mk_on_object(mocker): obj = {} # mock cfg = config.mk('https://api', 'ABCDEF') fake_entry = data.Entry(resource_identifier.ResourceId('type', '1234')) mocker.patch('furrycorn.model.data.mk_entry', return_value=fake_entry, autospec=True) result = data.mk(obj, config) assert data.mk_entry.call_count == 1 assert type(result) is data.Data assert type(result.either_entries_or_maybe_entry) is data.Entry
def test_mk_on_list(mocker): obj = [] # mock cfg = config.mk('https://api', 'ABCDEF') fake_entries = data.Entries([]) mocker.patch('furrycorn.model.data.mk_entries', return_value=fake_entries, autospec=True) result = data.mk(obj, config) assert data.mk_entries.call_count == 1 assert type(result) is data.Data assert type(result.either_entries_or_maybe_entry) is data.Entries