2015-11-23 13:39:19 +00:00
|
|
|
"""`Callable` providers with positional arguments example."""
|
2015-10-22 13:51:16 +00:00
|
|
|
|
2016-06-06 08:54:05 +00:00
|
|
|
import dependency_injector.providers as providers
|
2015-10-22 13:51:16 +00:00
|
|
|
|
|
|
|
|
|
|
|
# Creating even and odd filter providers:
|
2015-11-23 13:39:19 +00:00
|
|
|
even_filter = providers.Callable(filter, lambda x: x % 2 == 0)
|
|
|
|
odd_filter = providers.Callable(filter, lambda x: x % 2 != 0)
|
2015-10-22 13:51:16 +00:00
|
|
|
|
|
|
|
# Creating even and odd ranges using xrange() and filter providers:
|
|
|
|
even_range = even_filter(xrange(1, 10))
|
|
|
|
odd_range = odd_filter(xrange(1, 10))
|
|
|
|
|
|
|
|
# Making some asserts:
|
|
|
|
assert even_range == [2, 4, 6, 8]
|
|
|
|
assert odd_range == [1, 3, 5, 7, 9]
|