def test_dispatch_passes_http_response(dispatch):
    dispatch.return_value = HttpResponse()
    view = BaseTestDataRestView()
    result = view.dispatch(
        create_request(),
        app='rest_test_data',
        model='simple'
    )
    assert_equal(result, dispatch.return_value)
def test_dispatch_jsons_other(dispatch):
    dispatch.return_value = {'test': 'data'}
    view = BaseTestDataRestView()
    result = view.dispatch(
        create_request(),
        app='rest_test_data',
        model='simple'
    )
    assert_is_instance(result, HttpResponse)
    assert_equal(result['Content-Type'], 'application/json')
    assert_equal(result.content, b'{"test": "data"}')
def test_dispatch_wraps_string_result(dispatch):
    dispatch.return_value = 'result!'
    view = BaseTestDataRestView()
    result = view.dispatch(
        create_request(),
        app='rest_test_data',
        model='simple'
    )
    assert_is_instance(result, HttpResponse)
    assert_equal(result['Content-Type'], 'application/json')
    assert_equal(result.content, b'result!')
def test_dispatch_get_object(dispatch, get_object):
    dispatch.return_value = ''
    view = BaseTestDataRestView()
    result = view.dispatch(
        create_request(),
        app='rest_test_data',
        model='simple',
        pk='1'
    )
    get_object.assert_called_once_with(1, model=Simple)
    assert_is_instance(result, HttpResponse)
    assert_equal(dispatch.call_count, 1)
def test_get_data(get_object):
    result = BaseTestDataRestView.get_data({'data': {'test': 1},
                                            'objects': {
                                                'test_2': 'app.model:1',
                                                'test_3': ['app.model:1'],
                                            }})
    get_object.assert_called_with('app.model:1')
    assert_equal(result, {
        'test': 1,
        'test_2': get_object(),
        'test_3': [get_object()]
    })
def test_dispatch_get_object_failure(get_object):
    get_object.side_effect = Exception
    view = BaseTestDataRestView()
    result = view.dispatch(None, app='rest_test_data', model='simple', pk='1')
    get_object.assert_called_once_with(1, model=Simple)
    assert_is_instance(result, HttpResponseNotFound)
def test_dispatch_model_found(dispatch):
    dispatch.return_value = ''
    view = BaseTestDataRestView()
    view.dispatch(create_request(), app='rest_test_data', model='simple')
    assert_equal(view.model, Simple)
    assert_equal(dispatch.call_count, 1)
def test_dispatch_model_not_found():
    view = BaseTestDataRestView()
    result = view.dispatch(None, app='something', model='notfoundmodel')
    assert_is_instance(result, HttpResponseNotFound)
def test_get_object_from_string(get_model):
    BaseTestDataRestView.get_object('app.model:1')
    get_model.assert_called_once_with('app', 'model')
    get_model().objects.get.assert_called_once_with(pk=1)
示例#10
0
def test_get_object_model():
    model = Mock(**{'objects.get.return_value': 'object'})
    assert_equal(BaseTestDataRestView.get_object(1, model), 'object')
    model.objects.get.assert_called_once_with(pk=1)