mirror of
https://github.com/ets-labs/python-dependency-injector.git
synced 2024-11-25 19:14:00 +03:00
Drop example about config provider
This commit is contained in:
parent
98ac4d902e
commit
feedd4c2e3
|
@ -1,63 +0,0 @@
|
|||
"""Config provider examples."""
|
||||
|
||||
from dependency_injector import catalogs
|
||||
from dependency_injector import providers
|
||||
|
||||
|
||||
class ObjectA(object):
|
||||
"""Example class ObjectA, that has dependencies on some setting values."""
|
||||
|
||||
def __init__(self, fee, price, timezone):
|
||||
"""Initializer."""
|
||||
self.fee = fee
|
||||
self.price = price
|
||||
self.timezone = timezone
|
||||
|
||||
|
||||
class Catalog(catalogs.DeclarativeCatalog):
|
||||
"""Catalog of providers."""
|
||||
|
||||
config = providers.Config()
|
||||
""":type: providers.Config"""
|
||||
|
||||
object_a = providers.Factory(ObjectA,
|
||||
fee=config.FEE,
|
||||
price=config.PRICE,
|
||||
timezone=config.GLOBAL.TIMEZONE)
|
||||
|
||||
|
||||
# Setting config value and making some tests.
|
||||
Catalog.config.update_from({
|
||||
'FEE': 1.25,
|
||||
'PRICE': 2.99,
|
||||
'GLOBAL': {
|
||||
'TIMEZONE': 'US/Eastern'
|
||||
}
|
||||
})
|
||||
|
||||
object_a1 = Catalog.object_a()
|
||||
|
||||
assert object_a1.fee == 1.25
|
||||
assert object_a1.price == 2.99
|
||||
assert object_a1.timezone == 'US/Eastern'
|
||||
|
||||
# Changing config value one more time and making some tests.
|
||||
Catalog.config.update_from({
|
||||
'FEE': 5.25,
|
||||
'PRICE': 19.99,
|
||||
'GLOBAL': {
|
||||
'TIMEZONE': 'US/Western'
|
||||
}
|
||||
})
|
||||
|
||||
object_a2 = Catalog.object_a()
|
||||
|
||||
# New one ObjectA has new config values.
|
||||
assert object_a2.fee == 5.25
|
||||
assert object_a2.price == 19.99
|
||||
assert object_a2.timezone == 'US/Western'
|
||||
|
||||
# And old one has old ones.
|
||||
assert object_a1.fee == 1.25
|
||||
assert object_a1.price == 2.99
|
||||
assert object_a1.timezone == 'US/Eastern'
|
Loading…
Reference in New Issue
Block a user