[core] Still refactoring the core behaviour of bags, starting to be much simpler.
This commit is contained in:
committed by
Romain Dorgueil
parent
f18889830b
commit
9a54f7b4aa
30
tests/util/test_collections.py
Normal file
30
tests/util/test_collections.py
Normal file
@ -0,0 +1,30 @@
|
||||
from bonobo.util import sortedlist, ensure_tuple
|
||||
from bonobo.util.collections import tuplize
|
||||
|
||||
|
||||
def test_sortedlist():
|
||||
l = sortedlist()
|
||||
l.insort(2)
|
||||
l.insort(1)
|
||||
l.insort(3)
|
||||
l.insort(2)
|
||||
assert l == [1, 2, 2, 3]
|
||||
|
||||
|
||||
def test_ensure_tuple():
|
||||
assert ensure_tuple('a') == ('a', )
|
||||
assert ensure_tuple(('a', )) == ('a', )
|
||||
assert ensure_tuple(()) is ()
|
||||
|
||||
|
||||
def test_tuplize():
|
||||
tuplized_lambda = tuplize(lambda: [1, 2, 3])
|
||||
assert tuplized_lambda() == (1, 2, 3)
|
||||
|
||||
@tuplize
|
||||
def some_generator():
|
||||
yield 'c'
|
||||
yield 'b'
|
||||
yield 'a'
|
||||
|
||||
assert some_generator() == ('c', 'b', 'a')
|
||||
@ -1,22 +0,0 @@
|
||||
import types
|
||||
|
||||
from bonobo.util.iterators import force_iterator
|
||||
|
||||
|
||||
def test_force_iterator_with_string():
|
||||
assert force_iterator('foo') == ['foo']
|
||||
|
||||
|
||||
def test_force_iterator_with_none():
|
||||
assert force_iterator(None) == []
|
||||
|
||||
|
||||
def test_force_iterator_with_generator():
|
||||
def generator():
|
||||
yield 'aaa'
|
||||
yield 'bbb'
|
||||
yield 'ccc'
|
||||
|
||||
iterator = force_iterator(generator())
|
||||
assert isinstance(iterator, types.GeneratorType)
|
||||
assert list(iterator) == ['aaa', 'bbb', 'ccc']
|
||||
18
tests/util/test_resolvers.py
Normal file
18
tests/util/test_resolvers.py
Normal file
@ -0,0 +1,18 @@
|
||||
import bonobo
|
||||
from bonobo.util.resolvers import _parse_option, _resolve_options, _resolve_transformations
|
||||
|
||||
|
||||
def test_parse_option():
|
||||
assert _parse_option('foo=bar') == ('foo', 'bar')
|
||||
assert _parse_option('foo="bar"') == ('foo', 'bar')
|
||||
assert _parse_option('sep=";"') == ('sep', ';')
|
||||
assert _parse_option('foo') == ('foo', True)
|
||||
|
||||
|
||||
def test_resolve_options():
|
||||
assert _resolve_options(('foo=bar', 'bar="baz"')) == {'foo': 'bar', 'bar': 'baz'}
|
||||
assert _resolve_options() == {}
|
||||
|
||||
|
||||
def test_resolve_transformations():
|
||||
assert _resolve_transformations(('PrettyPrinter', )) == (bonobo.PrettyPrinter, )
|
||||
Reference in New Issue
Block a user