mirror of
https://github.com/wassname/sloth.git
synced 2026-06-27 18:44:36 +08:00
move tests to own subdir, removes pytest runtime dependency
This commit is contained in:
@@ -86,57 +86,3 @@ class Factory:
|
||||
return None
|
||||
return item(*args, **kwargs)
|
||||
|
||||
### testing
|
||||
import pytest
|
||||
class MockupRectItem: pass
|
||||
class MockupPointItem: pass
|
||||
class MockupPolygonItem: pass
|
||||
|
||||
def _create_factory():
|
||||
itemfactory = Factory({'point': MockupPointItem,
|
||||
'polygon': MockupPolygonItem})
|
||||
itemfactory.register('rect', MockupRectItem)
|
||||
|
||||
return itemfactory
|
||||
|
||||
def test_register():
|
||||
itemfactory = _create_factory()
|
||||
|
||||
item = itemfactory.create('rect')
|
||||
assert isinstance(item, MockupRectItem)
|
||||
item = itemfactory.create('point')
|
||||
assert isinstance(item, MockupPointItem)
|
||||
item = itemfactory.create('polygon')
|
||||
assert isinstance(item, MockupPolygonItem)
|
||||
item = itemfactory.create('polygon2')
|
||||
assert item is None
|
||||
|
||||
def test_register_fail():
|
||||
itemfactory = _create_factory()
|
||||
with pytest.raises(Exception):
|
||||
itemfactory.register('rect', MockupRectItem)
|
||||
|
||||
def test_register_replace():
|
||||
itemfactory = _create_factory()
|
||||
|
||||
itemfactory.register('rect', MockupPolygonItem, replace=True)
|
||||
item = itemfactory.create('rect')
|
||||
assert isinstance(item, MockupPolygonItem)
|
||||
|
||||
def test_clear():
|
||||
itemfactory = _create_factory()
|
||||
|
||||
item = itemfactory.create('rect')
|
||||
assert isinstance(item, MockupRectItem)
|
||||
itemfactory.clear('rect')
|
||||
item = itemfactory.create('rect')
|
||||
assert item is None
|
||||
|
||||
item = itemfactory.create('point')
|
||||
assert isinstance(item, MockupPointItem)
|
||||
item = itemfactory.create('polygon')
|
||||
assert isinstance(item, MockupPolygonItem)
|
||||
itemfactory.clear()
|
||||
assert itemfactory.create('point') is None
|
||||
assert itemfactory.create('polygon') is None
|
||||
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
from sloth.annotations.container import *
|
||||
|
||||
class MockupContainer:
|
||||
pass
|
||||
|
||||
def test_import_callable():
|
||||
containers = (('*', 'container_factory_test.MockupContainer'),)
|
||||
factory = AnnotationContainerFactory(containers)
|
||||
item = factory.create('test')
|
||||
assert isinstance(item, MockupContainer)
|
||||
|
||||
@@ -0,0 +1,55 @@
|
||||
import pytest
|
||||
from sloth.items import Factory
|
||||
|
||||
class MockupRectItem: pass
|
||||
class MockupPointItem: pass
|
||||
class MockupPolygonItem: pass
|
||||
|
||||
def _create_factory():
|
||||
itemfactory = Factory({'point': MockupPointItem,
|
||||
'polygon': MockupPolygonItem})
|
||||
itemfactory.register('rect', MockupRectItem)
|
||||
|
||||
return itemfactory
|
||||
|
||||
def test_register():
|
||||
itemfactory = _create_factory()
|
||||
|
||||
item = itemfactory.create('rect')
|
||||
assert isinstance(item, MockupRectItem)
|
||||
item = itemfactory.create('point')
|
||||
assert isinstance(item, MockupPointItem)
|
||||
item = itemfactory.create('polygon')
|
||||
assert isinstance(item, MockupPolygonItem)
|
||||
item = itemfactory.create('polygon2')
|
||||
assert item is None
|
||||
|
||||
def test_register_fail():
|
||||
itemfactory = _create_factory()
|
||||
with pytest.raises(Exception):
|
||||
itemfactory.register('rect', MockupRectItem)
|
||||
|
||||
def test_register_replace():
|
||||
itemfactory = _create_factory()
|
||||
|
||||
itemfactory.register('rect', MockupPolygonItem, replace=True)
|
||||
item = itemfactory.create('rect')
|
||||
assert isinstance(item, MockupPolygonItem)
|
||||
|
||||
def test_clear():
|
||||
itemfactory = _create_factory()
|
||||
|
||||
item = itemfactory.create('rect')
|
||||
assert isinstance(item, MockupRectItem)
|
||||
itemfactory.clear('rect')
|
||||
item = itemfactory.create('rect')
|
||||
assert item is None
|
||||
|
||||
item = itemfactory.create('point')
|
||||
assert isinstance(item, MockupPointItem)
|
||||
item = itemfactory.create('polygon')
|
||||
assert isinstance(item, MockupPolygonItem)
|
||||
itemfactory.clear()
|
||||
assert itemfactory.create('point') is None
|
||||
assert itemfactory.create('polygon') is None
|
||||
|
||||
Reference in New Issue
Block a user