mirror of
https://github.com/ets-labs/python-dependency-injector.git
synced 2025-03-02 18:48:05 +03:00
Refactor example modules in Python3-ish way
This commit is contained in:
parent
06ff4bbbe4
commit
cf44e5815d
|
@ -14,7 +14,10 @@ Development version
|
|||
- Add support of six 1.14.0.
|
||||
- Add support of six 1.13.0.
|
||||
- Regenerate C sources using Cython 0.29.14.
|
||||
- Fix PEP257 doc block errors in example modules.
|
||||
- Remove Python 2-ish inheritance from ``object`` in example modules.
|
||||
- Replace Python 2-ish ``super(class, self).__init__()`` calls with Python 3-ish
|
||||
``super().__init__()`` in example modules.
|
||||
- Fix doc block errors in example modules, including related to PEP257-compliance.
|
||||
- Clean up tox.ini file.
|
||||
|
||||
3.14.12
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
"""The Code."""
|
||||
|
||||
|
||||
class Service(object):
|
||||
class Service:
|
||||
"""Some "Service"."""
|
||||
|
||||
|
||||
class Client(object):
|
||||
class Client:
|
||||
"""Some "Client" that uses "Service"."""
|
||||
|
||||
def __init__(self):
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
"""The Code, that demonstrates dependency injection pattern."""
|
||||
|
||||
|
||||
class Service(object):
|
||||
class Service:
|
||||
"""Some "Service"."""
|
||||
|
||||
|
||||
class Client(object):
|
||||
class Client:
|
||||
"""Some "Client" that uses "Service"."""
|
||||
|
||||
def __init__(self, service): # Service instance is injected into Client
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
"""TBD."""
|
||||
"""API client module."""
|
||||
|
||||
|
||||
class ApiClient(object):
|
||||
class ApiClient:
|
||||
"""Some API client."""
|
||||
|
||||
def __init__(self, host, api_key):
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
"""TBD."""
|
||||
"""Main module."""
|
||||
|
||||
from dependency_injector import providers
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
"""TBD."""
|
||||
"""Models module."""
|
||||
|
||||
|
||||
class User(object):
|
||||
class User:
|
||||
"""User model."""
|
||||
|
||||
def __init__(self, id, api_client):
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
"""TBD."""
|
||||
"""Tests module."""
|
||||
|
||||
from mock import Mock
|
||||
from unittest.mock import Mock
|
||||
|
||||
import main
|
||||
import api
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
"""Photos bundle entities module."""
|
||||
|
||||
|
||||
class Photo(object):
|
||||
class Photo:
|
||||
"""Photo entity."""
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
"""Photos bundle entity repositories module."""
|
||||
|
||||
|
||||
class PhotoRepository(object):
|
||||
class PhotoRepository:
|
||||
"""Photo entity repository."""
|
||||
|
||||
def __init__(self, object_factory, fs, db):
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
"""Users bundle entities module."""
|
||||
|
||||
|
||||
class User(object):
|
||||
class User:
|
||||
"""User entity."""
|
||||
|
||||
def __init__(self, id):
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
"""Users bundle entity repositories module."""
|
||||
|
||||
|
||||
class UserRepository(object):
|
||||
class UserRepository:
|
||||
"""User entity repository."""
|
||||
|
||||
def __init__(self, object_factory, db):
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
"""Dependency injection example, cars module."""
|
||||
|
||||
|
||||
class Car(object):
|
||||
class Car:
|
||||
"""Example car."""
|
||||
|
||||
def __init__(self, engine):
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
"""Dependency injection example, engines module."""
|
||||
|
||||
|
||||
class Engine(object):
|
||||
class Engine:
|
||||
"""Example engine base class.
|
||||
|
||||
Engine is a heart of every car. Engine is a very common term and could be
|
||||
|
@ -17,5 +17,5 @@ class DieselEngine(Engine):
|
|||
"""Diesel engine."""
|
||||
|
||||
|
||||
class ElectroEngine(Engine):
|
||||
"""Electro engine."""
|
||||
class ElectricEngine(Engine):
|
||||
"""Electric engine."""
|
||||
|
|
|
@ -7,4 +7,4 @@ import example.engines
|
|||
if __name__ == '__main__':
|
||||
gasoline_car = example.cars.Car(example.engines.GasolineEngine())
|
||||
diesel_car = example.cars.Car(example.engines.DieselEngine())
|
||||
electro_car = example.cars.Car(example.engines.ElectroEngine())
|
||||
electric_car = example.cars.Car(example.engines.ElectricEngine())
|
||||
|
|
|
@ -14,7 +14,7 @@ class Engines(containers.DeclarativeContainer):
|
|||
|
||||
diesel = providers.Factory(example.engines.DieselEngine)
|
||||
|
||||
electro = providers.Factory(example.engines.ElectroEngine)
|
||||
electric = providers.Factory(example.engines.ElectricEngine)
|
||||
|
||||
|
||||
class Cars(containers.DeclarativeContainer):
|
||||
|
@ -26,11 +26,11 @@ class Cars(containers.DeclarativeContainer):
|
|||
diesel = providers.Factory(example.cars.Car,
|
||||
engine=Engines.diesel)
|
||||
|
||||
electro = providers.Factory(example.cars.Car,
|
||||
engine=Engines.electro)
|
||||
electric = providers.Factory(example.cars.Car,
|
||||
engine=Engines.electric)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
gasoline_car = Cars.gasoline()
|
||||
diesel_car = Cars.diesel()
|
||||
electro_car = Cars.electro()
|
||||
electric_car = Cars.electric()
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
"""Mail service and user registration example."""
|
||||
|
||||
|
||||
class AbstractMailService(object):
|
||||
class AbstractMailService:
|
||||
"""Abstract mail service."""
|
||||
|
||||
def send(self, email, body):
|
||||
|
|
|
@ -6,11 +6,11 @@ This module contains all finder implementations.
|
|||
import csv
|
||||
|
||||
|
||||
class MovieFinder(object):
|
||||
class MovieFinder:
|
||||
"""Movie finder component.
|
||||
|
||||
Movie finder component is responsible for fetching movies data from
|
||||
different storages.
|
||||
various storage.
|
||||
"""
|
||||
|
||||
def __init__(self, movie_model):
|
||||
|
@ -47,7 +47,7 @@ class CsvMovieFinder(MovieFinder):
|
|||
"""
|
||||
self._csv_file_path = csv_file_path
|
||||
self._delimiter = delimiter
|
||||
super(CsvMovieFinder, self).__init__(movie_model)
|
||||
super().__init__(movie_model)
|
||||
|
||||
def find_all(self):
|
||||
"""Return all found movies.
|
||||
|
@ -73,7 +73,7 @@ class SqliteMovieFinder(MovieFinder):
|
|||
:type database: sqlite3.Connection
|
||||
"""
|
||||
self._database = database
|
||||
super(SqliteMovieFinder, self).__init__(movie_model)
|
||||
super().__init__(movie_model)
|
||||
|
||||
def find_all(self):
|
||||
"""Return all found movies.
|
||||
|
|
|
@ -4,7 +4,7 @@ This module contains all lister implementations.
|
|||
"""
|
||||
|
||||
|
||||
class MovieLister(object):
|
||||
class MovieLister:
|
||||
"""Movie lister component.
|
||||
|
||||
Movie lister component provides several methods for filtering movies by
|
||||
|
|
|
@ -4,7 +4,7 @@ This module contains all model implementations.
|
|||
"""
|
||||
|
||||
|
||||
class Movie(object):
|
||||
class Movie:
|
||||
"""Base movie model."""
|
||||
|
||||
def __init__(self, name, year, director):
|
||||
|
|
|
@ -6,7 +6,7 @@ import dependency_injector.containers as containers
|
|||
import dependency_injector.providers as providers
|
||||
|
||||
|
||||
class UsersService(object):
|
||||
class UsersService:
|
||||
"""Users service."""
|
||||
|
||||
def __init__(self, password_hasher):
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
"""Example business services module."""
|
||||
|
||||
|
||||
class BaseService(object):
|
||||
class BaseService:
|
||||
"""Service base class."""
|
||||
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
"""Example business services module."""
|
||||
|
||||
|
||||
class BaseService(object):
|
||||
class BaseService:
|
||||
"""Service base class."""
|
||||
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
"""Example adapters package."""
|
||||
|
||||
|
||||
class EmailSender(object):
|
||||
class EmailSender:
|
||||
"""Abstract email sender."""
|
||||
|
||||
def send(self, to, body):
|
||||
|
@ -9,7 +9,7 @@ class EmailSender(object):
|
|||
raise NotImplementedError()
|
||||
|
||||
|
||||
class SmtpEmailSender(object):
|
||||
class SmtpEmailSender:
|
||||
"""SMTP email sender uses SMTP protocol for sending emails."""
|
||||
|
||||
def send(self, to, body):
|
||||
|
@ -17,7 +17,7 @@ class SmtpEmailSender(object):
|
|||
# Send email via SMTP
|
||||
|
||||
|
||||
class EchoEmailSender(object):
|
||||
class EchoEmailSender:
|
||||
"""Echo email sender prints emails to stdout."""
|
||||
|
||||
def send(self, to, body):
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
"""Example use cases package."""
|
||||
|
||||
|
||||
class UseCase(object):
|
||||
class UseCase:
|
||||
"""Abstract use case."""
|
||||
|
||||
def execute(self):
|
||||
|
@ -9,7 +9,7 @@ class UseCase(object):
|
|||
raise NotImplementedError()
|
||||
|
||||
|
||||
class SignupUseCase(object):
|
||||
class SignupUseCase:
|
||||
"""Sign up use cases registers users."""
|
||||
|
||||
def __init__(self, email_sender):
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
"""Example hierarchy of cache clients with abstract base class."""
|
||||
|
||||
|
||||
class AbstractCacheClient(object):
|
||||
class AbstractCacheClient:
|
||||
"""Abstract cache client."""
|
||||
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
import dependency_injector.providers as providers
|
||||
|
||||
|
||||
class User(object):
|
||||
class User:
|
||||
"""Example class User."""
|
||||
|
||||
|
||||
|
@ -15,7 +15,7 @@ class UsersFactory(providers.Provider):
|
|||
def __init__(self):
|
||||
"""Initialize instance."""
|
||||
self._factory = providers.Factory(User)
|
||||
super(UsersFactory, self).__init__()
|
||||
super().__init__()
|
||||
|
||||
def __call__(self, *args, **kwargs):
|
||||
"""Return provided object.
|
||||
|
|
|
@ -6,7 +6,7 @@ import contextlib
|
|||
import dependency_injector.providers as providers
|
||||
|
||||
|
||||
class UsersService(object):
|
||||
class UsersService:
|
||||
"""Example class UsersService.
|
||||
|
||||
UsersService has dependency on DBAPI 2.0 database connection.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
"""Example games module."""
|
||||
|
||||
|
||||
class Game(object):
|
||||
class Game:
|
||||
"""Base game class."""
|
||||
|
||||
def __init__(self, player1, player2):
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
"""FactoryAggregate provider prototype."""
|
||||
|
||||
|
||||
class FactoryAggregate(object):
|
||||
class FactoryAggregate:
|
||||
"""FactoryAggregate provider prototype."""
|
||||
|
||||
def __init__(self, **factories):
|
||||
|
|
|
@ -8,7 +8,7 @@ import dependency_injector.providers as providers
|
|||
Photo = collections.namedtuple('Photo', [])
|
||||
|
||||
|
||||
class User(object):
|
||||
class User:
|
||||
"""Example user model."""
|
||||
|
||||
def __init__(self, photos_factory):
|
||||
|
|
|
@ -4,7 +4,7 @@ import dependency_injector.providers as providers
|
|||
import dependency_injector.errors as errors
|
||||
|
||||
|
||||
class BaseService(object):
|
||||
class BaseService:
|
||||
"""Base service class."""
|
||||
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
import dependency_injector.providers as providers
|
||||
|
||||
|
||||
class User(object):
|
||||
class User:
|
||||
"""Example class User."""
|
||||
|
||||
|
||||
|
|
|
@ -3,23 +3,23 @@
|
|||
import dependency_injector.providers as providers
|
||||
|
||||
|
||||
class User(object):
|
||||
class User:
|
||||
"""Example class User."""
|
||||
|
||||
def __init__(self, id, password):
|
||||
"""Initialize instance."""
|
||||
self.id = id
|
||||
self.password = password
|
||||
super(User, self).__init__()
|
||||
super().__init__()
|
||||
|
||||
|
||||
class UsersService(object):
|
||||
class UsersService:
|
||||
"""Example class UsersService."""
|
||||
|
||||
def __init__(self, user_cls):
|
||||
"""Initialize instance."""
|
||||
self.user_cls = user_cls
|
||||
super(UsersService, self).__init__()
|
||||
super().__init__()
|
||||
|
||||
def get_by_id(self, id):
|
||||
"""Find user by his id and return user model."""
|
||||
|
@ -56,7 +56,7 @@ class ExtendedUser(User):
|
|||
self.first_name = first_name
|
||||
self.last_name = last_name
|
||||
self.gender = gender
|
||||
super(ExtendedUser, self).__init__(id, password)
|
||||
super().__init__(id, password)
|
||||
|
||||
|
||||
class ExtendedUsersService(UsersService):
|
||||
|
|
|
@ -4,7 +4,7 @@ import dependency_injector.providers as providers
|
|||
import dependency_injector.errors as errors
|
||||
|
||||
|
||||
class BaseService(object):
|
||||
class BaseService:
|
||||
"""Base service class."""
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user