def test_function_conflict(): app = morepath.App() def func(a): pass class A(object): pass a = app.function(func, A) @a def a_func(arequest, model): pass a1 = app.function(func, A) @a1 def a1_func(request, model): pass c = Config() c.configurable(app) c.action(a, a_func) c.action(a1, a1_func) with pytest.raises(ConflictError): c.commit()
def test_function_no_conflict_different_apps(): app_a = morepath.App() app_b = morepath.App() def func(a): pass class A(object): pass a = app_a.function(func, A) a1 = app_b.function(func, A) @a def a_func(a): pass @a1 def a1_func(a): pass c = Config() c.configurable(app_a) c.configurable(app_b) c.action(a, a_func) c.action(a1, a1_func) c.commit()
def test_model_no_conflict_different_apps(): app_a = morepath.App() class A(object): pass a = app_a.model(model=A, path='a') @a def get_a(): return A() app_b = morepath.App() b = app_b.model(model=A, path='a') @b def get_a_again(): return A() c = Config() c.configurable(app_a) c.configurable(app_b) c.action(a, get_a) c.action(b, get_a_again) c.commit()
def test_no_path_conflict_with_variable_different_converters(): app = morepath.App() class A(object): pass class B(object): pass a = app.model(model=A, path='a/{id:int}') @a def get_a(id): return A() b = app.model(model=B, path='a/{id:str}') @b def get_b(id): return B() c = Config() c.configurable(app) c.action(a, get_a) c.action(b, get_b) c.commit()
def test_path_conflict_with_variable(): app = morepath.App() class A(object): pass class B(object): pass a = app.model(model=A, path='a/{id}') @a def get_a(id): return A() b = app.model(model=B, path='a/{id2}') @b def get_b(id): return B() c = Config() c.configurable(app) c.action(a, get_a) c.action(b, get_b) with pytest.raises(ConflictError): c.commit()
def test_model_conflict(): app = morepath.App() class A(object): pass a = app.model(model=A, path='a') @a def get_a(): return A() b = app.model(model=A, path='a') @b def get_a_again(): return A() c = Config() c.configurable(app) c.action(a, get_a) c.action(b, get_a_again) with pytest.raises(ConflictError): c.commit()
def test_view_no_conflict_different_predicates(): app = morepath.App() class Model(object): pass a = app.view(model=Model, name='a', request_method='GET') b = app.view(model=Model, name='a', request_method='POST') @a def a_view(request, model): pass @b def b_view(request, model): pass c = Config() c.configurable(app) c.action(a, a_view) c.action(b, b_view) c.commit()
def test_root_no_conflict_different_apps(): app_a = morepath.App() app_b = morepath.App() a = app_a.root() @a class Root(object): pass b = app_b.root() @b class Something(object): pass c = Config() c.configurable(app_a) c.configurable(app_b) c.action(a, Root) c.action(b, Something) c.commit()
def test_root_conflict(): app = morepath.App() a = app.root() @a class Root(object): pass b = app.root() @b class Something(object): pass c = Config() c.configurable(app) c.action(a, Root) c.action(b, Something) with pytest.raises(ConflictError): c.commit()
def test_view_conflict_with_html(): app = morepath.App() class Model(object): pass a = app.view(model=Model, name='a') a1 = app.html(model=Model, name='a') @a def a_view(request, model): pass @a1 def a1_view(request, model): pass c = Config() c.configurable(app) c.action(a, a_view) c.action(a1, a1_view) with pytest.raises(ConflictError): c.commit()
def test_view_no_conflict_different_apps(): app_a = morepath.App() app_b = morepath.App() class Model(object): pass a = app_a.view(model=Model, name='a') a1 = app_b.view(model=Model, name='a') @a def a_view(request, model): pass @a1 def a1_view(request, model): pass c = Config() c.configurable(app_a) c.configurable(app_b) c.action(a, a_view) c.action(a1, a1_view) c.commit()